如何構(gòu)建數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)指標(biāo)體系以提升系統(tǒng)韌性
數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)指標(biāo)體系圍繞基礎(chǔ)設(shè)施層、數(shù)據(jù)庫實(shí)例層、數(shù)據(jù)庫服務(wù)層、業(yè)務(wù)影響層四個(gè)層次展開,通過定義數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)指標(biāo),構(gòu)建數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)識(shí)別框架,提升系統(tǒng)的可用性以及業(yè)務(wù)的連續(xù)性。
1、數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)識(shí)別和預(yù)防
構(gòu)建一個(gè)全面、有效的數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)指標(biāo)體系是提升系統(tǒng)韌性的基石。這個(gè)體系不應(yīng)該是一堆指標(biāo)的簡(jiǎn)單堆砌,而應(yīng)該是一個(gè)層次化、可量化、可行動(dòng)的有機(jī)整體。
1.1 數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)指標(biāo)體系框架
數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)指標(biāo)體系自下而上分為四個(gè)層級(jí),覆蓋從基礎(chǔ)設(shè)施到業(yè)務(wù)影響的全鏈路:基礎(chǔ)設(shè)施層->數(shù)據(jù)庫實(shí)例層->數(shù)據(jù)庫服務(wù)層->業(yè)務(wù)影響層。每一層都包含一系列可監(jiān)控的指標(biāo),并對(duì)應(yīng)著具體的風(fēng)險(xiǎn)場(chǎng)景。
圖片
1)基礎(chǔ)設(shè)施層
基礎(chǔ)設(shè)施層的核心風(fēng)險(xiǎn)是底層硬件、虛擬化資源或網(wǎng)絡(luò)故障,可能會(huì)導(dǎo)致數(shù)據(jù)庫實(shí)例不可用或性能嚴(yán)重下降。在基礎(chǔ)設(shè)施層重點(diǎn)關(guān)注的是計(jì)算資源、存儲(chǔ)資源以及網(wǎng)絡(luò)資源的使用率、性能和可用性,比如CPU和內(nèi)存的使用率、磁盤的IO時(shí)延、網(wǎng)絡(luò)帶寬使用率和丟包率、分布式節(jié)點(diǎn)間的網(wǎng)絡(luò)時(shí)延和抖動(dòng)等。概括如下:
- 資源耗盡風(fēng)險(xiǎn): CPU、內(nèi)存、磁盤空間、網(wǎng)絡(luò)帶寬、IOPS 等資源使用率過高或耗盡。
- 性能劣化風(fēng)險(xiǎn): 磁盤I/O延遲過高、網(wǎng)絡(luò)延遲抖動(dòng)和丟包等。
- 完全失效風(fēng)險(xiǎn): 物理機(jī)/虛擬機(jī)/容器宕機(jī)、磁盤損壞、網(wǎng)絡(luò)中斷等。
2)數(shù)據(jù)庫實(shí)例層
數(shù)據(jù)庫實(shí)例層的核心風(fēng)險(xiǎn)是數(shù)據(jù)庫進(jìn)程本身的問題,如配置不當(dāng)、資源競(jìng)爭(zhēng)、實(shí)例內(nèi)部錯(cuò)誤和性能瓶頸、進(jìn)程異常等。在實(shí)例層重點(diǎn)關(guān)注進(jìn)程狀態(tài)與數(shù)據(jù)庫連接情況、數(shù)據(jù)庫的性能和資源使用情況、是否存在訪問錯(cuò)誤或異常告警、節(jié)點(diǎn)配置一致性、主備狀態(tài)以及慢SQL等。其核心目標(biāo)是能夠確保數(shù)據(jù)庫實(shí)例高效、穩(wěn)定運(yùn)行,正確處理SQL請(qǐng)求。
- 連接與并發(fā)風(fēng)險(xiǎn):連接數(shù)耗盡、連接失敗、線程異常等。
- 性能瓶頸風(fēng)險(xiǎn):緩沖池命中率低(物理讀)、臨時(shí)表創(chuàng)建過多、鎖等待/死鎖頻繁等、長(zhǎng)事務(wù)、事務(wù)等待、大事務(wù)等。
- 低效訪問風(fēng)險(xiǎn):慢查詢數(shù)量激增、全表掃描頻繁、子查詢或函數(shù)使用不當(dāng)。
- 配置與錯(cuò)誤風(fēng)險(xiǎn):參數(shù)配置不合理、節(jié)點(diǎn)參數(shù)不一致、參數(shù)與基線配置偏離過大、錯(cuò)誤日志中出現(xiàn)嚴(yán)重異常等。
3)數(shù)據(jù)庫服務(wù)層
數(shù)據(jù)庫服務(wù)層的核心風(fēng)險(xiǎn)是如何構(gòu)建一個(gè)高可用的數(shù)據(jù)庫架構(gòu)確保服務(wù)的可用性,滿足RPO和RTO要求,確保數(shù)據(jù)一致性、全局服務(wù)的可用性以及數(shù)據(jù)均衡性等問題。在服務(wù)層需要重點(diǎn)關(guān)注的是架構(gòu)的高可用性和數(shù)據(jù)的一致性,當(dāng)節(jié)點(diǎn)異常時(shí)能夠快速恢復(fù),同時(shí)數(shù)據(jù)確保數(shù)據(jù)不丟;另外需要監(jiān)控分布式架構(gòu)下數(shù)據(jù)分布和節(jié)點(diǎn)負(fù)載的均衡性,包括數(shù)據(jù)熱點(diǎn)、存儲(chǔ)和計(jì)算節(jié)點(diǎn)均衡性;同時(shí)對(duì)數(shù)據(jù)表的容量和生命周期進(jìn)行管理和監(jiān)控。其核心目標(biāo)是保障數(shù)據(jù)庫集群作為一個(gè)整體服務(wù)的能力,實(shí)現(xiàn)線性擴(kuò)展和高可用。
- 數(shù)據(jù)一致性風(fēng)險(xiǎn):主從復(fù)制延遲過大、副本數(shù)據(jù)不一致、分布式事務(wù)失敗或懸掛(如兩階段提交故障)、備份恢復(fù)有效性等。
- 高可用性風(fēng)險(xiǎn):腦裂、Leader選舉失敗、故障切換(Failover)超時(shí)或失敗、分布式下全局時(shí)鐘(TSO)異常、影響RPO和RTO時(shí)長(zhǎng)。
- 數(shù)據(jù)均衡風(fēng)險(xiǎn):數(shù)據(jù)熱點(diǎn)(少數(shù)分片承載巨大壓力)、數(shù)據(jù)傾斜(存儲(chǔ)大小或流量不均衡)、存儲(chǔ)節(jié)點(diǎn)負(fù)載不均。
- 調(diào)度與擴(kuò)容風(fēng)險(xiǎn):自動(dòng)調(diào)度失效(如均衡算法失敗)、彈性擴(kuò)縮容過程中引發(fā)性能劇烈抖動(dòng)或失敗等。
- 數(shù)據(jù)庫變更風(fēng)險(xiǎn):DDL執(zhí)行失敗率和時(shí)長(zhǎng)、在線DDL阻塞寫入時(shí)間、未壓測(cè)SQL比例、統(tǒng)計(jì)信息有效性等。
- 數(shù)據(jù)表容量與生命周期:表容量增長(zhǎng)預(yù)估、分區(qū)清理與自動(dòng)擴(kuò)展、自增主鍵容量等
4)業(yè)務(wù)影響層
業(yè)務(wù)影響層是數(shù)據(jù)庫問題最終影響到終端用戶的體驗(yàn)和業(yè)務(wù)連續(xù)性。需要重點(diǎn)關(guān)注的是業(yè)務(wù)成功率和技術(shù)成功率指標(biāo)、應(yīng)用響應(yīng)時(shí)間變化、業(yè)務(wù)恢復(fù)的時(shí)間和數(shù)據(jù)是否一致以及上下游關(guān)聯(lián)系統(tǒng)的影響。其核心目標(biāo)是將技術(shù)指標(biāo)轉(zhuǎn)化為業(yè)務(wù)語言,量化數(shù)據(jù)庫問題對(duì)業(yè)務(wù)的真實(shí)影響,從而用于決策依據(jù)。
- 可用性風(fēng)險(xiǎn): 因數(shù)據(jù)庫不可用導(dǎo)致業(yè)務(wù)核心流程中斷。
- 性能體驗(yàn)風(fēng)險(xiǎn):因數(shù)據(jù)庫緩慢導(dǎo)致應(yīng)用接口響應(yīng)時(shí)間飆升、前端頁面加載超時(shí)、用戶操作卡頓、下游數(shù)據(jù)延遲等。
- 數(shù)據(jù)正確性風(fēng)險(xiǎn):極端情況下因數(shù)據(jù)庫問題可能出現(xiàn)數(shù)據(jù)不一致問題如重復(fù)扣款、數(shù)據(jù)錯(cuò)亂等。
這四層風(fēng)險(xiǎn)點(diǎn)構(gòu)成了一個(gè)自下而上、逐層傳導(dǎo)的關(guān)系,同時(shí)也是自上而下進(jìn)行故障定界的路徑:
- 故障傳導(dǎo)(向上):基礎(chǔ)設(shè)施層風(fēng)險(xiǎn)→數(shù)據(jù)庫實(shí)例層風(fēng)險(xiǎn)→數(shù)據(jù)庫服務(wù)層風(fēng)險(xiǎn)→業(yè)務(wù)影響層(最終體現(xiàn));
- 排查定界(向下):業(yè)務(wù)側(cè)發(fā)現(xiàn)問題→查看業(yè)務(wù)影響層指標(biāo)→下鉆分析服務(wù)層指標(biāo)→定位實(shí)例層指標(biāo)→最終排查基礎(chǔ)設(shè)施層根因。
1.2 數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)指標(biāo)定義
結(jié)合上述四層數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)指標(biāo)體系,定義哪些風(fēng)險(xiǎn)指標(biāo)是數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)識(shí)別可落地執(zhí)行的關(guān)鍵。風(fēng)險(xiǎn)定義的目標(biāo)就是全面覆蓋數(shù)據(jù)庫運(yùn)行中的潛在風(fēng)險(xiǎn)點(diǎn),通過量化指標(biāo)實(shí)現(xiàn)風(fēng)險(xiǎn)的可監(jiān)測(cè)、可預(yù)警和可治理。
圖片
1)服務(wù)器性能與資源
- 監(jiān)控目標(biāo):確保數(shù)據(jù)庫所在的底層服務(wù)器硬件資源充足,性能良好,無瓶頸。
- 指標(biāo)說明:
CPU使用率:高用戶態(tài)CPU可能表示計(jì)算密集型操作多;高系統(tǒng)態(tài)或I/O等待(%iowait)則表明可能存在I/O瓶頸。
內(nèi)存使用率:需關(guān)注可用內(nèi)存和Swap使用情況。內(nèi)存耗盡會(huì)觸發(fā)OOM Killer,可能導(dǎo)致數(shù)據(jù)庫進(jìn)程被意外終止。
磁盤使用率:數(shù)據(jù)盤、日志盤的空間使用情況。空間耗盡會(huì)導(dǎo)致數(shù)據(jù)庫無法寫入或崩潰。
磁盤I/O:IOPS、吞吐量和讀寫延遲。IO延遲高會(huì)導(dǎo)致數(shù)據(jù)庫讀寫緩慢引發(fā)性能問題。
網(wǎng)絡(luò):帶寬使用率、丟包率、延遲和抖動(dòng)。對(duì)分布式數(shù)據(jù)庫而言,節(jié)點(diǎn)間網(wǎng)絡(luò)質(zhì)量會(huì)影響節(jié)點(diǎn)之間通信的有效性。
2)數(shù)據(jù)庫性能與資源
- 監(jiān)控目標(biāo):評(píng)估數(shù)據(jù)庫引擎內(nèi)部的資源使用效率和請(qǐng)求處理能力。
- 指標(biāo)說明:
連接使用:當(dāng)前連接數(shù)/活動(dòng)連接數(shù)vs最大允許連接數(shù)。連接數(shù)耗盡會(huì)導(dǎo)致新請(qǐng)求失敗。
鎖競(jìng)爭(zhēng):行鎖、表鎖等待的數(shù)量和時(shí)長(zhǎng)。高鎖競(jìng)爭(zhēng)會(huì)嚴(yán)重降低并發(fā)性能。
等待會(huì)話:處于等待狀態(tài)的會(huì)話數(shù)及其等待事件(如等I/O、等鎖),是分析性能瓶頸的關(guān)鍵。
低效SQL:執(zhí)行緩慢、返回大量數(shù)據(jù)、或執(zhí)行計(jì)劃不佳的SQL語句。
長(zhǎng)事務(wù):長(zhǎng)時(shí)間未提交的事務(wù),會(huì)持有鎖、阻塞其他操作,并可能導(dǎo)致回滾段膨脹。
數(shù)據(jù)庫內(nèi)存使用:全局內(nèi)存和動(dòng)態(tài)內(nèi)存的使用情況。配置不合理會(huì)導(dǎo)致性能下降。
臨時(shí)空間使用:磁盤臨時(shí)表/文件的使用量,頻繁使用表明排序、哈希連接等操作可能缺乏優(yōu)化。
分布式架構(gòu)下負(fù)載與數(shù)據(jù)傾斜:各節(jié)點(diǎn)/分片的CPU、內(nèi)存、IO負(fù)載是否均衡。數(shù)據(jù)傾斜與數(shù)據(jù)熱點(diǎn)問題。
3)執(zhí)行計(jì)劃管理
- 監(jiān)控目標(biāo):確保SQL查詢優(yōu)化器選擇了最高效的數(shù)據(jù)訪問路徑。
- 指標(biāo)說明:
統(tǒng)計(jì)信息有效性:表的行數(shù)、列的數(shù)據(jù)分布等統(tǒng)計(jì)信息是否過期。失效的統(tǒng)計(jì)信息會(huì)導(dǎo)致優(yōu)化器生成錯(cuò)誤的執(zhí)行計(jì)劃。
執(zhí)行計(jì)劃變化:同一SQL的執(zhí)行計(jì)劃是否發(fā)生意外變化(性能回退),通常由統(tǒng)計(jì)信息更新、參數(shù)變更或版本升級(jí)引起。
低效索引與無效索引:低效索引(如區(qū)分度不高的索引)無法有效加速查詢;無效索引(從未被使用)占用空間并降低寫性能。
4)數(shù)據(jù)庫配置檢查
- 監(jiān)控目標(biāo):確保數(shù)據(jù)庫配置符合最佳實(shí)踐,避免因配置不當(dāng)引入風(fēng)險(xiǎn)。
- 指標(biāo)說明:
參數(shù)配置不合理:內(nèi)存參數(shù)、日志文件大小、并發(fā)參數(shù)等設(shè)置不當(dāng),無法發(fā)揮硬件性能或?qū)е路€(wěn)定性問題。
節(jié)點(diǎn)參數(shù)一致性:在集群環(huán)境中,各節(jié)點(diǎn)的配置參數(shù)不一致可能導(dǎo)致不可預(yù)知的行為。
參數(shù)與基線配置偏離過大:當(dāng)前配置與性能基線存在重大差異,需審查。
測(cè)試與生產(chǎn)環(huán)境參數(shù)一致性:兩環(huán)境配置差異可能導(dǎo)致測(cè)試結(jié)果無法真實(shí)反映生產(chǎn)性能。
分布式架構(gòu)下統(tǒng)一時(shí)鐘:節(jié)點(diǎn)間系統(tǒng)時(shí)間不同步會(huì)導(dǎo)致依賴時(shí)間戳的序列、事務(wù)、日志分析出現(xiàn)混亂,是嚴(yán)重風(fēng)險(xiǎn)點(diǎn)。
5)可用性與容災(zāi)
- 監(jiān)控目標(biāo):衡量數(shù)據(jù)庫在故障發(fā)生時(shí)維持服務(wù)和高可用架構(gòu)的有效性。
- 指標(biāo)說明:
高可用架構(gòu)狀態(tài):?jiǎn)吸c(diǎn)or高可用架構(gòu)、故障是否可切換、滿足AZ級(jí)的部署要求,主備、集群架構(gòu)是否健康。
主備切換時(shí)間 (RTO):從主庫故障到備庫接管服務(wù)的時(shí)間,直接決定業(yè)務(wù)中斷時(shí)長(zhǎng)。
數(shù)據(jù)恢復(fù)點(diǎn)目標(biāo) (RPO):故障切換后,允許丟失的數(shù)據(jù)量(由復(fù)制延遲決定)。
數(shù)據(jù)同步延遲:主備庫之間的數(shù)據(jù)延遲時(shí)間,是影響RPO的關(guān)鍵指標(biāo)。
6)數(shù)據(jù)一致性與恢復(fù)
- 監(jiān)控目標(biāo):確保在災(zāi)難發(fā)生后,能有效地恢復(fù)數(shù)據(jù)。
- 指標(biāo)說明:
備份成功率:全量、增量備份作業(yè)是否成功完成。
恢復(fù)有效性檢查:定期進(jìn)行恢復(fù)演練,驗(yàn)證備份數(shù)據(jù)是否完整、可用,并記錄實(shí)際恢復(fù)耗時(shí)。
日志歸檔完整性:歸檔日志是否連續(xù)無中斷,這是實(shí)現(xiàn)時(shí)間點(diǎn)恢復(fù)(PITR)的基礎(chǔ)。
7)安全與合規(guī)
- 監(jiān)控目標(biāo):防止數(shù)據(jù)泄露、越權(quán)訪問和滿足審計(jì)要求。
- 指標(biāo)說明:
權(quán)限越權(quán):是否存在超出其職責(zé)范圍的賬戶權(quán)限,用戶最小授權(quán)原則。
SQL注入攻擊次數(shù):應(yīng)用層是否有效抵御了注入攻擊,反映代碼安全性和WAF有效性。
敏感數(shù)據(jù)訪問審計(jì):對(duì)訪問敏感數(shù)據(jù)(如用戶密碼、個(gè)人信息)的操作進(jìn)行記錄和審計(jì)。
弱密碼賬戶數(shù):存在弱口令或默認(rèn)口令的賬戶數(shù)量。
合規(guī)檢查失敗項(xiàng):是否符合行業(yè)安全合規(guī)標(biāo)準(zhǔn)的檢查要求。
安全漏洞排查與修復(fù):監(jiān)管通報(bào)漏洞已修復(fù)。
8)容量與擴(kuò)展性
- 監(jiān)控目標(biāo):預(yù)測(cè)未來資源需求,避免因容量不足導(dǎo)致服務(wù)中斷。
- 指標(biāo)說明:
數(shù)據(jù)增長(zhǎng)速率:每日/每周數(shù)據(jù)增量,用于預(yù)測(cè)何時(shí)需要擴(kuò)容。
索引膨脹率:索引大小相對(duì)于表數(shù)據(jù)大小的增長(zhǎng)情況,無效索引會(huì)加劇膨脹。
分區(qū)表擴(kuò)展性:分區(qū)策略是否能應(yīng)對(duì)未來的數(shù)據(jù)增長(zhǎng),是否需要增加新分區(qū)。
存儲(chǔ)空間使用率:規(guī)劃存儲(chǔ)擴(kuò)容,避免磁盤寫滿。
自增主鍵剩余容量:評(píng)估自增ID字段的使用百分比,防止溢出。
9)變更管理
- 監(jiān)控目標(biāo):管控?cái)?shù)據(jù)庫變更風(fēng)險(xiǎn),減少人為故障。
- 指標(biāo)說明:
DDL執(zhí)行時(shí)長(zhǎng):DDL操作耗時(shí),評(píng)估其對(duì)業(yè)務(wù)的影響窗口。
DDL對(duì)業(yè)務(wù)影響:變更期間是否導(dǎo)致鎖表、性能下降或服務(wù)中斷。
未壓測(cè)SQL比例:上線前未經(jīng)性能測(cè)試的SQL比例,是潛在的性能風(fēng)險(xiǎn)源。
變更回滾次數(shù):因發(fā)現(xiàn)問題而回滾變更的次數(shù),反映變更流程和質(zhì)量控制的有效性。
10)依賴與拓?fù)滹L(fēng)險(xiǎn)
- 監(jiān)控目標(biāo):識(shí)別并監(jiān)控?cái)?shù)據(jù)庫外部依賴項(xiàng)的風(fēng)險(xiǎn)。
- 指標(biāo)說明:
上下游服務(wù)調(diào)用延遲:應(yīng)用服務(wù)、中間件調(diào)用數(shù)據(jù)庫的延遲,以及數(shù)據(jù)庫調(diào)用外部服務(wù)的延遲。
跨區(qū)域網(wǎng)絡(luò)流量和丟包率:在跨AZ部署架構(gòu)中,網(wǎng)絡(luò)鏈路的質(zhì)量直接影響數(shù)據(jù)庫同步和訪問性能。
依賴服務(wù)故障傳導(dǎo)路徑:明確依賴關(guān)系。如果下游緩存服務(wù)故障,流量會(huì)直接沖擊數(shù)據(jù)庫,需有熔斷機(jī)制。
11)業(yè)務(wù)影響與應(yīng)急響應(yīng)
- 監(jiān)控目標(biāo):將技術(shù)指標(biāo)轉(zhuǎn)化為業(yè)務(wù)影響,并衡量故障應(yīng)急效率。
- 指標(biāo)說明:
關(guān)鍵業(yè)務(wù)模塊受影響次數(shù):將數(shù)據(jù)庫故障映射到具體的業(yè)務(wù)功能。
故障定位耗時(shí) (MTTI):從發(fā)現(xiàn)問題到定位根本原因所需的時(shí)間。
應(yīng)急恢復(fù)成功率:執(zhí)行的應(yīng)急預(yù)案(如切換、重啟)的成功比例。
業(yè)務(wù)恢復(fù)時(shí)間 (MTTR):從故障開始到業(yè)務(wù)完全恢復(fù)的時(shí)間,是衡量韌性的黃金指標(biāo)。
業(yè)務(wù)響應(yīng)時(shí)間/交易成功率變化:最頂層的業(yè)務(wù)指標(biāo),任何下層技術(shù)問題最終都應(yīng)體現(xiàn)在這里,是判斷問題嚴(yán)重程度的最終依據(jù)。
圖片
1.3 數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)指標(biāo)體系構(gòu)建
數(shù)據(jù)庫系統(tǒng)風(fēng)險(xiǎn)指標(biāo)系統(tǒng)的構(gòu)建需要為每個(gè)指標(biāo)進(jìn)行量化,定義采集方法和頻率、閾值和計(jì)算方式、建立關(guān)聯(lián)視圖,并進(jìn)行閉環(huán)與迭代管理。
圖片
1)指標(biāo)定義與量化
將上述指標(biāo)項(xiàng)進(jìn)行分類分級(jí),按照不同的維度和優(yōu)先級(jí)確定重點(diǎn)關(guān)注的指標(biāo)項(xiàng),為每個(gè)指標(biāo)項(xiàng)定義閾值和采集方式、頻率,以及風(fēng)險(xiǎn)識(shí)別中的計(jì)算方式和系數(shù)。
2)指標(biāo)采集與集成
利用Agent或監(jiān)控代理工具采集基礎(chǔ)設(shè)施、數(shù)據(jù)庫實(shí)例層指標(biāo)和業(yè)務(wù)層的指標(biāo)數(shù)據(jù),并將指標(biāo)數(shù)據(jù)統(tǒng)一匯總到數(shù)據(jù)庫管理平臺(tái)進(jìn)行分析。
3)設(shè)置風(fēng)險(xiǎn)閾值與系數(shù)
為每個(gè)指標(biāo)設(shè)置合理的閾值超過閾值判定為不同的風(fēng)險(xiǎn)等級(jí),并定義不同的風(fēng)險(xiǎn)系數(shù)。比如CPU使用率超90%、實(shí)例狀態(tài)為Down、業(yè)務(wù)成功率低于95%等,判斷風(fēng)險(xiǎn)等級(jí)為高。
4)建立關(guān)聯(lián)視圖與根因分析
在數(shù)據(jù)庫運(yùn)維管理平臺(tái)將數(shù)據(jù)庫風(fēng)險(xiǎn)指標(biāo)關(guān)聯(lián)展示。當(dāng)業(yè)務(wù)層報(bào)警(如響應(yīng)時(shí)間飆升)時(shí),運(yùn)維人員可以迅速下鉆查看是否是數(shù)據(jù)庫服務(wù)層(出現(xiàn)熱點(diǎn))、實(shí)例層(有慢SQL)、還是基礎(chǔ)設(shè)施層(磁盤IO延遲高)的問題。另外基于這些全面的指標(biāo)數(shù)據(jù),訓(xùn)練算法或利用大模型進(jìn)行異常檢測(cè)、根因分析(RCA)和關(guān)聯(lián)推斷,從而更快地定位問題。
5)閉環(huán)與迭代
定期回顧告警和故障,審視指標(biāo)體系的完備性。是否漏掉了某個(gè)關(guān)鍵指標(biāo)?某個(gè)指標(biāo)的閾值是否不合理?檢測(cè)到風(fēng)險(xiǎn)或者不滿足的指標(biāo)項(xiàng),督促關(guān)聯(lián)方進(jìn)行整改優(yōu)化,并核驗(yàn)優(yōu)化的結(jié)果,比如慢SQL的治理、高可用架構(gòu)的完善等。
需要注意的是風(fēng)險(xiǎn)指標(biāo)數(shù)據(jù)有部分是靜態(tài)數(shù)據(jù),有些是動(dòng)態(tài)數(shù)據(jù),從用戶角度可以定期的進(jìn)行風(fēng)險(xiǎn)排查,也可以根據(jù)故障或事件基于準(zhǔn)實(shí)時(shí)采集的數(shù)據(jù)進(jìn)行數(shù)據(jù)庫風(fēng)險(xiǎn)實(shí)時(shí)計(jì)算,以便于快速的定位排障。在定期的風(fēng)險(xiǎn)排查中,動(dòng)態(tài)的數(shù)據(jù)可以基于歷史的一段時(shí)間進(jìn)行分析,比如這一段時(shí)間CPU和內(nèi)存的使用率、連接數(shù)的使用情況等,基于這些數(shù)據(jù)分析是否存在潛在的風(fēng)險(xiǎn),必要時(shí)候進(jìn)行擴(kuò)容等。
基于以上構(gòu)建了數(shù)據(jù)庫系統(tǒng)的風(fēng)險(xiǎn)指標(biāo)體系,涵蓋了數(shù)據(jù)庫系統(tǒng)四層指標(biāo)維度,建立了可觀測(cè)的風(fēng)險(xiǎn)體系,為實(shí)現(xiàn)數(shù)據(jù)庫層故障的快速定界和恢復(fù),提升應(yīng)用系統(tǒng)的韌性。關(guān)于故障的快速定界和快速發(fā)現(xiàn)將在下一部分進(jìn)行分析。





























