臧洪睿 遲克寒 馬旭東 楊婷婷
摘要:隨著數(shù)據(jù)庫種類和數(shù)量的不斷增加以及IT架構復雜性增長,運維人員疲于應付巡檢和故障檢修,從而使得數(shù)據(jù)庫的故障處理難度急劇增長。為了提升數(shù)據(jù)庫缺陷分析和故障處置能力,本文將基于ISAM研究數(shù)據(jù)庫的監(jiān)控閾值的智能化設定和調整算法,以此可以運用機器學習算法智能化判斷數(shù)據(jù)庫異常情況,并動態(tài)設定告警閾值。
關鍵詞:數(shù)據(jù)庫;ISAM;檢測算法
中圖分類號:TP393? ? ? 文獻標識碼:A
文章編號:1009-3044(2020)35-0030-02
開放科學(資源服務)標識碼(OSID):
Analysis on the principle of Intelligent Setting and Adjusting of Database Monitoring Threshold Based on ISAM Algorithm
ZANG Hong-rui, CHI Ke-han, MA Xu-dong, YANG Ting-ting
(Information and Communication Company of State Grid Jilin Electric Power Co., Ltd., Changchun 130000,China)
Abstract:With the increasing types and number of databases and the increasing complexity of IT architecture, the operation and maintenance personnel are struggling to cope with inspection and troubleshooting, which makes the difficulty of database fault processing increase rapidly. In order to improve the ability of database defect analysis and fault handling, this paper will study the intelligent setting and adjustment of database monitoring threshold based on ISAM algorithm, so that the machine learning algorithm can be used to intelligently judge the abnormal situation of the database, and set the alarm threshold dynamically.
Key words:database;ISAM;,detection algorithm
在當前信息化技術高速發(fā)展的大背景下,信息系統(tǒng)所承接的業(yè)務也越來越多元化、復雜化,更新速度更加頻繁。而信息系統(tǒng)中的數(shù)據(jù)庫作為重要的存儲保障,是海量業(yè)務數(shù)據(jù)的重要儲存站,因此,數(shù)據(jù)庫的安全穩(wěn)定也直接影響著信息系統(tǒng)的穩(wěn)定運行。然而數(shù)據(jù)庫種類和數(shù)量隨著業(yè)務的增加而不斷增加,再加上IT架構的復雜性不斷增長,這就導致了信息系統(tǒng)的運維人員對數(shù)據(jù)庫的巡檢和故障檢修等工作的工作量加大,對運維專業(yè)性要求也增強。從而使得運維人員在對數(shù)據(jù)庫的故障處理過程中的難度急劇增長,一定程度上造成了數(shù)據(jù)庫運維的安全隱患。
為了提升數(shù)據(jù)庫缺陷分析和故障處置能力,需要基于數(shù)據(jù)庫自動化運維工具所采集的數(shù)據(jù)庫指標(日志信息、監(jiān)控信息、主機信息等)通過機器學習的方式來進一步解決自動化運維沒辦法解決的問題。智能化系統(tǒng)能夠全面地分析數(shù)據(jù)庫缺陷,并能夠在復雜環(huán)境下實現(xiàn)問題的快速發(fā)現(xiàn)甚至提前預判。從而實現(xiàn)故障的快速診斷和精確定位,最大限度降低故障對業(yè)務運轉的影響,提升運維人員工作效率和質量,提升運維能力的自動化、智能化技術水平,實現(xiàn)信息系統(tǒng)運維工作由被動式的修復向主動預防調整的運維模式轉變。
1 基于ISAM的數(shù)據(jù)庫監(jiān)控閾值智能化設定和調整算法
ISAM(Intelligent setting and adjustment of database monitoring threshold)即數(shù)據(jù)庫監(jiān)控閾值智能化設定和調整算法。由于在信息系統(tǒng)數(shù)據(jù)庫中的受監(jiān)控的數(shù)據(jù)具有強烈震動的特性,若利用線性回歸模型對數(shù)據(jù)進行擬合分析會導致誤差偏高,得不到準確的數(shù)據(jù),進而影響數(shù)據(jù)庫的運維工作。因此這里可對震動的數(shù)據(jù)采用分段分析的模式,即將數(shù)據(jù)序列分為若干段,將每段定義為一個模式,對每個模式取其特征值進行描述,并進行映射操作而得到特征向量,并將這些模式映射到二維空間上,每個模式可視為空間上的一個點,而不同模式點之間的距離就是模式距離。
2 ISAM相關統(tǒng)計名詞
在此將時間設為t,則時間序列為[T=
(1)模式及模式特征:將序列劃分成若干段,把每段子序列定義為一個模式,對每個模式取其特征向量進行描述,表示為模式特征。
(2)模式特征處理:在劃分若干模式取其模式特征時,每個模式特征可能不在一個數(shù)量級上,因此需要對這些模式特征進行規(guī)范化處理,做到統(tǒng)一:
[norm(ti)=ti-min(T)max(T)-min(T)]
(3)模式特征距離:即對每個模式特征進行規(guī)范化處理后,將每個模式特征視為二維空間上的一點,點與點之間的距離被稱為模式特征距離。
(4)相關系數(shù)設定:在模式集中選取k個模式,計算每個模式與其他模式之間的距離 ,然后將k個模式的計數(shù)增加1,設為[k_count],則認定當前模式可以達到k個模式。通過反復測試可知,當k為模式數(shù)量的三分之一時,為最佳系數(shù)。
(5) 影響系數(shù):對[k_count]進行歸一化處理:
[effect=k_count-min(k_count)max(k_count)-min(k_count)]
(6)異常系數(shù):異常系數(shù)用來描述模式的異常程度。假設某個模式點可到達其他模式點的數(shù)量為n,則該點的異常系數(shù)為:
[exception=1-i=1neffectin]
(7)擬合誤差:將時間序列L(t)經(jīng)過線性差值后所得到的時間序列設為[Tc=
[E=i=1n(ti-tci)2]
3 ISAM算法流程
在面對數(shù)據(jù)庫中強烈震蕩的監(jiān)控數(shù)據(jù)時,本文提出了模式檢測算法。該算法將震蕩數(shù)據(jù)進行分段處理,劃分為若干段,每段被認為是一個模式單元。針對每個模式單元取其特征值進行描述,形成特征向量。然后對每個模式的特征向量進行計算,在得到最接近的k個模式后,將其加入該模式集中。接著將所有模式的相關模式集的大小和該模式的影響系數(shù)結合在一起,計算得到異常程度。以此類推,當模式達到一定規(guī)模后,可以發(fā)現(xiàn)模式間的差異,從而找到異常的模式區(qū)間。
(1)將數(shù)據(jù)序列劃分為若干子序列,定義為模式,每個模式指定長度為d,并針對每個模式取其特征值。
(2)對每個模式的特征值進行歸一化處理,得到特征向量;將這些模式特征向量的集合設定為List
(3)for(Patern pl:list);
(4)for(Patern p2:list);
(5)distance =getdistance(pl,p2);
(6)distances.add(distance);
(7)for(PatternP:list);
(8)neighbour = P.getTopK(distances);
(9)//獲取距離 TopK 的模式,構成集合 neighbour
(10)for(Paternpk:neighbour);
(11)pk.neighbour.add(p);
(12)pk.neigh len+ ;//將鄰居節(jié)點加入集合
(13)for(PatternP:list);
(14)最終計算得出影響系數(shù)和異常系數(shù);
(15)若符合連續(xù)n個模式的異常系數(shù)大于k個模式,則將該模式區(qū)間以及異常系數(shù)列出來。
綜上所述,通過獲取模式特征,將各個模式序列映射為特征向量,然后進行歸一化處理,從而得到更加適應性的算法數(shù)據(jù)。而各個模式序列的特征向量之間的聯(lián)系可通過計算向量節(jié)點建的距離來衡量。
4總結
本文通過采用了ISAM數(shù)據(jù)庫監(jiān)控閾值智能化設定和調整算法,來實現(xiàn)對數(shù)據(jù)庫運行狀態(tài)異常檢測?;趧討B(tài)基線的原理,將數(shù)據(jù)庫震蕩數(shù)據(jù)進行分段分析,進行模式化處理,獲得每個模式的特征向量,計算每個模式節(jié)點間的距離。最終計算得到影響系數(shù)和異常系數(shù),并列舉出來,從而發(fā)現(xiàn)數(shù)據(jù)庫當中的異常數(shù)據(jù)。隨之,運維人員可快速定位異常位置并及時處理。
參考文獻:
[1] 武文斌.Oracle數(shù)據(jù)庫性能優(yōu)化及監(jiān)控系統(tǒng)的設計實現(xiàn)[J].電腦知識與技術,2019,15(7):3-4.
[2] 信俊昌,王國仁,公丕臻,等. 不確定數(shù)據(jù)庫中的閾值輪廓查詢處理[A]. 中國計算機學會數(shù)據(jù)庫專業(yè)委員會.第26屆中國數(shù)據(jù)庫學術會議論文集(B輯)[C].中國計算機學會數(shù)據(jù)庫專業(yè)委員會,2009:7.
[3] 胡雪梅.數(shù)據(jù)庫的閾值管理[J].四川通信技術,2000(01):50-51.
[4] 張浩.網(wǎng)絡數(shù)據(jù)庫中異常數(shù)據(jù)檢測優(yōu)化仿真研究[J].電腦與電信,2019(11):32-35.
[5] 李宇明.數(shù)據(jù)庫系統(tǒng)性能評測與質量管理[D].上海:華東師范大學,2019.
【通聯(lián)編輯:光文玲】