本發(fā)明涉及一種針對(duì)分布式服務(wù)集群系統(tǒng)數(shù)據(jù)更新的實(shí)時(shí)監(jiān)控裝置及方法。
背景技術(shù):
::當(dāng)今電子商務(wù)領(lǐng)域,越來(lái)越多的用戶通過(guò)使用搜索引擎查詢想要購(gòu)買的商品等,而用戶在使用過(guò)程中也不斷提升對(duì)搜索結(jié)果的要求,搜索結(jié)果必須符合用戶的搜索意圖且越來(lái)越精準(zhǔn),這也要求搜索引擎對(duì)于數(shù)據(jù)的更新越來(lái)越實(shí)時(shí)。與此同時(shí),搜索系統(tǒng)為了應(yīng)對(duì)用戶的海量搜索請(qǐng)求,普遍采用分布式集群的服務(wù)系統(tǒng)架構(gòu)。在實(shí)際中應(yīng)用集群系統(tǒng)時(shí),為便于對(duì)集群進(jìn)行管理維護(hù),需要能對(duì)構(gòu)成集群的各個(gè)結(jié)點(diǎn)以及相關(guān)設(shè)備的數(shù)據(jù)狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)控,以達(dá)到數(shù)據(jù)一致性的目的。數(shù)據(jù)更新異常的監(jiān)控有幾種常見(jiàn)的辦法,比如通過(guò)對(duì)搜索前端的異常顯示定位數(shù)據(jù)更新?tīng)顟B(tài),進(jìn)而捕捉到集群中數(shù)據(jù)未及時(shí)更新的機(jī)器?,F(xiàn)有技術(shù)一般所采用的方法的步驟如下:a)用戶使用搜索功能獲取商品結(jié)果;b)搜索結(jié)果頁(yè)商品信息(如價(jià)格、庫(kù)存)與單品頁(yè)信息不一致;c)查看搜索全量數(shù)據(jù)更新;d)查看搜索實(shí)時(shí)數(shù)據(jù)更新;e)若發(fā)現(xiàn)數(shù)據(jù)非最新,則判斷為數(shù)據(jù)更新異常。上述的現(xiàn)有技術(shù)存在的缺點(diǎn)如下:·數(shù)據(jù)更新異常只能通過(guò)搜索前端的結(jié)果數(shù)據(jù)不一致進(jìn)一步跟蹤發(fā)現(xiàn);·用戶對(duì)于價(jià)格及促銷相對(duì)敏感,實(shí)時(shí)數(shù)據(jù)未及時(shí)更新會(huì)使得用戶體驗(yàn)下降;·數(shù)據(jù)差異較大時(shí),引起用戶投訴,損失用戶。技術(shù)實(shí)現(xiàn)要素:在分布式服務(wù)集群系統(tǒng)中,各個(gè)節(jié)點(diǎn)的數(shù)據(jù)一致性,與用戶的服務(wù)體驗(yàn)密切相關(guān)。在當(dāng)前分布式集群服務(wù)的節(jié)點(diǎn)服務(wù)器數(shù)以百臺(tái)為單位來(lái)計(jì)量的情況下,如果各節(jié)點(diǎn)數(shù)據(jù)的一致性和有效性只能通過(guò)終端用戶的反饋來(lái)感知的話,顯然已不能滿足系統(tǒng)服務(wù)的監(jiān)控需求。為了解決上述現(xiàn)有技術(shù)所存在的問(wèn)題,為了提升服務(wù)體驗(yàn),本發(fā)明提供一種針對(duì)分布式服務(wù)集群系統(tǒng)數(shù)據(jù)更新的實(shí)時(shí)監(jiān)控裝置及方法,其針對(duì)分布式集群系統(tǒng)中的各節(jié)點(diǎn)數(shù)據(jù),可以實(shí)現(xiàn)主動(dòng)實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)的效果。本發(fā)明的針對(duì)分布式服務(wù)集群系統(tǒng)數(shù)據(jù)更新的實(shí)時(shí)監(jiān)控裝置,其包括:數(shù)據(jù)采集部,其通過(guò)分布式服務(wù)集群系統(tǒng)中各個(gè)節(jié)點(diǎn)的服務(wù)控制端口,實(shí)時(shí)獲取多種任務(wù)類型的更新信息;智能分析部,根據(jù)上述更新信息的不同任務(wù)類型,自動(dòng)選擇不同的分析算法,使得不同數(shù)據(jù)的異常判斷標(biāo)準(zhǔn)不同,并生成與各節(jié)點(diǎn)的數(shù)據(jù)更新相關(guān)的統(tǒng)計(jì)數(shù)據(jù);和分級(jí)報(bào)警部,根據(jù)在上述智能分析部中生成的統(tǒng)計(jì)數(shù)據(jù),進(jìn)行分級(jí)報(bào)警。本發(fā)明的針對(duì)分布式服務(wù)集群系統(tǒng)數(shù)據(jù)更新的實(shí)時(shí)監(jiān)控方法,包括以下步驟:解析步驟,從固定的配置文件中解析集群服務(wù)對(duì)外提供的域名、任務(wù)類型、各任務(wù)約束條件;采集步驟,根據(jù)上述解析步驟解析出的任務(wù)類型,分別調(diào)用該任務(wù)類型特有的數(shù)據(jù)采集和數(shù)據(jù)預(yù)處理過(guò)程,生成有效的數(shù)據(jù)更新時(shí)間信息;分析步驟,針對(duì)上述采集步驟中出現(xiàn)的不同任務(wù)類型,采用不同的分析算法,根據(jù)所生成的上述有效的數(shù)據(jù)更新時(shí)間信息以及任務(wù)所對(duì)應(yīng)的約束條件,生成與各節(jié)點(diǎn)的數(shù)據(jù)更新相關(guān)的統(tǒng)計(jì)數(shù)據(jù);和分級(jí)報(bào)警步驟,根據(jù)在上述分析步驟中生成的統(tǒng)計(jì)數(shù)據(jù),進(jìn)行分級(jí)報(bào)警。發(fā)明的效果根據(jù)本發(fā)明所提供的實(shí)時(shí)監(jiān)控分布式集群系統(tǒng)中各節(jié)點(diǎn)數(shù)據(jù)有效性 和一致性的裝置和方法,能夠有效、快速地識(shí)別數(shù)據(jù)有問(wèn)題的服務(wù)節(jié)點(diǎn),從而在電商領(lǐng)域擁有巨大的價(jià)值。附圖說(shuō)明圖1是示意性表示本發(fā)明的針對(duì)分布式服務(wù)集群系統(tǒng)數(shù)據(jù)更新的實(shí)時(shí)監(jiān)控裝置的框架的圖。圖2是表示本發(fā)明的針對(duì)分布式服務(wù)集群系統(tǒng)數(shù)據(jù)更新的實(shí)時(shí)監(jiān)控方法的流程圖。具體實(shí)施方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,以下結(jié)合具體實(shí)施例,并參照附圖,對(duì)本發(fā)明進(jìn)一步詳細(xì)說(shuō)明。本發(fā)明是涉及的分布式系統(tǒng)各節(jié)點(diǎn)數(shù)據(jù)更新行為的實(shí)時(shí)監(jiān)控裝置及方法,其最重要特征在于,脫離人工工作,定期自動(dòng)采集分布式集群系統(tǒng)各節(jié)點(diǎn)數(shù)據(jù)更新信息,通過(guò)智能分析,對(duì)于異常的更新行為進(jìn)行分級(jí)報(bào)警,從而解決了傳統(tǒng)方式需要通過(guò)人工關(guān)注識(shí)別出數(shù)據(jù)更新異常后再上報(bào)所帶來(lái)的效率非常低下、不及時(shí)的問(wèn)題。下面,參照?qǐng)D1對(duì)本發(fā)明的實(shí)時(shí)監(jiān)控裝置進(jìn)行說(shuō)明。圖1是示意性表示本發(fā)明的針對(duì)分布式服務(wù)集群系統(tǒng)數(shù)據(jù)更新的實(shí)時(shí)監(jiān)控裝置100的框架的圖。本發(fā)明的實(shí)時(shí)監(jiān)控裝置100主要包括數(shù)據(jù)采集部101、智能分析部102和分級(jí)報(bào)警部103。數(shù)據(jù)采集部101通過(guò)分布式服務(wù)集群系統(tǒng)中各個(gè)節(jié)點(diǎn)1、2、3……n的服務(wù)控制端口,實(shí)時(shí)獲取多種任務(wù)類型數(shù)據(jù)的更新信息,對(duì)采集過(guò)程出現(xiàn)的多種異常進(jìn)行容錯(cuò)處理,提高準(zhǔn)確率,產(chǎn)出的數(shù)據(jù)格式如下:服務(wù)器啟動(dòng)時(shí)間:2016-03-2315:45:48上次全量更新數(shù)據(jù)的時(shí)間:2016-03-2316:20:10上次增量更新數(shù)據(jù)的時(shí)間:2016-03-2414:52:46上次敏感數(shù)據(jù)更新時(shí)間:2016-03-2414:53:19當(dāng)前全量:20160323000051最新inc:20160324145240最新co1flag:20160324145310最新commentcount_table:20160324145233最新ico_table:20160324145159最新redisprice:20160324145257最新salestate:20160324145239最新store_info:20160324145312智能分析部102根據(jù)不同任務(wù)類型,自動(dòng)選擇不同的分析算法,從而做到不同數(shù)據(jù)的異常判斷標(biāo)準(zhǔn)不同。任務(wù)類型分為全量數(shù)據(jù)、增量數(shù)據(jù)、多種敏感數(shù)據(jù)。針對(duì)全量數(shù)據(jù)更新,首先比較“上次全量更新數(shù)據(jù)的時(shí)間”與“當(dāng)前全量”是否為同一天數(shù)據(jù),如果不是則表明服務(wù)集群使用的并不是最新數(shù)據(jù),即數(shù)據(jù)更新異常;如果是同一天數(shù)據(jù),還要檢查“上次全量更新數(shù)據(jù)的時(shí)間”與當(dāng)前時(shí)間進(jìn)行對(duì)比,如果時(shí)間間隔超過(guò)該任務(wù)類型對(duì)應(yīng)的閾值,則表明在設(shè)定時(shí)間內(nèi)沒(méi)有更新,記為更新異常。針對(duì)增量更新,首先比較“上次增量更新數(shù)據(jù)的時(shí)間:”是否在“最新inc:”之后,如果不是則表明服務(wù)使用的不是最新數(shù)據(jù),更新異常;如果是則檢查“上次增量更新數(shù)據(jù)的時(shí)間”與當(dāng)前時(shí)間的間隔是否超過(guò)該任務(wù)類型對(duì)應(yīng)的閾值,如果超過(guò)則為異常。對(duì)于敏感數(shù)據(jù),由于敏感數(shù)據(jù)種類比較多,采用的策略是一致的,此處只介紹采用colflag,直接計(jì)算“最新colflag”與當(dāng)前時(shí)間的間隔,對(duì)比此間隔與該任務(wù)類型對(duì)應(yīng)的閾值來(lái)判斷是否異常。最后進(jìn)行綜合分析,根據(jù)上面的策略分析結(jié)果統(tǒng)計(jì)出各個(gè)集群各種數(shù)據(jù)更新異常的比例,根據(jù)數(shù)據(jù)倉(cāng)庫(kù)中記錄的各個(gè)節(jié)點(diǎn)的各種數(shù)據(jù)類型更新的時(shí)間和當(dāng)前時(shí)間計(jì)算出異常持續(xù)時(shí)間,綜合計(jì)算出異常的影響程度。最后這些節(jié)點(diǎn)的各種類型數(shù)據(jù)的更新時(shí)間會(huì)更新存儲(chǔ)倉(cāng)庫(kù)中的數(shù)據(jù),為監(jiān)控裝置下次運(yùn)行提供基礎(chǔ)數(shù)據(jù)。分級(jí)報(bào)警部103根據(jù)在智能分析部102中產(chǎn)出的統(tǒng)計(jì)數(shù)據(jù),進(jìn)行報(bào)警分級(jí)分析,例如,異常程度較重進(jìn)行短信報(bào)警,其他郵件報(bào)警。下面,參照?qǐng)D2對(duì)本發(fā)明的實(shí)時(shí)監(jiān)控方法進(jìn)行說(shuō)明。圖2是表示本發(fā)明的針對(duì)分布式服務(wù)集群系統(tǒng)數(shù)據(jù)更新的實(shí)時(shí)監(jiān)控方法的流程圖。圖2所示的實(shí)時(shí)監(jiān)控方法的各步驟如下。步驟s1:從固定的配置文件中解析集群服務(wù)對(duì)外提供的域名(不會(huì)發(fā)生變化),任務(wù)類型、各任務(wù)約束條件。步驟s2:監(jiān)控裝置動(dòng)態(tài)解析出各域名對(duì)應(yīng)的vip集合,再根據(jù)vip解析集群服務(wù)對(duì)應(yīng)的ip集合,自動(dòng)生成一份完整的配置文件。對(duì)上述完整的配置文件進(jìn)行正確性判斷,防止配置文件被篡改或者服務(wù)器硬件異常影響監(jiān)控準(zhǔn)確率。步驟s3:根據(jù)任務(wù)類型,分別調(diào)用該類型特有的數(shù)據(jù)采集和數(shù)據(jù)預(yù)處理過(guò)程,生成有效的數(shù)據(jù)更新時(shí)間信息。此處數(shù)據(jù)采集涵蓋多種容錯(cuò),如網(wǎng)絡(luò)異常、節(jié)點(diǎn)異常、數(shù)據(jù)異常等等。步驟s4:針對(duì)上一步驟中出現(xiàn)的不同任務(wù)類型,采用不同的分析算法,根據(jù)上一步驟中的有效的數(shù)據(jù)更新時(shí)間信息以及該任務(wù)對(duì)應(yīng)的約束條件,計(jì)算出各節(jié)點(diǎn)的各任務(wù)類型是否異常,最后匯總出各節(jié)點(diǎn)的數(shù)據(jù)更新是否異常、異常持續(xù)的時(shí)間及整個(gè)集群服務(wù)的異常程度,這些產(chǎn)出的統(tǒng)計(jì)數(shù)據(jù)統(tǒng)一存儲(chǔ)在數(shù)據(jù)倉(cāng)庫(kù)。步驟s5:根據(jù)上一步驟中產(chǎn)出的統(tǒng)計(jì)數(shù)據(jù),進(jìn)行報(bào)警分級(jí)分析,異常程度較重進(jìn)行短信報(bào)警,其他郵件報(bào)警。此處控制了報(bào)警頻率,保證一旦出現(xiàn)異常,會(huì)及時(shí)報(bào)警但不會(huì)出現(xiàn)報(bào)警災(zāi)難。以上五個(gè)步驟實(shí)施完畢之后,相關(guān)人員可以自動(dòng)收到數(shù)據(jù)更新報(bào)警的詳細(xì)匯總信息。根據(jù)報(bào)警詳情,由對(duì)應(yīng)人員主動(dòng)進(jìn)行修復(fù)。根據(jù)本發(fā)明的裝置和方法,能夠帶來(lái)下述的有益效果:(1)本發(fā)明能夠主動(dòng)地去監(jiān)控分布式系統(tǒng)中各節(jié)點(diǎn)數(shù)據(jù)的流動(dòng)情況,將原來(lái)被動(dòng)地由終端用戶反饋數(shù)據(jù)有效性和一致性的問(wèn)題,改為由本發(fā)明主動(dòng)監(jiān)控?cái)?shù)據(jù)有效性和一致性的問(wèn)題,并且可以觀察數(shù)據(jù)更新趨勢(shì);(2)以一個(gè)節(jié)點(diǎn)數(shù)在100臺(tái)的分布式服務(wù)集群的搜索系統(tǒng)為測(cè)算基準(zhǔn),每當(dāng)有一個(gè)節(jié)點(diǎn)出現(xiàn)數(shù)據(jù)更新問(wèn)題,就會(huì)有1%的由搜索帶來(lái)的訂單受影響。以單日6mv(grossmerchandisevolume,商品銷售總額)金額為2億元計(jì)算,則每當(dāng)及時(shí)發(fā)現(xiàn)一個(gè)服務(wù)節(jié)點(diǎn)數(shù)據(jù)故障,即可保障200萬(wàn)銷售額不受影響;(3)有效降低因?yàn)閿?shù)據(jù)原因造成的用戶體驗(yàn)下降而帶來(lái)的經(jīng)濟(jì)損失。由于現(xiàn)有技術(shù)都是被動(dòng)感知技術(shù),當(dāng)感知到問(wèn)題時(shí),該問(wèn)題已在用戶中大 面積發(fā)生。本發(fā)明可以有效及時(shí)地監(jiān)控到數(shù)據(jù)問(wèn)題的發(fā)生,在用戶感知前,就已通過(guò)報(bào)警通知到相關(guān)技術(shù)人員進(jìn)行處理。該發(fā)明可以有效地避免因數(shù)據(jù)問(wèn)題而帶來(lái)的用戶體驗(yàn)下降,阻止用戶流失,將負(fù)面影響降至最低。以上所述的具體實(shí)施例,對(duì)本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說(shuō)明,所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實(shí)施例而已,并不用于限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。當(dāng)前第1頁(yè)12當(dāng)前第1頁(yè)12