本技術(shù)涉及數(shù)據(jù)庫,尤其涉及一種數(shù)據(jù)庫的智能巡檢方法及裝置。
背景技術(shù):
1、目前,數(shù)據(jù)庫巡檢發(fā)展到靜態(tài)與動態(tài)相結(jié)合的階段,大多依賴工具進(jìn)行巡檢,一定程度上提高了巡檢效率。然而,仍然存在以下問題:傳統(tǒng)巡檢通常僅依賴結(jié)構(gòu)化查詢語言(structuredquerylanguage,sql)日志或硬件資源監(jiān)控數(shù)據(jù),缺乏對事務(wù)管理、業(yè)務(wù)負(fù)載等多維度數(shù)據(jù)的綜合分析,導(dǎo)致巡檢結(jié)果片面。
2、并且現(xiàn)有數(shù)據(jù)庫巡檢過程過分依賴人工經(jīng)驗,缺乏智能分析和自動修復(fù)能力,難以精準(zhǔn)定位性能瓶頸;巡檢項也比較固定,無法根據(jù)數(shù)據(jù)庫實時狀態(tài)動態(tài)調(diào)整,難以提前預(yù)警性能問題。此外,傳統(tǒng)巡檢多為事后分析,無法預(yù)測未來性能瓶頸趨勢,導(dǎo)致被動響應(yīng)。
技術(shù)實現(xiàn)思路
1、為解決上述問題,本技術(shù)實施例提供了一種數(shù)據(jù)庫的智能巡檢方法及裝置,用于全面地巡檢數(shù)據(jù)庫,提升數(shù)據(jù)庫巡檢的自動化、動態(tài)化和智能化水平。
2、一方面,本技術(shù)實施例提供了一種數(shù)據(jù)庫的智能巡檢方法,該方法包括:
3、通過預(yù)設(shè)多源異構(gòu)數(shù)據(jù)采集方式,獲取與巡檢數(shù)據(jù)庫運行狀態(tài)對應(yīng)的多模態(tài)數(shù)據(jù)集;
4、基于跨模態(tài)注意力機(jī)制與自學(xué)習(xí)模型,建立所述多模態(tài)數(shù)據(jù)集對應(yīng)的多維數(shù)據(jù)關(guān)聯(lián)關(guān)系,并結(jié)合歷史時序數(shù)據(jù)與無監(jiān)督異常檢測,確定數(shù)據(jù)庫健康值及異常預(yù)警信息;其中,所述多維數(shù)據(jù)關(guān)聯(lián)關(guān)系至少在sql性能、資源消耗、事務(wù)行為及業(yè)務(wù)負(fù)載之間建立;
5、根據(jù)所述數(shù)據(jù)庫健康值、所述異常預(yù)警信息以及預(yù)設(shè)反饋優(yōu)化機(jī)制,生成數(shù)據(jù)庫優(yōu)化方案,并發(fā)送給用戶終端。
6、在本技術(shù)的一種實現(xiàn)方式中,在生成數(shù)據(jù)庫優(yōu)化方案之后,所述方法還包括:
7、基于知識圖譜關(guān)聯(lián)推理、時間序列預(yù)測模型以及預(yù)設(shè)歷史健康評估數(shù)據(jù),確定所述巡檢數(shù)據(jù)庫的未來性能瓶頸趨勢信息及所述未來性能瓶頸趨勢信息所對應(yīng)的優(yōu)化方案,并將所述未來性能瓶頸趨勢信息及所述未來性能瓶頸趨勢信息所對應(yīng)的優(yōu)化方案發(fā)送至用戶終端,以便所述用戶終端確定是否再次優(yōu)化。
8、在本技術(shù)的一種實現(xiàn)方式中,通過預(yù)設(shè)多源異構(gòu)數(shù)據(jù)采集方式,獲取與巡檢數(shù)據(jù)庫運行狀態(tài)對應(yīng)的多模態(tài)數(shù)據(jù)集,具體包括:
9、通過數(shù)據(jù)庫內(nèi)置系統(tǒng)表、日志解析及外部監(jiān)控工具,實時采集所述巡檢數(shù)據(jù)庫運行狀態(tài)的多源異構(gòu)數(shù)據(jù),所述多源異構(gòu)數(shù)據(jù)至少包括:sql執(zhí)行數(shù)據(jù)、資源消耗數(shù)據(jù)、事務(wù)行為數(shù)據(jù)、業(yè)務(wù)負(fù)載數(shù)據(jù);
10、將各所述多源異構(gòu)數(shù)據(jù)添加至所述多模態(tài)數(shù)據(jù)集。
11、在本技術(shù)的一種實現(xiàn)方式中,實時采集所述巡檢數(shù)據(jù)庫運行狀態(tài)的多源異構(gòu)數(shù)據(jù),具體包括:
12、通過所述數(shù)據(jù)庫內(nèi)置系統(tǒng)表獲取sql執(zhí)行數(shù)據(jù),所述sql執(zhí)行數(shù)據(jù)至少包括查詢文本、執(zhí)行時間及索引命中率;
13、通過日志解析獲取所述事務(wù)行為數(shù)據(jù),所述事務(wù)行為數(shù)據(jù)至少包括事務(wù)提交與回滾率、鎖等待時間及并發(fā)事務(wù)數(shù);
14、通過外部監(jiān)控工具采集所述資源消耗數(shù)據(jù),所述資源消耗數(shù)據(jù)至少包括cpu負(fù)載、內(nèi)存占用及磁盤i/o;
15、通過關(guān)聯(lián)數(shù)據(jù)庫操作日志與業(yè)務(wù)日志,獲取所述業(yè)務(wù)負(fù)載數(shù)據(jù),所述業(yè)務(wù)負(fù)載數(shù)據(jù)包括訪問峰值時間及查詢請求分布。
16、在本技術(shù)的一種實現(xiàn)方式中,基于跨模態(tài)注意力機(jī)制與自學(xué)習(xí)模型,建立所述多模態(tài)數(shù)據(jù)集對應(yīng)的多維數(shù)據(jù)關(guān)聯(lián)關(guān)系,具體包括:
17、對所述多模態(tài)數(shù)據(jù)集中各多源異構(gòu)數(shù)據(jù)進(jìn)行特征提取,并將提取的各維度數(shù)據(jù)特征轉(zhuǎn)換為特征比對向量;
18、根據(jù)各所述特征比對向量及所述跨模態(tài)注意力機(jī)制,計算所述sql性能、所述資源消耗、所述事務(wù)行為及所述業(yè)務(wù)負(fù)載之間對應(yīng)的關(guān)聯(lián)權(quán)重矩陣;
19、根據(jù)所述自學(xué)習(xí)模型,確定同一所述多源異構(gòu)數(shù)據(jù)的不同數(shù)據(jù)模式的關(guān)聯(lián)信息;所述關(guān)聯(lián)信息至少包括數(shù)據(jù)模式分組及異常模式特征;
20、根據(jù)所述關(guān)聯(lián)權(quán)重矩陣及所述關(guān)聯(lián)信息,生成所述多維數(shù)據(jù)關(guān)聯(lián)關(guān)系。
21、在本技術(shù)的一種實現(xiàn)方式中,結(jié)合歷史時序數(shù)據(jù)與無監(jiān)督異常檢測,確定數(shù)據(jù)庫健康值及異常預(yù)警信息,具體包括:
22、通過預(yù)設(shè)transformer模型對所述歷史時序數(shù)據(jù)進(jìn)行建模,生成基線模型;
23、通過自編碼器計算所述多模態(tài)數(shù)據(jù)集對應(yīng)的當(dāng)前數(shù)據(jù)與所述基線模型的偏離程度,以根據(jù)偏離程度確定異常值;其中,所述偏離程度基于重構(gòu)誤差得到;
24、根據(jù)所述異常值及所述多維數(shù)據(jù)關(guān)聯(lián)關(guān)系,對所述異常值加權(quán)計算,以確定各所述數(shù)據(jù)模式分組對應(yīng)的健康子值,并根據(jù)各所述健康子值計算所述數(shù)據(jù)庫健康值;
25、根據(jù)所述異常值及所述多維數(shù)據(jù)關(guān)聯(lián)關(guān)系,確定異常原因;
26、根據(jù)所述數(shù)據(jù)庫健康值及所述異常原因,生成所述異常預(yù)警信息。
27、在本技術(shù)的一種實現(xiàn)方式中,根據(jù)所述數(shù)據(jù)庫健康值、所述異常預(yù)警信息以及預(yù)設(shè)反饋優(yōu)化機(jī)制,生成數(shù)據(jù)庫優(yōu)化方案,具體包括:
28、將所述數(shù)據(jù)庫健康值及所述異常預(yù)警信息與預(yù)設(shè)優(yōu)化方案列表進(jìn)行匹配,以根據(jù)匹配結(jié)果確定所述數(shù)據(jù)庫優(yōu)化方案;所述數(shù)據(jù)庫優(yōu)化方案至少包括以下一種或多種:sql優(yōu)化、資源配置優(yōu)化、并發(fā)控制優(yōu)化;
29、根據(jù)所述預(yù)設(shè)反饋優(yōu)化機(jī)制,確定所述數(shù)據(jù)庫優(yōu)化方案對應(yīng)的執(zhí)行反饋信息,并判斷所述執(zhí)行反饋信息不滿足預(yù)設(shè)優(yōu)化條件的情況下,對所述數(shù)據(jù)庫優(yōu)化方案進(jìn)行迭代更新,直至生成滿足預(yù)設(shè)優(yōu)化條件的所述數(shù)據(jù)庫優(yōu)化方案。
30、在本技術(shù)的一種實現(xiàn)方式中,所述預(yù)設(shè)優(yōu)化方案列表至少包括:重寫sql語句、切換join算法、調(diào)整work_mem參數(shù)、調(diào)整checkpoint_timeout參數(shù)和優(yōu)化鎖策略。
31、在本技術(shù)的一種實現(xiàn)方式中,基于知識圖譜關(guān)聯(lián)推理、時間序列預(yù)測模型以及預(yù)設(shè)歷史健康評估數(shù)據(jù),確定所述巡檢數(shù)據(jù)庫的未來性能瓶頸趨勢信息及所述未來性能瓶頸趨勢信息所對應(yīng)的優(yōu)化方案,具體包括:
32、根據(jù)所述知識圖譜關(guān)聯(lián)推理,確定所述預(yù)設(shè)歷史健康評估數(shù)據(jù)中各性能瓶頸根因信息;其中,所述知識圖譜關(guān)聯(lián)推理以提取到多源異構(gòu)數(shù)據(jù)為實體、各多源異構(gòu)數(shù)據(jù)之間聯(lián)系為關(guān)系;
33、將所述預(yù)設(shè)歷史健康評估數(shù)據(jù)及其對應(yīng)的各所述性能瓶頸根因信息,輸入所述時間序列預(yù)測模型,以預(yù)測預(yù)設(shè)時長內(nèi)所述巡檢數(shù)據(jù)庫的性能指標(biāo)變化趨勢,并生成所述未來性能瓶頸趨勢信息;
34、根據(jù)所述預(yù)設(shè)歷史健康評估數(shù)據(jù)中的歷史健康值、歷史異常預(yù)警信息及歷史優(yōu)化方案,生成與所述未來性能瓶頸趨勢信息對應(yīng)的優(yōu)化方案。
35、另一方面,本技術(shù)實施例還提供了一種數(shù)據(jù)庫的智能巡檢裝置,所述裝置包括:
36、獲取模塊,用于通過預(yù)設(shè)多源異構(gòu)數(shù)據(jù)采集方式,獲取與巡檢數(shù)據(jù)庫運行狀態(tài)對應(yīng)的多模態(tài)數(shù)據(jù)集;
37、建立確定模塊,用于基于跨模態(tài)注意力機(jī)制與自學(xué)習(xí)模型,建立所述多模態(tài)數(shù)據(jù)集對應(yīng)的多維數(shù)據(jù)關(guān)聯(lián)關(guān)系,并結(jié)合歷史時序數(shù)據(jù)與無監(jiān)督異常檢測,確定數(shù)據(jù)庫健康值及異常預(yù)警信息;其中,所述多維數(shù)據(jù)關(guān)聯(lián)關(guān)系至少在sql性能、資源消耗、事務(wù)行為及業(yè)務(wù)負(fù)載之間建立;
38、生成模塊,用于根據(jù)所述數(shù)據(jù)庫健康值、所述異常預(yù)警信息以及預(yù)設(shè)反饋優(yōu)化機(jī)制,生成數(shù)據(jù)庫優(yōu)化方案,并發(fā)送給用戶終端。
39、本技術(shù)與現(xiàn)有技術(shù)相比,其顯著效果如下:
40、通過上述技術(shù)方案,實現(xiàn)了數(shù)據(jù)庫多源異構(gòu)數(shù)據(jù)的采集,結(jié)合跨模態(tài)注意力機(jī)制、自學(xué)習(xí)模型、知識圖譜關(guān)聯(lián)推理及時間序列預(yù)測模型,實現(xiàn)了數(shù)據(jù)庫智能巡檢的全面性、精準(zhǔn)性、智能化及前瞻性。
41、具體地,本技術(shù)整合sql性能、資源消耗、事務(wù)行為及業(yè)務(wù)負(fù)載等多維度數(shù)據(jù),實現(xiàn)全面巡檢,且通過跨模態(tài)注意力機(jī)制可揭示多維度數(shù)據(jù)的交互影響,能夠精準(zhǔn)定位性能瓶頸的根因,無需過度依賴人工經(jīng)驗。同時能夠主動生成數(shù)據(jù)庫優(yōu)化方案,減少人工干預(yù),提升了巡檢效率。
42、此外,本技術(shù)還通過時間序列預(yù)測模型預(yù)測未來性能瓶頸趨勢,提前生成預(yù)警信息,支持前瞻性維護(hù)。上述方案有效解決了傳統(tǒng)數(shù)據(jù)庫巡檢中數(shù)據(jù)單一、缺乏智能分析、動態(tài)監(jiān)控不足及無法提前預(yù)警等問題,顯著提升了數(shù)據(jù)庫巡檢的智能化水平與運維效率,具有廣泛的應(yīng)用前景。