国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于內(nèi)存數(shù)據(jù)庫(kù)的智能化故障處理方法

2017-03-30 09:26周世超
移動(dòng)通信 2017年4期

周世超

【摘 要】為提高實(shí)時(shí)計(jì)費(fèi)業(yè)務(wù)的時(shí)效性、穩(wěn)定性與連續(xù)性,設(shè)計(jì)、開發(fā)并實(shí)現(xiàn)了一套智能化故障處理方法。該方法基于內(nèi)存數(shù)據(jù)庫(kù)架構(gòu)與特性,提出了新故障處理的方案,實(shí)現(xiàn)了對(duì)故障監(jiān)控、預(yù)警和處理的智能化。通過(guò)數(shù)據(jù)對(duì)比顯示,該系統(tǒng)能夠顯著提高故障處理效率。

【關(guān)鍵詞】?jī)?nèi)存數(shù)據(jù)庫(kù) 故障預(yù)警 智能化故障處理

An Intelligent Fault Handling Method Based on Memory Database

[Abstract]In order to improve the timeliness, stability and continuity of real-time billing service, a set of intelligent fault handling methods was designed and developed. Based on the architecture and feature of memory database, a new fault processing scheme was proposed in the method to realize the intelligence of fault monitoring, early warning and fault handling. Data comparison shows that the method can significantly improve the efficiency of fault handling.

[Key words]memory database fault early warning intelligent fault handling

1 引言

數(shù)據(jù)庫(kù)負(fù)責(zé)數(shù)據(jù)的存儲(chǔ)與處理,在諸如通信行業(yè)實(shí)時(shí)計(jì)費(fèi)業(yè)務(wù)等對(duì)實(shí)時(shí)性要求非常高的關(guān)鍵業(yè)務(wù)場(chǎng)景中,內(nèi)存數(shù)據(jù)庫(kù)以其高響應(yīng)速度、高并發(fā)、高吞吐量等優(yōu)秀特性正得到逐步推廣與大規(guī)模應(yīng)用。在利用內(nèi)存技術(shù)提升數(shù)據(jù)庫(kù)性能、提高業(yè)務(wù)系統(tǒng)實(shí)時(shí)響應(yīng)能力的同時(shí),對(duì)于內(nèi)存數(shù)據(jù)庫(kù)運(yùn)行穩(wěn)定性的要求同樣不斷提高,要求其在出現(xiàn)故障時(shí)能夠?qū)崿F(xiàn)快速定位與修復(fù),提高業(yè)務(wù)的連續(xù)性。

2 內(nèi)存數(shù)據(jù)庫(kù)簡(jiǎn)介

傳統(tǒng)的數(shù)據(jù)庫(kù)管理系統(tǒng)把所有數(shù)據(jù)都放在磁盤上進(jìn)行管理,所以稱做磁盤數(shù)據(jù)庫(kù)。由于對(duì)磁盤讀寫數(shù)據(jù)的操作一方面要進(jìn)行磁頭的機(jī)械移動(dòng),另一方面受到系統(tǒng)調(diào)用時(shí)間的影響,當(dāng)數(shù)據(jù)量很大,操作頻繁且復(fù)雜時(shí),就會(huì)暴露出很多問(wèn)題。

內(nèi)存數(shù)據(jù)庫(kù)除對(duì)內(nèi)存讀寫比對(duì)磁盤讀寫快之外,還針對(duì)數(shù)據(jù)庫(kù)架構(gòu)與管理方式進(jìn)行了重新設(shè)計(jì),目前幾種常見的通用內(nèi)存數(shù)據(jù)庫(kù),例如ORACLE公司的TimesTen,Altibase公司的Altibase,McObject公司的eXtremeDB,均屬于關(guān)系型內(nèi)存數(shù)據(jù)庫(kù)產(chǎn)品。以下針對(duì)兩種不同架構(gòu)的數(shù)據(jù)庫(kù)進(jìn)行對(duì)比說(shuō)明。

傳統(tǒng)磁盤數(shù)據(jù)庫(kù)檢索的基本算法基于硬盤的讀寫,而內(nèi)存數(shù)據(jù)庫(kù)基于內(nèi)存實(shí)現(xiàn)。內(nèi)存數(shù)據(jù)庫(kù)拋棄了傳統(tǒng)的磁盤數(shù)據(jù)管理方式(如圖1所示),基于全部數(shù)據(jù)都加載到內(nèi)存的設(shè)計(jì)理念,對(duì)數(shù)據(jù)庫(kù)的體系結(jié)構(gòu)進(jìn)行重新設(shè)計(jì),并且在數(shù)據(jù)組織結(jié)構(gòu)、索引技術(shù)、并行操作等方面也進(jìn)行了相應(yīng)的改進(jìn),數(shù)據(jù)處理速度比傳統(tǒng)數(shù)據(jù)庫(kù)的數(shù)據(jù)處理速度快,一般在10倍以上。通過(guò)采用內(nèi)存數(shù)據(jù)庫(kù),可以極大地緩解傳統(tǒng)數(shù)據(jù)庫(kù)中大量的磁盤讀寫操作導(dǎo)致的I/O瓶頸問(wèn)題。

當(dāng)前數(shù)據(jù)庫(kù)大多采用C/S(Client/Server,客戶機(jī)/服務(wù)器)模式的進(jìn)程間通信。傳統(tǒng)數(shù)據(jù)庫(kù)大多通過(guò)管道,本地IPC(Inter-Process Communication,進(jìn)程間通信)或遠(yuǎn)程Socket(網(wǎng)絡(luò)上的兩個(gè)程序通過(guò)一個(gè)雙向的通信連接實(shí)現(xiàn)數(shù)據(jù)的交換,連接的一端稱為一個(gè)Socket)形式的通信,在進(jìn)行批處理操作時(shí)需要處理大量的數(shù)據(jù),性能消耗明顯。因此,在傳統(tǒng)場(chǎng)景下需要關(guān)注數(shù)據(jù)庫(kù)交互的往返次數(shù)。而在內(nèi)存數(shù)據(jù)庫(kù)產(chǎn)品中,大多采用直接共享內(nèi)存的方式,Client通過(guò)Driver直接讀取共享內(nèi)存,省去了通信開銷,幾乎無(wú)性能損耗。

從上述對(duì)比分析可知,內(nèi)存數(shù)據(jù)庫(kù)相對(duì)于傳統(tǒng)磁盤數(shù)據(jù)庫(kù)具有性能好、響應(yīng)速度快和處理速度快等優(yōu)勢(shì),但在企業(yè)的實(shí)際應(yīng)用中,如果發(fā)生故障,這些優(yōu)勢(shì)將轉(zhuǎn)變?yōu)榱觿?shì)。由于采用內(nèi)存數(shù)據(jù)庫(kù)支撐的業(yè)務(wù)場(chǎng)景實(shí)時(shí)性要求很高,業(yè)務(wù)中斷對(duì)于客戶的感知影響非常大。例如,某省級(jí)通信運(yùn)營(yíng)商的實(shí)時(shí)計(jì)費(fèi)系統(tǒng)使用ORACLE公司的TimesTen內(nèi)存數(shù)據(jù)庫(kù),在業(yè)務(wù)試運(yùn)行階段故障發(fā)生相對(duì)較多,但原廠家提供的配套故障診斷工具卻很少,出現(xiàn)問(wèn)題之后需要人工排查處理,業(yè)務(wù)中斷時(shí)長(zhǎng)在1小時(shí)左右,對(duì)于實(shí)時(shí)計(jì)費(fèi)系統(tǒng)是不可接受的。

針對(duì)上述問(wèn)題,該省級(jí)通信運(yùn)營(yíng)商通過(guò)分析與總結(jié),制定出一套完善的智能化的故障處理方法。

3 智能故障處理方法原理及實(shí)現(xiàn)

對(duì)于企業(yè)的核心系統(tǒng),監(jiān)控和預(yù)警體系配備相對(duì)完善,在故障發(fā)生時(shí)一般能夠及時(shí)通知運(yùn)維人員,但運(yùn)維人員接入系統(tǒng)后對(duì)故障原因的分析判斷環(huán)節(jié)將耗費(fèi)較長(zhǎng)的時(shí)間。

本文提出的智能化處理方案主要針對(duì)故障處理過(guò)程中耗費(fèi)時(shí)間最長(zhǎng)的故障原因診斷環(huán)節(jié)進(jìn)行優(yōu)化,通過(guò)智能判斷替代人工故障分析,解決故障處理瓶頸。通過(guò)預(yù)設(shè)方案進(jìn)行故障預(yù)處理,極大地縮短了故障處理的總時(shí)長(zhǎng),使業(yè)務(wù)連續(xù)性滿足SLA的要求,確保了該運(yùn)營(yíng)商實(shí)時(shí)計(jì)費(fèi)系統(tǒng)上線后的穩(wěn)定運(yùn)行。

3.1 智能處理方案的應(yīng)用場(chǎng)景

本文研究的內(nèi)存數(shù)據(jù)庫(kù)故障智能處理方案,基于故障重復(fù)發(fā)生、表象一致、發(fā)生具有規(guī)律性,且表象能夠轉(zhuǎn)化成具體的業(yè)務(wù)或系統(tǒng)指標(biāo)的情況。根據(jù)這些指標(biāo)對(duì)不同故障有針對(duì)性地制定解決方案,做到故障發(fā)生時(shí)能夠智能判斷、自動(dòng)處理。

3.2 模塊說(shuō)明

本文所述的內(nèi)存數(shù)據(jù)庫(kù)故障智能處理方案,主要分為以下5個(gè)模塊,即事件監(jiān)控(故障監(jiān)控)、閾值設(shè)置、智能判斷、故障處理與實(shí)時(shí)預(yù)警,具體如圖2所示:

(1)事件監(jiān)控

事件監(jiān)控,即故障監(jiān)控,將各個(gè)獨(dú)立的故障現(xiàn)象轉(zhuǎn)化成事件,對(duì)事件實(shí)施監(jiān)控,并通過(guò)各種算法對(duì)業(yè)務(wù)、系統(tǒng)的運(yùn)行信息進(jìn)行統(tǒng)計(jì)分析,轉(zhuǎn)化成可以識(shí)別的指標(biāo)。

(2)閾值設(shè)置

本模塊主要是根據(jù)事件監(jiān)控轉(zhuǎn)化而來(lái)的指標(biāo)信息,結(jié)合故障及過(guò)往積累的知識(shí)庫(kù),預(yù)設(shè)指標(biāo)閾值,供智能判斷模塊進(jìn)行處理。該閾值可以根據(jù)實(shí)際情況進(jìn)行調(diào)整。

(3)智能判斷

智能判斷模塊根據(jù)事件監(jiān)控模塊獲取的指標(biāo)信息與閾值設(shè)置模塊設(shè)置的閾值進(jìn)行對(duì)比,并根據(jù)比對(duì)結(jié)果選擇不同的故障處理程序。

(4)故障處理

故障處理模塊調(diào)用智能判斷模塊并進(jìn)行故障處理的相關(guān)程序,這些程序根據(jù)特定的故障及處理過(guò)程編寫。

(5)實(shí)時(shí)預(yù)警

實(shí)時(shí)預(yù)警模塊是將整個(gè)智能處理過(guò)程的相關(guān)信息進(jìn)行實(shí)時(shí)展現(xiàn)與通知的模塊,主要將故障發(fā)生、智能處理過(guò)程信息、結(jié)果信息等發(fā)送給相關(guān)處理人員,便于跟蹤故障處理過(guò)程。

3.3 算法流程描述

各個(gè)故障表象在“事件監(jiān)控”環(huán)節(jié)被轉(zhuǎn)化為事件,并根據(jù)具體的業(yè)務(wù)算法、系統(tǒng)運(yùn)行信息生成體現(xiàn)故障的具體指標(biāo)。“智能判斷”模塊會(huì)根據(jù)事件監(jiān)控模塊獲取的指標(biāo)信息與預(yù)設(shè)的閾值進(jìn)行對(duì)比,并根據(jù)對(duì)比的結(jié)果選擇相應(yīng)的故障處理程序,完成故障的智能處理。從“智能判斷”模塊開始,會(huì)將相關(guān)的處理信息通過(guò)“實(shí)時(shí)預(yù)警”模塊告知相關(guān)維護(hù)人員,從而便于維護(hù)人員跟進(jìn)故障的處理,并實(shí)時(shí)告知整個(gè)處理過(guò)程。

整體處理流程如圖3所示:

3.4 智能處理方案的具體實(shí)現(xiàn)

下面以一個(gè)TimesTen內(nèi)存數(shù)據(jù)庫(kù)承載的實(shí)時(shí)計(jì)費(fèi)系統(tǒng)故障為例進(jìn)行說(shuō)明。該案例屬于數(shù)據(jù)庫(kù)統(tǒng)計(jì)信息異常引發(fā)的故障。由于實(shí)時(shí)計(jì)費(fèi)系統(tǒng)的業(yè)務(wù)特性,在內(nèi)存數(shù)據(jù)庫(kù)中的統(tǒng)計(jì)信息與業(yè)務(wù)表的實(shí)際數(shù)據(jù)量偏差大于30%的情況下將會(huì)出現(xiàn)異常,繼而引發(fā)業(yè)務(wù)系統(tǒng)故障。

本案例共分為2個(gè)事件,第一個(gè)是CPU使用率,第二個(gè)是離線話單率,以下結(jié)合圖4來(lái)闡述具體的實(shí)現(xiàn)方法。

(1)將故障現(xiàn)象進(jìn)行分析、總結(jié),并轉(zhuǎn)化成事件監(jiān)控。

當(dāng)前已經(jīng)收集和整理了2個(gè)表象事件:

1)CPU使用率;

2)離線話單率。

(2)將事件表象的故障閾值進(jìn)行預(yù)設(shè)定,并隨后續(xù)業(yè)務(wù)運(yùn)行情況進(jìn)行優(yōu)化調(diào)整。

根據(jù)當(dāng)前表象事件,故障閾值的預(yù)設(shè)定如下:

1)CPU使用率預(yù)設(shè)定為80%,業(yè)務(wù)運(yùn)行正常的情況下,CPU使用率小于80%。

2)離線話單率預(yù)設(shè)定為10%,業(yè)務(wù)運(yùn)行正常的情況下,離線話單率小于10%。

(3)根據(jù)事件故障的發(fā)生進(jìn)行第一次智能處理。如果CPU使用率或離線話單率超過(guò)了預(yù)設(shè)閾值,在未做其他系統(tǒng)變更的情況下,可以確定為中間臨時(shí)表,統(tǒng)計(jì)收集不準(zhǔn)引發(fā)故障。立即進(jìn)行中間臨時(shí)表統(tǒng)計(jì)信息收集,中間臨時(shí)表數(shù)據(jù)一般小于30萬(wàn)行,故所需執(zhí)行時(shí)間較短,一般可在5分鐘之內(nèi)完成。

(4)完成了第一次智能處理5分鐘之后,再次對(duì)CPU使用率和離線話單率進(jìn)行統(tǒng)計(jì)分析。

(5)由于第一次處理只是完成了中間臨時(shí)表的統(tǒng)計(jì)收集,不排除業(yè)務(wù)突然對(duì)其他非臨時(shí)表做了大量的數(shù)據(jù)變更。因此,如果第一次處理后未能修復(fù)故障,則應(yīng)在此時(shí)立即實(shí)施全庫(kù)統(tǒng)計(jì)收集,進(jìn)行第二次的智能化處理。全庫(kù)統(tǒng)計(jì)收集一般會(huì)在30分鐘內(nèi)完成,但30分鐘的處理時(shí)長(zhǎng)對(duì)于實(shí)時(shí)計(jì)費(fèi)系統(tǒng)來(lái)說(shuō)仍不可接受,因此需要立即發(fā)出預(yù)警,通知運(yùn)維人員同步處理,縮短故障處理時(shí)間。

(6)在全庫(kù)統(tǒng)計(jì)收集完成之后,如果故障仍未解除,則可判斷故障由其他因素引發(fā),必須由維護(hù)人員介入處理,此時(shí)需要再次發(fā)出告警,并提高告警級(jí)別。

4 實(shí)踐效果分析

通過(guò)該方案在實(shí)時(shí)計(jì)費(fèi)系統(tǒng)運(yùn)維中的應(yīng)用,減小了故障發(fā)生的頻率,并且使故障的解決時(shí)間基本控制在5分鐘之內(nèi),相較于傳統(tǒng)的故障處理時(shí)長(zhǎng)減少了5倍以上。上述實(shí)時(shí)計(jì)費(fèi)系統(tǒng)沒有再次出現(xiàn)由于內(nèi)存數(shù)據(jù)庫(kù)統(tǒng)計(jì)信息異常等過(guò)往故障引發(fā)的長(zhǎng)時(shí)間業(yè)務(wù)中斷。

通過(guò)不斷的運(yùn)用、總結(jié)與完善,該方案的應(yīng)用使人力、物力及風(fēng)險(xiǎn)方面都得到了很好的控制,有效提高了系統(tǒng)的可用性。

從圖5的分析結(jié)果可以看出,2010年、2011年故障平均處理時(shí)長(zhǎng)在25分鐘~30分鐘,2012年開始推行本文提出的處理方法并不斷完善以后,同類故障處理時(shí)長(zhǎng)明顯下降。

5 結(jié)束語(yǔ)

本文以基于內(nèi)存數(shù)據(jù)庫(kù)的故障智能化處理方案應(yīng)用場(chǎng)景為例,介紹了該方案的實(shí)現(xiàn)原理以及處理流程,并針對(duì)方案涉及的核心功能模塊進(jìn)行了詳細(xì)闡述。通過(guò)分析一個(gè)基于TimesTen內(nèi)存數(shù)據(jù)庫(kù)的某實(shí)時(shí)計(jì)費(fèi)系統(tǒng)運(yùn)維實(shí)踐證明,采用該方案對(duì)業(yè)務(wù)系統(tǒng)的故障進(jìn)行實(shí)時(shí)監(jiān)控、智能判斷、自動(dòng)處理能夠有效提高數(shù)據(jù)庫(kù)及業(yè)務(wù)系統(tǒng)的穩(wěn)定性與業(yè)務(wù)連續(xù)性。本文的解決方案也可應(yīng)用于其他內(nèi)存數(shù)據(jù)庫(kù)產(chǎn)品的故障處理,為故障處理從人工處理向自動(dòng)化、智能化處理的思路轉(zhuǎn)變提供了參考。

參考文獻(xiàn):

[1] 王珊,肖艷芹,劉大為,等. 內(nèi)存數(shù)據(jù)庫(kù)關(guān)鍵技術(shù)研究[J]. 計(jì)算機(jī)應(yīng)用, 2007,27(10): 2353-2357.

[2] 蔡俠. 利用TimesTen內(nèi)存數(shù)據(jù)庫(kù)搭建高可用性的電信IT系統(tǒng)[J]. 福建電腦, 2012(6): 134-136.

[3] 曾超宇,李金香. Redis在高速緩存系統(tǒng)中的應(yīng)用[J]. 微型機(jī)與應(yīng)用, 2013,32(12): 11-13.

[4] 哈索, 亞歷山大 蔡爾. 內(nèi)存數(shù)據(jù)管理[M]. 2版. 北京: 清華大學(xué)出版社, 2012.

[5] 陸慧娟,徐展翼,高志剛,等. 嵌入式數(shù)據(jù)庫(kù)原理與應(yīng)用[M]. 北京: 清華大學(xué)出版社, 2013.

[6] 李國(guó)徽,楊進(jìn)才. 內(nèi)存數(shù)據(jù)庫(kù)查詢優(yōu)化[J]. 華中科技大學(xué)學(xué)報(bào), 2003,31(4): 21-23.

[7] 楊武軍,張繼榮. 內(nèi)存數(shù)據(jù)庫(kù)技術(shù)綜述[J]. 西安郵電學(xué)院學(xué)報(bào), 2005,10(3): 96-99.

[8] 劉云生,吳紹春. 一種實(shí)時(shí)內(nèi)存數(shù)據(jù)庫(kù)組織與管理方法[J]. 計(jì)算機(jī)研究與發(fā)展, 1998,35(5): 469-473.

[9] 楊艷,李煒,王純. 內(nèi)存數(shù)據(jù)庫(kù)在高速緩存方面的應(yīng)用[J]. 現(xiàn)代電信科技, 2011,41(12): 59-64.

[10] 甲骨文軟件系統(tǒng)有限公司. Oracle TimesTen In-Memory Database Documentation[EB/OL]. (2015-08-01)[2016-04-26]. http://docs.oracle.com/cd/E21901_01/index.html.

[11] 趙平華,劉金霞,齊宏鋼,等. 基于結(jié)構(gòu)相似的LTE上行跨層視頻優(yōu)化[J]. 網(wǎng)絡(luò)新媒體技術(shù), 2015,4(4): 41-46.