本文通過 AI Agent 技術(shù)實(shí)現(xiàn)數(shù)據(jù)庫異常的自動(dòng)發(fā)現(xiàn)、智能分析和快速修復(fù),將故障處理時(shí)間從數(shù)小時(shí)縮短到分鐘級(jí),異常誤報(bào)率降低 60-80%。
隨著業(yè)務(wù)規(guī)??焖僭鲩L,OPPO的數(shù)據(jù)庫規(guī)模已達(dá)到數(shù)十萬實(shí)例、千萬級(jí)庫表,涵蓋MySQL、PostgreSQL、MongoDB、ClickHouse、Redis、Mi彩神lvus等多種數(shù)據(jù)庫類型。常見故障點(diǎn):
AI判斷:應(yīng)用錯(cuò)誤路由到從庫 → 從庫只讀阻塞 → 連接池耗盡 → QPS下降
AI: CPU 85% + 查詢模式異常 + 連接數(shù)突增 + 歷史同期對(duì)比→ 綜合評(píng)分0.92(高度異常)→ 告警
傳統(tǒng)流程:問題發(fā)生 → 用戶投訴 → DBA介入 → 分析 → 解決(已造成影響)
多模數(shù)據(jù)管理平臺(tái):OneMeta:各數(shù)據(jù)庫類型在系統(tǒng)變成“可理解、可治理、可查詢”統(tǒng)一數(shù)據(jù)資產(chǎn);OneOps:提供DBaaS(數(shù)據(jù)庫即服務(wù))的體驗(yàn),所有運(yùn)維相關(guān)操作的控制平臺(tái)
多模數(shù)據(jù)管理平臺(tái)ODC(Open Database Develop Center)已經(jīng)完成并投入使用,不做過多說明。本文主要介紹智能診斷模塊的實(shí)現(xiàn),開發(fā)提效和智能運(yùn)維模塊后續(xù)再做詳細(xì)介紹。
重要性:雖然評(píng)估成本較大,但這是提高DB Agent準(zhǔn)確率的良方,尤其在數(shù)據(jù)庫這種基礎(chǔ)高風(fēng)險(xiǎn)組件中尤為重要。
進(jìn)入性能診斷界面,發(fā)現(xiàn)CPU使用率在21:03:00-21:13:00突然飆高至85%,觸發(fā)智能診斷。
推斷:CPU飆高由數(shù)據(jù)庫查詢時(shí)Sending_data數(shù)據(jù)過多引起。通過SQL關(guān)聯(lián)分析,定位到導(dǎo)致CPU飆高的SQL指紋。
數(shù)據(jù)庫智能診斷實(shí)現(xiàn)了資源監(jiān)控與SQL智能關(guān)聯(lián),精準(zhǔn)鎖定異常根因,提供優(yōu)化方案,形成異常發(fā)現(xiàn)-診斷-修復(fù)閉環(huán)。
AI的診斷結(jié)果并非完全準(zhǔn)確,部分重要場(chǎng)景仍需要人為干預(yù)和引導(dǎo)。DB Agent的建設(shè)是一條持續(xù)且漫長的道路,需要我們不斷優(yōu)化與改進(jìn)。