亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

支持海量數(shù)據(jù)實(shí)時(shí)處理的網(wǎng)絡(luò)分析系統(tǒng)和方法

文檔序號:7775136閱讀:988來源:國知局
支持海量數(shù)據(jù)實(shí)時(shí)處理的網(wǎng)絡(luò)分析系統(tǒng)和方法
【專利摘要】一種基于海量數(shù)據(jù)實(shí)時(shí)處理技術(shù)的網(wǎng)絡(luò)分析系統(tǒng)和方法,該系統(tǒng)包括多個(gè)數(shù)據(jù)適配節(jié)點(diǎn)和由分布式配置于網(wǎng)絡(luò)中的多個(gè)數(shù)據(jù)分析節(jié)點(diǎn)組成的數(shù)據(jù)分析集群,其中,數(shù)據(jù)分析節(jié)點(diǎn)支持P2P組網(wǎng)方式和負(fù)載均衡機(jī)制,使數(shù)據(jù)分析集群有伸縮功能;數(shù)據(jù)分析節(jié)點(diǎn)之間通過事件機(jī)制完成流水線式分析處理過程。本發(fā)明能實(shí)時(shí)分析和處理海量網(wǎng)絡(luò)數(shù)據(jù),包括進(jìn)行網(wǎng)絡(luò)故障監(jiān)測、統(tǒng)計(jì)、排查和診斷等操作。本發(fā)明能細(xì)微分析網(wǎng)絡(luò)數(shù)據(jù),并支持分布式動態(tài)擴(kuò)展來擴(kuò)充系統(tǒng)功能,用戶可通過自定義欲檢測的分析類型來擴(kuò)展自己的需求。再者,系統(tǒng)使用分布式架構(gòu),不需過度依賴單硬件性能,能更好地完成網(wǎng)絡(luò)數(shù)據(jù)分析等復(fù)雜邏輯的處理。且支持多種處理邏輯和降低開發(fā)人員的業(yè)務(wù)能力要求。
【專利說明】支持海量數(shù)據(jù)實(shí)時(shí)處理的網(wǎng)絡(luò)分析系統(tǒng)和方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種網(wǎng)絡(luò)管理技術(shù),確切的說,涉及ー種支持海量數(shù)據(jù)實(shí)時(shí)處理的網(wǎng)絡(luò)分析系統(tǒng)和方法,屬于網(wǎng)絡(luò)數(shù)據(jù)分析和網(wǎng)絡(luò)故障分析的【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002]近年來,中國的互聯(lián)網(wǎng)事業(yè)持續(xù)、快速地發(fā)展,網(wǎng)絡(luò)規(guī)模不斷擴(kuò)大,網(wǎng)絡(luò)技術(shù)推陳出新,網(wǎng)絡(luò)資源和業(yè)務(wù)應(yīng)用日益豐富,信息交流更加快捷、高效,互聯(lián)網(wǎng)的影響日益劇增。在促進(jìn)經(jīng)濟(jì)發(fā)展、推動社會進(jìn)步、提高人民生活質(zhì)量等方面,互聯(lián)網(wǎng)發(fā)揮著越來越重要的作用。
[0003]經(jīng)過十多年的發(fā)展,中國互聯(lián)網(wǎng)發(fā)展呈現(xiàn)出一派勃勃生機(jī)。在互聯(lián)網(wǎng)基礎(chǔ)與設(shè)施、運(yùn)營模式及服務(wù)品種與質(zhì)量等各方面都取得長足的進(jìn)展?;ヂ?lián)網(wǎng)在中國的應(yīng)用更加豐富多彩,以Web2.0為特征的博客、社交網(wǎng)絡(luò)服務(wù)或網(wǎng)絡(luò)社交平臺SNS (Social NetworkingService)、簡易信息聚合RSS(Rich Site Summary)、分類信息、點(diǎn)對點(diǎn)P2P連接技術(shù)等新業(yè)務(wù)和經(jīng)營模式都成長迅速,互聯(lián)網(wǎng)正朝著更加個(gè)性化和增強(qiáng)互動的方向發(fā)展。
[0004]與此同時(shí),互聯(lián)網(wǎng)加快向傳統(tǒng)行業(yè)和服務(wù)領(lǐng)域的滲透。垂直門戶個(gè)人網(wǎng)站迅速成長,電子商務(wù)應(yīng)用己經(jīng)從面向個(gè)人拓展到面向企業(yè),尤其是傳統(tǒng)企業(yè)。互聯(lián)網(wǎng)的滲透為傳統(tǒng)行業(yè)提供了更多的發(fā)展機(jī)遇,為建設(shè)創(chuàng)新型國家發(fā)揮著越來越大的作用。同時(shí)對于大部分企業(yè)用戶來說,企業(yè)內(nèi)部網(wǎng)的管理問題也逐漸引起人們的重視。
[0005]中國國內(nèi)的企業(yè)內(nèi)部網(wǎng)近年來逐漸形成路由器、防火墻、交換機(jī)和服務(wù)器為主要構(gòu)件模式的架構(gòu)。在為互聯(lián)網(wǎng)作用日益突出而感嘆的同時(shí),又深深地為不斷涌現(xiàn)的新的問題、新的漏洞所困擾。
[0006]網(wǎng)絡(luò)中的問題及威脅主要有下述四種:(1)網(wǎng)絡(luò)不明原因的擁塞、丟包和拒絕。
(2)網(wǎng)絡(luò)設(shè)備不可用導(dǎo)致的網(wǎng)絡(luò)服務(wù)故障。(3)非授權(quán)訪問。(4)錯誤路由。所以,針對不同種類的安全威脅,需要采用不同的管理監(jiān)視措施。
[0007]傳統(tǒng)監(jiān)視軟件,例如:NETSC0UT公司推出的 Sniffer Adaptive ApplicationAnalyzer和ー款開源的網(wǎng)絡(luò)分組分析軟件WireShark,國內(nèi)也有ー些公司開發(fā)了相關(guān)產(chǎn)品(包括科來軟件公司開發(fā)的科來網(wǎng)絡(luò)分析系統(tǒng)等),可以對被監(jiān)控系統(tǒng)提供一系列監(jiān)視和告警反饋的工作。但是,在其應(yīng)用領(lǐng)域都有相應(yīng)的局限性。當(dāng)網(wǎng)絡(luò)帶寬增加、網(wǎng)絡(luò)數(shù)據(jù)流量特別大時(shí),傳統(tǒng)網(wǎng)絡(luò)監(jiān)視軟件就會達(dá)到其功能上限,無法實(shí)現(xiàn)實(shí)時(shí)的監(jiān)視任務(wù)。
[0008]另外,傳統(tǒng)網(wǎng)絡(luò)監(jiān)視軟件還存在下述三個(gè)不足之處:
[0009](I)網(wǎng)絡(luò)數(shù)據(jù)的分析類型少:通常,網(wǎng)絡(luò)監(jiān)視分析軟件能夠檢測,支持的網(wǎng)絡(luò)分析數(shù)據(jù)類型基本都是通用類型,而且種類少。但是,企業(yè)網(wǎng)絡(luò)自身的網(wǎng)絡(luò)架構(gòu)是跟自身的業(yè)務(wù)、工作有緊密關(guān)系,可能產(chǎn)生的網(wǎng)絡(luò)數(shù)據(jù)的分析需求也不盡相同。而且,傳統(tǒng)網(wǎng)絡(luò)監(jiān)視軟件無法實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)分析類型的定制。
[0010](2)分析定位不精確:例如Sniffer在處理被監(jiān)視網(wǎng)絡(luò)數(shù)據(jù)流向的定位問題時(shí),只能顯示源數(shù)據(jù)端到目的數(shù)據(jù)端之間的連線。而客戶往往更加關(guān)心數(shù)據(jù)經(jīng)過的所有路徑。而在監(jiān)視網(wǎng)絡(luò)中的交換機(jī)CPU利用率、內(nèi)存利用率等信息時(shí),最高只能統(tǒng)計(jì)最近幾分鐘內(nèi)的平均值等,不能反映實(shí)時(shí)的網(wǎng)絡(luò)狀態(tài)。
[0011](3)大都無法實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)分析:目前的主流網(wǎng)絡(luò)監(jiān)視軟件都提供數(shù)據(jù)抓取功能,但是,都無法對獲得的數(shù)據(jù)進(jìn)行實(shí)時(shí)處理;大多是通過對數(shù)據(jù)進(jìn)行緩存,然后再進(jìn)行離線的數(shù)據(jù)分析。
[0012]再介紹三種與網(wǎng)絡(luò)數(shù)據(jù)分析相關(guān)的現(xiàn)有技術(shù)方案的實(shí)現(xiàn)方式及其缺陷:
[0013]方案一:通過交換機(jī)提供的簡單網(wǎng)絡(luò)管理協(xié)議SNMP(Simple Network ManagementProtocol)統(tǒng)計(jì)數(shù)據(jù)進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)分析。
[0014]其實(shí)施方案是:應(yīng)用程序通過SNMP協(xié)議,獲取交換機(jī)的統(tǒng)計(jì)信息,然后根據(jù)這些統(tǒng)計(jì)信息對網(wǎng)絡(luò)狀態(tài)進(jìn)行宏觀分析,完成數(shù)據(jù)分析和故障診斷等操作。
[0015]該技術(shù)方案里然可以分析網(wǎng)絡(luò)的擁塞,丟包等宏觀情況,但是,其主要依賴于交換機(jī)提供的信息與功能,用戶能夠調(diào)整的幅度很小;再者,其反映的主要是網(wǎng)絡(luò)宏觀情況,無法對特定的數(shù)據(jù)流和特定數(shù)據(jù)的傳輸狀況進(jìn)行分析和監(jiān)控。例如:可能整體網(wǎng)絡(luò)丟包率非常低,但是其在特定端ロ的丟包卻很高,而且,該特定端ロ的數(shù)據(jù)流只占整個(gè)網(wǎng)絡(luò)的很小一部分。所以該方案無法完成這種網(wǎng)絡(luò)分析任務(wù)。
[0016]方案ニ:通過網(wǎng)絡(luò)抓包軟件(又稱嗅探器Sniffer)進(jìn)行分析。
[0017]其實(shí)施方案是:通過Sniffer軟件抓包,用戶根據(jù)抓到的數(shù)據(jù),通過設(shè)置過濾規(guī)則來查找所需要的數(shù)據(jù),并分析網(wǎng)絡(luò)狀況。由于其分析工作主要由人工完成,效率低;而且,分析模式已在程序里定義好,用戶很難自定義。
[0018]雖然使用Sniffer軟件進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)分析的方法,可以實(shí)現(xiàn)監(jiān)視特定的數(shù)據(jù)流,但是其分析模式是固定的,用戶很難自定義。而且,它是單機(jī)軟件,分析和處理效率有限,還無法動態(tài)擴(kuò)展,對于千兆網(wǎng)絡(luò)就已無法支持,只能等待版本更新??傊?,其功能和性能有很大局限性。
[0019]方案三:采用深度包檢測DPI (Deep Packet Inspection)技術(shù)進(jìn)行分析。
[0020]其實(shí)施方案是:通過深入讀取IP包的內(nèi)容,對應(yīng)用層信息進(jìn)行重組,從而得到整個(gè)應(yīng)用程序的內(nèi)容,然后按照系統(tǒng)定義的管理策略對流量進(jìn)行整形操作。
[0021]該技術(shù)方案因?yàn)橐С执罅髁康臄?shù)據(jù),一般通過挖掘硬件本身性能來實(shí)現(xiàn),因此對于復(fù)雜的處理邏輯支持性不好,而且對于開發(fā)人員的技能要求高。另外,DPI主要面向流量管理、網(wǎng)絡(luò)安全等用途,對于網(wǎng)絡(luò)數(shù)據(jù)分析能力還是有欠缺。
[0022]綜上所述,現(xiàn)有技術(shù)還存在諸多需要解決的下述技術(shù)問題:如何架構(gòu)能夠滿足分布式系統(tǒng)動態(tài)擴(kuò)展的要求的海量數(shù)據(jù)實(shí)時(shí)處理平臺,以及解決該分布式系統(tǒng)中節(jié)點(diǎn)的伸縮和動態(tài)管理問題。如何使得用戶能夠方便地自定義需要分析的數(shù)據(jù)類型。如何盡可能多地支持網(wǎng)絡(luò)數(shù)據(jù)分析的類型,以及如何設(shè)計(jì)能夠滿足可擴(kuò)展、支持多類型網(wǎng)絡(luò)數(shù)據(jù)分析需求的網(wǎng)絡(luò)數(shù)據(jù)分析系統(tǒng)。這些問題都成為業(yè)內(nèi)科技人員關(guān)注和急需解決的焦點(diǎn)。

【發(fā)明內(nèi)容】

[0023]有鑒于此,本發(fā)明的目的是提供ー種支持海量數(shù)據(jù)實(shí)時(shí)處理的網(wǎng)絡(luò)數(shù)據(jù)分析系統(tǒng)和方法,本發(fā)明能夠?qū)崿F(xiàn)對海量的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行實(shí)時(shí)分析和處理,包括對其進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)分析和其他數(shù)據(jù)分析的功能。本發(fā)明能夠更細(xì)微地分析網(wǎng)絡(luò)數(shù)據(jù),并支持分布式動態(tài)擴(kuò)展來擴(kuò)充系統(tǒng)功能,而且,用戶可通過自定義欲進(jìn)行的數(shù)據(jù)分析方式,來擴(kuò)展自己的需求。再者,本發(fā)明系統(tǒng)使用分布式架構(gòu),不需要過度依賴單硬件性能,能夠更好地完成網(wǎng)絡(luò)數(shù)據(jù)分析等復(fù)雜邏輯的處理。而且,系統(tǒng)支持多種處理邏輯開發(fā),對于開發(fā)人員的業(yè)務(wù)能力要求有所降低。
[0024]為了達(dá)到上述目的,本發(fā)明提供了一種基于海量數(shù)據(jù)實(shí)時(shí)處理技術(shù)的網(wǎng)絡(luò)分析系統(tǒng),其特征在于:該系統(tǒng)包括:多個(gè)數(shù)據(jù)適配節(jié)點(diǎn)和由多個(gè)數(shù)據(jù)分析節(jié)點(diǎn)組成的數(shù)據(jù)分析集群,其中:
[0025]數(shù)據(jù)適配節(jié)點(diǎn),用于獲取被管理的外部網(wǎng)絡(luò)中的數(shù)據(jù),并利用數(shù)據(jù)適配功能將所有輸入到數(shù)據(jù)分析集群、需要實(shí)時(shí)分析的數(shù)據(jù)適配轉(zhuǎn)換為數(shù)據(jù)分析集群內(nèi)部能夠解析和通信的事件,并將該事件初次分發(fā)到數(shù)據(jù)分析集群中的各個(gè)數(shù)據(jù)分析節(jié)點(diǎn),實(shí)現(xiàn)初次分發(fā)的負(fù)載均衡;同時(shí),數(shù)據(jù)分析集群處理后的結(jié)果,也以事件方式發(fā)送到數(shù)據(jù)適配節(jié)點(diǎn),由其利用數(shù)據(jù)適配功能將其轉(zhuǎn)換適配為對外通信的數(shù)據(jù)格式后向外輸出,或轉(zhuǎn)發(fā)給數(shù)據(jù)庫、日志或圖形界面進(jìn)行后期記錄或顯示;該數(shù)據(jù)適配節(jié)點(diǎn)的輸入信息為外部網(wǎng)絡(luò)的所有數(shù)據(jù)、數(shù)據(jù)分析請求、中間事件或最后結(jié)果事件,輸出信息則根據(jù)需要適配為對數(shù)據(jù)庫、日志和圖形界面的存儲操作、對Web Service接ロ的通信操作或發(fā)送設(shè)定格式的網(wǎng)絡(luò)數(shù)據(jù);
[0026]數(shù)據(jù)分析集群,由作為該系統(tǒng)完成網(wǎng)絡(luò)數(shù)據(jù)分析核心功能、呈分布式配置于網(wǎng)絡(luò)中的多個(gè)數(shù)據(jù)分析節(jié)點(diǎn)所組成,這些數(shù)據(jù)分析節(jié)點(diǎn)負(fù)責(zé)對數(shù)據(jù)進(jìn)行實(shí)時(shí)的故障監(jiān)測、分析、統(tǒng)計(jì)、排查和診斷的操作,并將處理結(jié)果發(fā)送到數(shù)據(jù)適配節(jié)點(diǎn),或數(shù)據(jù)庫、日志和圖形界面,以供后期處理;數(shù)據(jù)分析節(jié)點(diǎn)支持P2P組網(wǎng)方式和負(fù)載均衡機(jī)制,以使該數(shù)據(jù)分析集群具有伸縮功能:若要調(diào)整其處理能力時(shí),只需直接添加或減少數(shù)據(jù)分析節(jié)點(diǎn)數(shù)量即可;各個(gè)數(shù)據(jù)分析節(jié)點(diǎn)之間基于事件通信完成流水線式的分析處理過程。
[0027]為了達(dá)到上述目的,本發(fā)明還提供了一種基于海量數(shù)據(jù)實(shí)時(shí)處理技術(shù)的網(wǎng)絡(luò)分析系統(tǒng)的工作方法,其特征在于:該方法為流水線式的作業(yè)方式,包括下列操作步驟:
[0028](I)數(shù)據(jù)適配節(jié)點(diǎn)的數(shù)據(jù)收發(fā)模塊抓取到外網(wǎng)數(shù)據(jù)時(shí),就從數(shù)據(jù)處理容器模塊中尋找處理該數(shù)據(jù)的數(shù)據(jù)適配實(shí)例,由數(shù)據(jù)適配實(shí)例將該外網(wǎng)數(shù)據(jù)匹配轉(zhuǎn)換為數(shù)據(jù)分析節(jié)點(diǎn)能夠處理的事件后,事件收發(fā)模塊調(diào)用節(jié)點(diǎn)管理模塊的可用節(jié)點(diǎn)信息列表,再基于一致性hash的平衡路由機(jī)制選擇適宜的數(shù)據(jù)分析節(jié)點(diǎn)分發(fā)事件,即將該事件轉(zhuǎn)發(fā)給數(shù)據(jù)分析節(jié)點(diǎn)進(jìn)行處理;且本次分發(fā)事件不執(zhí)行本地優(yōu)先的事件分發(fā)策略;
[0029](2)數(shù)據(jù)分析節(jié)點(diǎn)的事件收發(fā)模塊對接收到的事件進(jìn)行解析,數(shù)據(jù)處理容器模塊根據(jù)該事件的類型和特征值尋找調(diào)用數(shù)據(jù)分析實(shí)例,由數(shù)據(jù)分析實(shí)例處理該事件;完成數(shù)據(jù)分析、故障監(jiān)測、統(tǒng)計(jì)處理操作后,將處理結(jié)果封裝為ー個(gè)或多個(gè)新事件,由事件收發(fā)模塊為每個(gè)新事件分別選擇分發(fā)給下ー節(jié)點(diǎn);
[0030](3)事件收發(fā)模塊在分發(fā)事件時(shí),根據(jù)節(jié)點(diǎn)管理模塊提供的可用節(jié)點(diǎn)信息列表,根據(jù)本地優(yōu)先和一致性hash的平衡路由機(jī)制的事件分發(fā)策略,再結(jié)合各節(jié)點(diǎn)的可用狀態(tài)和負(fù)載率,將新事件轉(zhuǎn)發(fā)給本節(jié)點(diǎn)處理,或者從所有能夠處理該新事件的其他節(jié)點(diǎn)集合中,選擇并分發(fā)給適宜的ー個(gè)目的節(jié)點(diǎn)進(jìn)行處理;
[0031](4)各個(gè)數(shù)據(jù)分析節(jié)點(diǎn)循環(huán)執(zhí)行上述步驟(2)和(3),即對事件執(zhí)行流水線式的處理,直至完成全部處理過程后,將產(chǎn)生的最終結(jié)果事件轉(zhuǎn)發(fā)給能夠匹配處理該類事件的數(shù)據(jù)適配節(jié)點(diǎn);[0032](5)數(shù)據(jù)適配節(jié)點(diǎn)的事件收發(fā)模塊將接收的最終結(jié)果事件交給數(shù)據(jù)處理容器模塊,數(shù)據(jù)處理容器模塊根據(jù)結(jié)果事件特征值查找與調(diào)用數(shù)據(jù)適配實(shí)例,將該結(jié)果事件轉(zhuǎn)換為外網(wǎng)數(shù)據(jù)格式,再由數(shù)據(jù)收發(fā)模塊轉(zhuǎn)發(fā)給相應(yīng)的外網(wǎng),以便對該結(jié)果事件完成后期處理。
[0033]本發(fā)明支持海量數(shù)據(jù)實(shí)時(shí)處理的網(wǎng)絡(luò)分析系統(tǒng)和方法的創(chuàng)新技術(shù)是:采用基于“流水線”思路、并結(jié)合P2P技術(shù)和事件處理機(jī)制對網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行分析,該系統(tǒng)與“流水線”的生產(chǎn)方式相類似,每個(gè)數(shù)據(jù)分析流程是由多個(gè)各自相對獨(dú)立的數(shù)據(jù)分析邏輯組成的數(shù)據(jù)分析邏輯鏈逐步完成的,各個(gè)數(shù)據(jù)分析邏輯之間通過統(tǒng)ー的事件機(jī)制實(shí)現(xiàn)通信并完成數(shù)據(jù)分析,即由數(shù)據(jù)分析邏輯接收待分析事件,進(jìn)行分析、產(chǎn)生并分發(fā)中間處理過程產(chǎn)生的新事件。也就是說,整個(gè)數(shù)據(jù)分析流程通過事件在數(shù)據(jù)分析邏輯鏈中的不斷“流動”來完成。各數(shù)據(jù)分析邏輯分布在同一或多個(gè)數(shù)據(jù)分析節(jié)點(diǎn)上,所有節(jié)點(diǎn)共同組成整個(gè)分析集群。各個(gè)節(jié)點(diǎn)采用P2P方式來組織,因此使得本發(fā)明系統(tǒng)的數(shù)據(jù)分析集群中的節(jié)點(diǎn)動態(tài)伸縮很便利。
[0034]與相關(guān)的現(xiàn)有技術(shù)相比較,本發(fā)明系統(tǒng)和方法具有如下優(yōu)點(diǎn):本發(fā)明系統(tǒng)可以從更加微觀的角度去分析網(wǎng)絡(luò)的狀態(tài),可以支持分布式的動態(tài)擴(kuò)展來擴(kuò)充系統(tǒng)功能,而且,用戶可以通過自定義欲檢測的數(shù)據(jù)分析類型,來擴(kuò)展自己的需求。本發(fā)明系統(tǒng)使用分布式的架構(gòu),故不需要過度依賴單硬件性能,能夠更好地完成網(wǎng)絡(luò)數(shù)據(jù)分析等復(fù)雜邏輯的處理。而且,系統(tǒng)支持多種處理邏輯開發(fā),對于開發(fā)人員的業(yè)務(wù)能力要求有所降低。
[0035]另外,本發(fā)明系統(tǒng)對網(wǎng)絡(luò)數(shù)據(jù)的實(shí)時(shí)分析和處理功能的特點(diǎn)如下:
[0036](I)每個(gè)數(shù)據(jù)較小,通常只有幾百字節(jié),上限通常不超過4K字節(jié)。
[0037](2)數(shù)據(jù)數(shù)量非常多,按每個(gè)數(shù)據(jù)包IKB字節(jié)、網(wǎng)絡(luò)流量100MB/秒為例,毎秒需要處理的數(shù)據(jù)包至少有10萬個(gè)。而實(shí)際網(wǎng)絡(luò)(特別是骨干網(wǎng))中的流量通常大于100MB/秒,因此每秒需要處理海量的數(shù)據(jù)。
[0038](3)分析和處理操作的實(shí)時(shí)性要求很高。具體的實(shí)時(shí)性要求要根據(jù)應(yīng)用場景而定。例如,對于網(wǎng)絡(luò)傳輸過程中的數(shù)據(jù)分析,通常都要求在異常產(chǎn)生后的很短時(shí)間(例如:秒級甚至毫秒級)內(nèi)分析出來,這樣才能快速完成故障處理和恢復(fù)正常,降低故障影響和代價(jià)。
【專利附圖】

【附圖說明】
[0039]圖1是本發(fā)明基于海量數(shù)據(jù)實(shí)時(shí)處理技術(shù)的網(wǎng)絡(luò)分析系統(tǒng)部署在網(wǎng)絡(luò)中的狀況圖。
[0040]圖2 (A)和(B)分別是本發(fā)明網(wǎng)絡(luò)分析系統(tǒng)中的數(shù)據(jù)適配節(jié)點(diǎn)和數(shù)據(jù)分析節(jié)點(diǎn)結(jié)構(gòu)組成圖。
[0041]圖3是本發(fā)明系統(tǒng)中的數(shù)據(jù)分析節(jié)點(diǎn)采用流水線作業(yè)方式的示意圖。
[0042]圖4是發(fā)明基于海量數(shù)據(jù)實(shí)時(shí)處理技術(shù)的網(wǎng)絡(luò)分析系統(tǒng)工作方法流程圖。
[0043]圖5是本發(fā)明系統(tǒng)中的數(shù)據(jù)適配節(jié)點(diǎn)的操作步驟時(shí)序圖。
[0044]圖6是本發(fā)明系統(tǒng)中的數(shù)據(jù)分析節(jié)點(diǎn)的操作步驟時(shí)序圖。
【具體實(shí)施方式】
[0045]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖對本發(fā)明作進(jìn)ー步的詳細(xì)描述。
[0046]參見圖1,介紹本發(fā)明基于海量數(shù)據(jù)實(shí)時(shí)處理技術(shù)的網(wǎng)絡(luò)分析系統(tǒng)網(wǎng)絡(luò)部署和總體結(jié)構(gòu)組成情況:該系統(tǒng)設(shè)有:多個(gè)數(shù)據(jù)適配節(jié)點(diǎn)和由多個(gè)數(shù)據(jù)分析節(jié)點(diǎn)組成的數(shù)據(jù)分析集群,用于對外部網(wǎng)絡(luò)進(jìn)行監(jiān)測和數(shù)據(jù)分析。其中:
[0047]數(shù)據(jù)適配節(jié)點(diǎn):用于連接至被管理的外部網(wǎng)絡(luò)的相應(yīng)位置,獲取外部網(wǎng)絡(luò)中的數(shù)據(jù),并利用數(shù)據(jù)適配功能將所有輸入到數(shù)據(jù)分析集群、需要實(shí)時(shí)分析的數(shù)據(jù)適配轉(zhuǎn)換為數(shù)據(jù)分析集群內(nèi)部能夠解析和通信的事件,并將該事件初次分發(fā)到數(shù)據(jù)分析集群中的各個(gè)數(shù)據(jù)分析節(jié)點(diǎn),實(shí)現(xiàn)初次分發(fā)的負(fù)載均衡;同時(shí),數(shù)據(jù)分析集群處理后的結(jié)果,也以事件方式發(fā)送到數(shù)據(jù)適配節(jié)點(diǎn),由其利用數(shù)據(jù)適配功能將其轉(zhuǎn)換適配為對外通信的數(shù)據(jù)格式后向外輸出,或轉(zhuǎn)發(fā)給數(shù)據(jù)庫、日志或圖形界面進(jìn)行后期記錄或顯示;該數(shù)據(jù)適配節(jié)點(diǎn)的輸入信息為外部網(wǎng)絡(luò)的所有數(shù)據(jù)、數(shù)據(jù)分析請求、中間事件或最后結(jié)果事件,輸出信息則根據(jù)需要適配為對數(shù)據(jù)庫、日志和圖形界面的存儲操作、對Web Service接ロ的通信操作或發(fā)送設(shè)定格式的網(wǎng)絡(luò)數(shù)據(jù)。
[0048]數(shù)據(jù)分析集群:由作為該系統(tǒng)完成網(wǎng)絡(luò)數(shù)據(jù)分析核心功能、呈分布式配置于網(wǎng)絡(luò)中的多個(gè)數(shù)據(jù)分析節(jié)點(diǎn)所組成,這些數(shù)據(jù)分析節(jié)點(diǎn)負(fù)責(zé)對數(shù)據(jù)進(jìn)行實(shí)時(shí)的故障監(jiān)測、分析、統(tǒng)計(jì)、排查和診斷的操作,并將處理結(jié)果發(fā)送到數(shù)據(jù)適配節(jié)點(diǎn),或數(shù)據(jù)庫、日志和圖形界面,以供后期處理;數(shù)據(jù)分析節(jié)點(diǎn)支持P2P組網(wǎng)方式和負(fù)載均衡機(jī)制,以使該數(shù)據(jù)分析集群具有伸縮功能:若要調(diào)整其處理能力時(shí),只需直接添加或減少數(shù)據(jù)分析節(jié)點(diǎn)數(shù)量即可;數(shù)據(jù)分析節(jié)點(diǎn)之間基于事件通信完成流水線式的分析處理過程。
[0049]參見圖2,介紹本發(fā)明系統(tǒng)內(nèi)的數(shù)據(jù)適配節(jié)點(diǎn)和數(shù)據(jù)分析節(jié)點(diǎn)的結(jié)構(gòu)組成:
[0050]這兩種節(jié)點(diǎn)都設(shè)有通信層、邏輯層和容器層。先介紹其中構(gòu)成節(jié)點(diǎn)公共基礎(chǔ)結(jié)構(gòu)的通信層和容器層。該節(jié)點(diǎn)公共基礎(chǔ)結(jié)構(gòu)中的功能模塊,除去數(shù)據(jù)適配節(jié)點(diǎn)在通信層專設(shè)其特有的數(shù)據(jù)收發(fā)模塊以外,其余包括通信層中的節(jié)點(diǎn)管理模塊和事件收發(fā)模塊,容器層中的數(shù)據(jù)處理容器模塊、邏輯管理模塊都是數(shù)據(jù)適配節(jié)點(diǎn)和數(shù)據(jù)分析節(jié)點(diǎn)共同設(shè)置的,且兩者的上述模塊的結(jié)構(gòu)與功能都相同。
[0051]節(jié)點(diǎn)公共基礎(chǔ)結(jié)構(gòu)的通信層設(shè)有節(jié)點(diǎn)管理模塊和事件收發(fā)模塊,用于完成節(jié)點(diǎn)間通信功能。數(shù)據(jù)適配節(jié)點(diǎn)的通信層還包含數(shù)據(jù)收發(fā)模塊;這三種模塊的功能分別說明如下:
[0052]節(jié)點(diǎn)管理模塊:通過P2P技術(shù)監(jiān)聽周圍節(jié)點(diǎn)的廣播信號來發(fā)現(xiàn)新節(jié)點(diǎn),并測試新節(jié)點(diǎn)連通性,檢查現(xiàn)有節(jié)點(diǎn)的負(fù)載與可用性,更新和維護(hù)各自節(jié)點(diǎn)的可用節(jié)點(diǎn)信息列表,采集數(shù)據(jù)分析集群中各節(jié)點(diǎn)的負(fù)載信息,為事件收發(fā)模塊完成事件分發(fā)功能提供支持。
[0053]事件收發(fā)模塊:用于完成事件接收和分發(fā):每個(gè)節(jié)點(diǎn)配置各自接收的事件類型,并只接收和處理該類型事件,但節(jié)點(diǎn)對外發(fā)送的事件類型不受限制;事件收發(fā)模塊接收到來自于本模塊、本節(jié)點(diǎn)或其他節(jié)點(diǎn)的事件吋,將接收到的事件分別交由數(shù)據(jù)處理容器模塊中的數(shù)據(jù)適配實(shí)例或數(shù)據(jù)分析實(shí)例進(jìn)行處理;而接收到來自本節(jié)點(diǎn)的數(shù)據(jù)適配實(shí)例或數(shù)據(jù)分析實(shí)例的中間事件吋,則根據(jù)事件類型和節(jié)點(diǎn)管理模塊產(chǎn)生的可用節(jié)點(diǎn)列表和負(fù)載信息,將該中間事件以ー對一或ー對多方式選擇轉(zhuǎn)發(fā)給本模塊、ー個(gè)或多個(gè)其他節(jié)點(diǎn);選擇方法是遵從本地優(yōu)先和基于一致性Hash的平衡路由機(jī)制。
[0054]數(shù)據(jù)收發(fā)模塊:為數(shù)據(jù)適配節(jié)點(diǎn)的專有模塊,用于監(jiān)聽與接收外網(wǎng)數(shù)據(jù):將接收到的外網(wǎng)數(shù)據(jù)交給數(shù)據(jù)處理容器模塊中相應(yīng)的數(shù)據(jù)適配實(shí)例,進(jìn)行數(shù)據(jù)到事件的適配處理;以及將系統(tǒng)內(nèi)部處理結(jié)果對外輸出:接收到本系統(tǒng)的分析處理結(jié)果,即來自于數(shù)據(jù)適配實(shí)例的最終結(jié)果數(shù)據(jù)時(shí),將該最終結(jié)果數(shù)據(jù)發(fā)送到相應(yīng)的外網(wǎng)。
[0055]本發(fā)明數(shù)據(jù)適配節(jié)點(diǎn)和數(shù)據(jù)分析節(jié)點(diǎn)的節(jié)點(diǎn)公共基礎(chǔ)結(jié)構(gòu)的容器層負(fù)責(zé)管理和維護(hù)多種編程語言開發(fā)的處理邏輯,以及處理邏輯所產(chǎn)生的具體實(shí)例。這兩種節(jié)點(diǎn)的兩個(gè)容器層分別管理各自的數(shù)據(jù)分析實(shí)例和數(shù)據(jù)適配實(shí)例。
[0056]容器層設(shè)有:數(shù)據(jù)處理容器模塊、邏輯管理模塊;其中:
[0057]數(shù)據(jù)處理容器模塊,負(fù)責(zé)統(tǒng)一維護(hù)多種處理邏輯實(shí)例,為已創(chuàng)建的邏輯實(shí)例提供管理容器,并在邏輯實(shí)例結(jié)束執(zhí)行后對其進(jìn)行刪除;當(dāng)數(shù)據(jù)收發(fā)模塊接收外網(wǎng)數(shù)據(jù)或事件收發(fā)模塊接收到事件時(shí),都從數(shù)據(jù)處理容器模塊獲取相應(yīng)的邏輯實(shí)例對數(shù)據(jù)或事件進(jìn)行處理;此時(shí),若已有邏輯實(shí)例能對數(shù)據(jù)或事件進(jìn)行處理,則提供該邏輯實(shí)例;否則,由邏輯管理模塊分別創(chuàng)建各自新的邏輯實(shí)例;
[0058]邏輯管理模塊,用于根據(jù)需要加載不同類型的處理邏輯,生成用于數(shù)據(jù)和事件的適配功能和分析功能的數(shù)據(jù)適配實(shí)例和數(shù)據(jù)分析實(shí)例等處理邏輯實(shí)例,然后將數(shù)據(jù)分析實(shí)例或數(shù)據(jù)適配實(shí)例注入到數(shù)據(jù)處理容器模塊。
[0059]數(shù)據(jù)分析節(jié)點(diǎn)是該網(wǎng)絡(luò)數(shù)據(jù)分析系統(tǒng)完成網(wǎng)絡(luò)數(shù)據(jù)分析的關(guān)鍵節(jié)點(diǎn);其通信層與容器層的結(jié)構(gòu)組成和模塊功能都與節(jié)點(diǎn)公共基礎(chǔ)結(jié)構(gòu)相同,只是沒有數(shù)據(jù)收發(fā)模塊。邏輯層的數(shù)據(jù)分析實(shí)例是邏輯管理模塊基于相應(yīng)的編程語言開發(fā)、生成的處理邏輯的具體實(shí)例,并由數(shù)據(jù)處理容器模塊維護(hù),以供事件收發(fā)模塊調(diào)用,完成包括故障監(jiān)測、分析、統(tǒng)計(jì)、排查和診斷的網(wǎng)絡(luò)數(shù)據(jù)分析和處理的任務(wù),且優(yōu)先選擇本地處理事件,減少通信代價(jià);在完成任務(wù)后,把分析的中間結(jié)果或最終結(jié)果都封裝為事件,將中間結(jié)果事件經(jīng)由事件收發(fā)模塊發(fā)送給本節(jié)點(diǎn)或其他數(shù)據(jù)分析節(jié)點(diǎn)進(jìn)行后續(xù)處理:最終結(jié)果事件則被發(fā)往數(shù)據(jù)適配節(jié)點(diǎn),經(jīng)適配轉(zhuǎn)換為外部數(shù)據(jù)格式后,發(fā)給相應(yīng)的外網(wǎng)系統(tǒng)。
[0060]數(shù)據(jù)適配節(jié)點(diǎn)的通信層增設(shè)數(shù)據(jù)收發(fā)模塊,用于接收外網(wǎng)數(shù)據(jù)和將系統(tǒng)內(nèi)部最終結(jié)果對外輸出;因該節(jié)點(diǎn)只負(fù)責(zé)系統(tǒng)對內(nèi)和對外的事件和數(shù)據(jù)的適配轉(zhuǎn)換,不負(fù)責(zé)處理事件,故其通信層的事件收發(fā)模塊分發(fā)事件時(shí),只采用一致性Hash的平衡路由機(jī)制,不采用本地優(yōu)先策略;
[0061]數(shù)據(jù)適配節(jié)點(diǎn)的邏輯層中的數(shù)據(jù)適配實(shí)例,負(fù)責(zé)在數(shù)據(jù)適配節(jié)點(diǎn)接收到外網(wǎng)數(shù)據(jù)時(shí),由數(shù)據(jù)收發(fā)模塊調(diào)用數(shù)據(jù)適配實(shí)例,完成將外網(wǎng)數(shù)據(jù)轉(zhuǎn)換為系統(tǒng)內(nèi)能夠解析的事件,并調(diào)用事件收發(fā)模塊發(fā)送給系統(tǒng)內(nèi)的數(shù)據(jù)分析節(jié)點(diǎn);當(dāng)數(shù)據(jù)適配節(jié)點(diǎn)接收到來自于系統(tǒng)內(nèi)部的最終結(jié)果事件吋,事件收發(fā)模塊調(diào)用數(shù)據(jù)適配實(shí)例,完成將最終結(jié)果事件轉(zhuǎn)換為對外輸出的數(shù)據(jù)格式:包括數(shù)據(jù)庫記錄、日志記錄、Web Service消息和指定格式的網(wǎng)絡(luò)通信數(shù)據(jù)。
[0062]總之,本發(fā)明系統(tǒng)的數(shù)據(jù)適配節(jié)點(diǎn)和數(shù)據(jù)分析節(jié)點(diǎn)都具備下述結(jié)構(gòu)與功能:
[0063]采用P2P架構(gòu)方式組網(wǎng):支持節(jié)點(diǎn)的動態(tài)管理和負(fù)載均衡,以使系統(tǒng)具有動態(tài)伸縮功能,并提高其工作可靠性和整體性能。
[0064]基于事件的內(nèi)部通信機(jī)制:以事件作為通信唯一媒介,即節(jié)點(diǎn)之間的通信抽象為事件,使得發(fā)送方不需獲知事件目的地,接收方不需知道事件源地址,以簡化通信協(xié)議,增強(qiáng)數(shù)據(jù)分析集群的動態(tài)伸縮能力,提高系統(tǒng)處理能力。
[0065]組成結(jié)構(gòu)基本相同:兩種節(jié)點(diǎn)都設(shè)有由通信層和容器層組成的節(jié)點(diǎn)公共基礎(chǔ)結(jié)構(gòu),除了數(shù)據(jù)分析節(jié)點(diǎn)的通信層沒有數(shù)據(jù)收發(fā)模塊以外,其余各個(gè)模塊的結(jié)構(gòu)與功能都相同,上層處理邏輯也都采用相同的可擴(kuò)展方式,使得該系統(tǒng)的所有節(jié)點(diǎn)共享相同的底層模塊和基本一致的處理邏輯,只需部署不同的處理邏輯,就能配置不同功能的節(jié)點(diǎn),從而簡化系統(tǒng)結(jié)構(gòu),便利于節(jié)點(diǎn)管理和數(shù)據(jù)分析集群的動態(tài)伸縮。
[0066]流水線式的數(shù)據(jù)分析處理過程(參見圖3所示):每個(gè)數(shù)據(jù)分析節(jié)點(diǎn)作為流水線中的ー環(huán),將數(shù)據(jù)分析流程逐步分解,形成多個(gè)簡單片斷執(zhí)行分步處理,從而簡化各節(jié)點(diǎn)的結(jié)構(gòu)與功能,提高處理效率,系統(tǒng)容易擴(kuò)展和伸縮。
[0067]基于一致性Hash的平衡路由機(jī)制給下ー跳數(shù)據(jù)分析節(jié)點(diǎn)分發(fā)事件:分發(fā)事件時(shí)保證負(fù)載均衡,有利于節(jié)點(diǎn)管理、集群伸縮和系統(tǒng)簡化。
[0068]支持多語言、可擴(kuò)展的數(shù)據(jù)分析和處理機(jī)制:支持動態(tài)加載多種編程語言的處理邏輯,以豐富該系統(tǒng)的數(shù)據(jù)分析功能,簡化邏輯開發(fā)方法,提高系統(tǒng)的可擴(kuò)展功能。
[0069]本發(fā)明支持海量數(shù)據(jù)實(shí)時(shí)處理的網(wǎng)絡(luò)分析系統(tǒng)具有下述功能:
[0070]網(wǎng)絡(luò)數(shù)據(jù)分析:兩種節(jié)點(diǎn)都設(shè)有邏輯管理模塊和數(shù)據(jù)處理容器模塊,藉由該兩種模塊的配合,完成從用戶編寫的處理邏輯到事件的數(shù)據(jù)分析流程,以滿足用戶便利地自定義配置如何分析需要處理的網(wǎng)絡(luò)數(shù)據(jù);
[0071]節(jié)點(diǎn)伸縮性及流水線作業(yè)方式:各節(jié)點(diǎn)之間以事件為通信交互的唯一媒介,由節(jié)點(diǎn)的事件收發(fā)模塊和節(jié)點(diǎn)管理模塊配合完成節(jié)點(diǎn)的伸縮,再由事件收發(fā)模塊的路由機(jī)制,把新事件自動發(fā)送到新增節(jié)點(diǎn)上,實(shí)現(xiàn)負(fù)載均衡;還以節(jié)點(diǎn)伸縮功能和數(shù)據(jù)處理容器支持流水線作業(yè)方式:因數(shù)據(jù)分析實(shí)例在邏輯上獨(dú)立于數(shù)據(jù)分析節(jié)點(diǎn),系統(tǒng)根據(jù)每個(gè)節(jié)點(diǎn)配置的處理能力,由數(shù)據(jù)適配實(shí)例配合數(shù)據(jù)處理容器模塊和事件收發(fā)模塊共同完成把事件分派為多個(gè)子事件后,再分發(fā)給各個(gè)數(shù)據(jù)分析實(shí)例,且在完成各個(gè)子事件分析任務(wù)后,又匯總為ー個(gè)結(jié)果輸出,從而大大減少用戶設(shè)計(jì)負(fù)擔(dān),同時(shí)提高系統(tǒng)功效;
[0072]分析處理實(shí)時(shí)性:先由數(shù)據(jù)適配節(jié)點(diǎn)分流數(shù)據(jù),過濾刪除大量無用數(shù)據(jù),并將流量分散到不同的數(shù)據(jù)分析節(jié)點(diǎn),均衡系統(tǒng)負(fù)載;再用流水線作業(yè)方式,使每個(gè)數(shù)據(jù)分析節(jié)點(diǎn)的數(shù)據(jù)分析任務(wù)盡量単一,并由事件收發(fā)模塊實(shí)現(xiàn)負(fù)載均衡;最后,數(shù)據(jù)處理容器用內(nèi)存作為持久層介質(zhì)保存數(shù)據(jù)分析實(shí)例,因內(nèi)存讀寫數(shù)據(jù)快,能忽略實(shí)例的查找與存儲時(shí)間,從而實(shí)現(xiàn)操作的實(shí)時(shí)性和高效性;
[0073]海量數(shù)據(jù)處理能力:因利用數(shù)據(jù)適配節(jié)點(diǎn)過濾和分流數(shù)據(jù),以流水線作業(yè)方式和采用內(nèi)存的數(shù)據(jù)處理容器處理數(shù)據(jù)或事件,使得每個(gè)節(jié)點(diǎn)的處理能力很強(qiáng),系統(tǒng)的吞吐量大;另外,操作流程簡化,能確保實(shí)時(shí)性和高效性;節(jié)點(diǎn)具有動態(tài)伸縮功能:節(jié)點(diǎn)負(fù)載過高時(shí),只要増加若干個(gè)新節(jié)點(diǎn),節(jié)點(diǎn)管理模塊就會探査到新節(jié)點(diǎn),事件收發(fā)模塊就將事件分發(fā)給新節(jié)點(diǎn),達(dá)到負(fù)載均衡。
[0074]參見圖4、介紹本發(fā)明基于海量數(shù)據(jù)實(shí)時(shí)處理技術(shù)的網(wǎng)絡(luò)分析系統(tǒng)的工作方法,該方法為流水線式的作業(yè)方式,包括下列操作步驟:
[0075]步驟1,數(shù)據(jù)適配節(jié)點(diǎn)的數(shù)據(jù)收發(fā)模塊抓取到外網(wǎng)數(shù)據(jù)時(shí),就從數(shù)據(jù)處理容器模塊中尋找處理該數(shù)據(jù)的數(shù)據(jù)適配實(shí)例,由數(shù)據(jù)適配實(shí)例將該外網(wǎng)數(shù)據(jù)匹配轉(zhuǎn)換為數(shù)據(jù)分析節(jié)點(diǎn)能夠處理的事件后,事件收發(fā)模塊調(diào)用節(jié)點(diǎn)管理模塊的可用節(jié)點(diǎn)信息列表,再基于一致性hash的平衡路由機(jī)制選擇適宜的數(shù)據(jù)分析節(jié)點(diǎn)分發(fā)事件,即將該事件轉(zhuǎn)發(fā)給數(shù)據(jù)分析節(jié)點(diǎn)進(jìn)行處理;且本次分發(fā)事件不執(zhí)行本地優(yōu)先的事件分發(fā)策略。
[0076]步驟2,數(shù)據(jù)分析節(jié)點(diǎn)的事件收發(fā)模塊對接收到的事件進(jìn)行解析,數(shù)據(jù)處理容器模塊根據(jù)該事件類型和特征值尋找調(diào)用數(shù)據(jù)分析實(shí)例,由數(shù)據(jù)分析實(shí)例處理該事件;完成數(shù)據(jù)分析、故障監(jiān)測、統(tǒng)計(jì)處理操作后,將處理結(jié)果封裝為ー個(gè)或多個(gè)新事件,由事件收發(fā)模塊為每個(gè)新事件分別選擇分發(fā)給下ー節(jié)點(diǎn)。
[0077]在該步驟中,數(shù)據(jù)分析實(shí)例對事件進(jìn)行解析后,若還要繼續(xù)分析,則將中間結(jié)果封裝成ー個(gè)或多個(gè)新事件,交給事件收發(fā)模塊進(jìn)行分發(fā);若不需繼續(xù)分析,則不產(chǎn)生新事件,直接產(chǎn)生結(jié)果事件,并將該結(jié)果事件轉(zhuǎn)發(fā)給能夠匹配處理該類事件的數(shù)據(jù)適配節(jié)點(diǎn);然后,直接跳轉(zhuǎn)執(zhí)行步驟5。
[0078]步驟3,事件收發(fā)模塊在分發(fā)事件時(shí),根據(jù)節(jié)點(diǎn)管理模塊提供的可用節(jié)點(diǎn)信息列表,根據(jù)本地優(yōu)先和一致性hash的平衡路由機(jī)制的事件分發(fā)策略,再結(jié)合各節(jié)點(diǎn)的可用狀態(tài)和負(fù)載率,將新事件轉(zhuǎn)發(fā)給本節(jié)點(diǎn)處理,或者從所有能夠處理該新事件的其他節(jié)點(diǎn)集合中,選擇并分發(fā)給適宜的ー個(gè)目的節(jié)點(diǎn)進(jìn)行處理。
[0079]該步驟3中的節(jié)點(diǎn)管理模塊任務(wù)是發(fā)現(xiàn)新節(jié)點(diǎn)、激活老節(jié)點(diǎn)、采集獲取各個(gè)節(jié)點(diǎn)的實(shí)時(shí)工作狀態(tài)和負(fù)載率信息,以便確定如何給節(jié)點(diǎn)分配任務(wù),通過將流量分流到相應(yīng)的數(shù)據(jù)分析節(jié)點(diǎn)來保證各節(jié)點(diǎn)的負(fù)載均衡;其操作內(nèi)容如下:
[0080](31)系統(tǒng)啟動時(shí),節(jié)點(diǎn)管理模塊利用P2P技術(shù)遍歷系統(tǒng)中的節(jié)點(diǎn),并對該節(jié)點(diǎn)的可用節(jié)點(diǎn)信息列表進(jìn)行初始化設(shè)置;
[0081](32)系統(tǒng)運(yùn)行過程中,節(jié)點(diǎn)管理模塊同時(shí)執(zhí)行下述三項(xiàng)操作:
[0082]周期地測試各個(gè)節(jié)點(diǎn)的連通性能,及時(shí)發(fā)現(xiàn)失效節(jié)點(diǎn),并在可用節(jié)點(diǎn)信息列表中刪除該失效節(jié)點(diǎn);
[0083]實(shí)時(shí)采集各個(gè)可用節(jié)點(diǎn)的當(dāng)前負(fù)載信息,計(jì)算各可用節(jié)點(diǎn)的負(fù)載率,再實(shí)時(shí)更新各節(jié)點(diǎn)的負(fù)載率表,以備事件收發(fā)模塊調(diào)用;
[0084]監(jiān)聽周圍新節(jié)點(diǎn)的廣播信號,嘗試連接新節(jié)點(diǎn)和采集其信息,以便及時(shí)將其加入可用節(jié)點(diǎn)信息列表。
[0085]步驟4,各個(gè)數(shù)據(jù)分析節(jié)點(diǎn)循環(huán)執(zhí)行上述步驟2和3,即對事件執(zhí)行流水線式的處理,直至完成全部處理過程后,將產(chǎn)生的最終結(jié)果事件轉(zhuǎn)發(fā)給能夠匹配處理該類事件的數(shù)據(jù)適配節(jié)點(diǎn)。
[0086]步驟5,數(shù)據(jù)適配節(jié)點(diǎn)的事件收發(fā)模塊將接收的最終結(jié)果事件交給數(shù)據(jù)處理容器模塊,數(shù)據(jù)處理容器模塊根據(jù)結(jié)果事件特征值查找與調(diào)用數(shù)據(jù)適配實(shí)例,將該結(jié)果事件轉(zhuǎn)換為外網(wǎng)數(shù)據(jù)格式,再由數(shù)據(jù)收發(fā)模塊轉(zhuǎn)發(fā)給相應(yīng)的外網(wǎng),以便對該結(jié)果事件完成后期處理。
[0087]上述步驟1、3或5還包括下列操作內(nèi)容:數(shù)據(jù)適配節(jié)點(diǎn)或數(shù)據(jù)分析節(jié)點(diǎn)在轉(zhuǎn)發(fā)事件后,其數(shù)據(jù)處理容器模塊根據(jù)設(shè)置的數(shù)據(jù)適配實(shí)例或數(shù)據(jù)分析實(shí)例的自身生命周期,保留數(shù)據(jù)適配實(shí)例或數(shù)據(jù)分析實(shí)例,或者關(guān)閉該數(shù)據(jù)適配實(shí)例或數(shù)據(jù)分析實(shí)例并釋放資源。
[0088]參見圖5,介紹數(shù)據(jù)適配節(jié)點(diǎn)包括兩個(gè)階段的工作流程:轉(zhuǎn)化外部網(wǎng)絡(luò)發(fā)送來的數(shù)據(jù),使其成為數(shù)據(jù)分析節(jié)點(diǎn)能夠處理的事件,以及將結(jié)果事件轉(zhuǎn)化成后期處理所需要的各種數(shù)據(jù)。
[0089]先對第一階段“將收到的數(shù)據(jù)匹配轉(zhuǎn)換為事件”進(jìn)行具體描述:
[0090](I)數(shù)據(jù)收發(fā)模塊接收到外部網(wǎng)絡(luò)發(fā)來的數(shù)據(jù),調(diào)用數(shù)據(jù)處理容器模塊。數(shù)據(jù)處理容器模塊根據(jù)數(shù)據(jù)類型查找數(shù)據(jù)適配實(shí)例。
[0091](2)數(shù)據(jù)收發(fā)模塊調(diào)用被查找到的數(shù)據(jù)適配實(shí)例,數(shù)據(jù)適配實(shí)例將數(shù)據(jù)轉(zhuǎn)化成數(shù)據(jù)分析節(jié)點(diǎn)能處理的事件。
[0092](3)數(shù)據(jù)適配實(shí)例將轉(zhuǎn)化好的事件交給事件收發(fā)模塊,事件收發(fā)模塊調(diào)用節(jié)點(diǎn)管理模塊的節(jié)點(diǎn)信息列表,通過基于一致性hash的平衡路由機(jī)制完成將事件轉(zhuǎn)發(fā)給數(shù)據(jù)分析節(jié)點(diǎn)。此時(shí),數(shù)據(jù)適配節(jié)點(diǎn)不執(zhí)行本地優(yōu)先的事件分發(fā)策略。這是通過節(jié)點(diǎn)配置來實(shí)現(xiàn)的。
[0093](4)數(shù)據(jù)處理容器模塊根據(jù)實(shí)例本身的生命周期設(shè)置,保留實(shí)例,或者結(jié)束實(shí)例并釋放資源。
[0094]再說明第二階段“將結(jié)果事件轉(zhuǎn)化成后期處理的數(shù)據(jù)”的具體操作內(nèi)容:
[0095]( I)事件收發(fā)模塊接收到處理結(jié)果事件,調(diào)用數(shù)據(jù)處理容器模塊,數(shù)據(jù)處理容器根據(jù)事件的特征值,查找數(shù)據(jù)適配實(shí)例。
[0096](2)事件收發(fā)模塊調(diào)用事件適配實(shí)例完成將該處理結(jié)果事件轉(zhuǎn)化成后期處理的數(shù)據(jù)。
[0097](3)數(shù)據(jù)適配實(shí)例將轉(zhuǎn)換后的數(shù)據(jù)交給數(shù)據(jù)收發(fā)模塊進(jìn)行后期處理。
[0098](4)數(shù)據(jù)處理容器模塊根據(jù)實(shí)例本身設(shè)置的生命周期,保留實(shí)例或者結(jié)束實(shí)例,然后釋放資源。
[0099]參見圖6,介紹數(shù)據(jù)分析節(jié)點(diǎn)的具體處理流程。它是由其數(shù)據(jù)處理容器模塊配合事件收發(fā)模塊完成其處理流程的:
[0100](I)事件收發(fā)模塊處于始終監(jiān)聽事件的狀態(tài),當(dāng)有事件到來時(shí),就進(jìn)行解析,然后調(diào)用數(shù)據(jù)處理容器,以獲得數(shù)據(jù)分析實(shí)例。
[0101](2)數(shù)據(jù)處理容器模塊根據(jù)事件的類型和特征值,查找處理該事件的數(shù)據(jù)分析實(shí)例。如果找到對應(yīng)的數(shù)據(jù)分析實(shí)例,則將其交給事件收發(fā)模塊調(diào)用;否則,產(chǎn)生一個(gè)新的數(shù)據(jù)分析實(shí)例。
[0102](3)事件收發(fā)模塊調(diào)用數(shù)據(jù)分析實(shí)例進(jìn)行數(shù)據(jù)分析,完成網(wǎng)絡(luò)數(shù)據(jù)檢查和統(tǒng)計(jì)等操作。處理完畢后,如果還要進(jìn)ー步分析,則將中間結(jié)果封裝成事件,交給事件收發(fā)模塊進(jìn)行分發(fā)。如果不需要進(jìn)ー步分析,則不產(chǎn)生新事件。
[0103](4)事件收發(fā)模塊接收到新的分析結(jié)果事件,根據(jù)節(jié)點(diǎn)管理模塊提供的可用節(jié)點(diǎn)列表,根據(jù)本地優(yōu)先和基于一致性hash的平衡路由機(jī)制,將事件轉(zhuǎn)發(fā)給下ー個(gè)節(jié)點(diǎn),或由本節(jié)點(diǎn)繼續(xù)進(jìn)行處理。
[0104](5)數(shù)據(jù)處理容器模塊根據(jù)實(shí)例本身設(shè)置的生命周期,保留實(shí)例或者結(jié)束實(shí)例,并釋放資源。
[0105]本發(fā)明已經(jīng)進(jìn)行了多次實(shí)施試驗(yàn),試驗(yàn)的結(jié)果是成功的,實(shí)現(xiàn)了發(fā)明目的。
【權(quán)利要求】
1.一種基于海量數(shù)據(jù)實(shí)時(shí)處理技術(shù)的網(wǎng)絡(luò)分析系統(tǒng),其特征在于:該系統(tǒng)包括:多個(gè)數(shù)據(jù)適配節(jié)點(diǎn)和由多個(gè)數(shù)據(jù)分析節(jié)點(diǎn)組成的數(shù)據(jù)分析集群,其中: 數(shù)據(jù)適配節(jié)點(diǎn),用于獲取被管理的外部網(wǎng)絡(luò)中的數(shù)據(jù),并利用數(shù)據(jù)適配功能將所有輸入到數(shù)據(jù)分析集群、需要實(shí)時(shí)分析的數(shù)據(jù)適配轉(zhuǎn)換為數(shù)據(jù)分析集群內(nèi)部能夠解析和通信的事件,并將該事件初次分發(fā)到數(shù)據(jù)分析集群中的各個(gè)數(shù)據(jù)分析節(jié)點(diǎn),實(shí)現(xiàn)初次分發(fā)的負(fù)載均衡;同時(shí),數(shù)據(jù)分析集群處理后的結(jié)果,也以事件方式發(fā)送到數(shù)據(jù)適配節(jié)點(diǎn),由其利用數(shù)據(jù)適配功能將其轉(zhuǎn)換適配為對外通信的數(shù)據(jù)格式后向外輸出,或轉(zhuǎn)發(fā)給數(shù)據(jù)庫、日志或圖形界面進(jìn)行后期記錄或顯示;該數(shù)據(jù)適配節(jié)點(diǎn)的輸入信息為外部網(wǎng)絡(luò)的所有數(shù)據(jù)、數(shù)據(jù)分析請求、中間事件或最后結(jié)果事件,輸出信息則根據(jù)需要適配為對數(shù)據(jù)庫、日志和圖形界面的存儲操作、對Web Service接口的通信操作或發(fā)送設(shè)定格式的網(wǎng)絡(luò)數(shù)據(jù); 數(shù)據(jù)分析集群,由作為該系統(tǒng)完成網(wǎng)絡(luò)數(shù)據(jù)分析核心功能、呈分布式配置于網(wǎng)絡(luò)中的多個(gè)數(shù)據(jù)分析節(jié)點(diǎn)所組成,這些數(shù)據(jù)分析節(jié)點(diǎn)負(fù)責(zé)對數(shù)據(jù)進(jìn)行實(shí)時(shí)的故障監(jiān)測、分析、統(tǒng)計(jì)、排查和診斷的操作,并將處理結(jié)果發(fā)送到數(shù)據(jù)適配節(jié)點(diǎn),或數(shù)據(jù)庫、日志和圖形界面,以供后期處理;數(shù)據(jù)分析節(jié)點(diǎn)支持P2P組網(wǎng)方式和負(fù)載均衡機(jī)制,以使該數(shù)據(jù)分析集群具有伸縮功能:若要調(diào)整其處理能力時(shí),只需直接添加或減少數(shù)據(jù)分析節(jié)點(diǎn)數(shù)量即可;各個(gè)數(shù)據(jù)分析節(jié)點(diǎn)之間基于事件通信完成流水線式的分析處理過程。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于:所述系統(tǒng)內(nèi)的兩種節(jié)點(diǎn):數(shù)據(jù)適配節(jié)點(diǎn)和數(shù)據(jù)分析節(jié)點(diǎn)都具備下述結(jié)構(gòu)組成與功能的特點(diǎn): 采用P2P架構(gòu)方式組網(wǎng):支持節(jié)點(diǎn)的動態(tài)管理和負(fù)載均衡,以使系統(tǒng)具有動態(tài)伸縮功能,并提高其工作可靠性和整體性能; 基于事件的內(nèi)部通信機(jī)制:以事件作為通信唯一媒介,即節(jié)點(diǎn)之間的通信抽象為事件,使得發(fā)送方不需獲知事件目的地,接收方不需知道事件源地址,以簡化通信協(xié)議,增強(qiáng)數(shù)據(jù)分析集群的動態(tài)伸縮能力,提高系統(tǒng)處理能力; 組成結(jié)構(gòu)基本相同:兩種節(jié)點(diǎn)都設(shè)有由通信層和容器層組成的節(jié)點(diǎn)公共基礎(chǔ)結(jié)構(gòu),除了數(shù)據(jù)分析節(jié)點(diǎn)的通信層沒有數(shù)據(jù)收發(fā)模塊以外,其余各個(gè)模塊的結(jié)構(gòu)與功能都相同,上層處理邏輯也都采用相同的可擴(kuò)展方式,使得該系統(tǒng)的所有節(jié)點(diǎn)共享相同的底層模塊和基本一致的處理邏輯,只需部署不同的處理邏輯,就能配置不同功能的節(jié)點(diǎn),從而簡化系統(tǒng)結(jié)構(gòu),便利于節(jié)點(diǎn)管理和數(shù)據(jù)分析集群的動態(tài)伸縮; 流水線式的數(shù)據(jù)分析處理過程:每個(gè)數(shù)據(jù)分析節(jié)點(diǎn)作為流水線中的一環(huán),將數(shù)據(jù)分析流程逐步分解,形成多個(gè)簡單片斷執(zhí)行分步處理,從而簡化各節(jié)點(diǎn)的結(jié)構(gòu)與功能,提高處理效率,系統(tǒng)容易擴(kuò)展和伸縮; 基于一致性Hash的平衡路由機(jī)制給下一跳數(shù)據(jù)分析節(jié)點(diǎn)分發(fā)事件:分發(fā)事件時(shí)保證負(fù)載均衡,有利于節(jié)點(diǎn)管理、集群伸縮和系統(tǒng)簡化; 支持多語言、可擴(kuò)展的數(shù)據(jù)分析和處理機(jī)制:支持動態(tài)加載多種處理邏輯,以豐富該系統(tǒng)的數(shù)據(jù)分析功能,簡化邏輯開發(fā)方法,提高系統(tǒng)的可擴(kuò)展功能。
3.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于:所述系統(tǒng)內(nèi)的數(shù)據(jù)適配節(jié)點(diǎn)和數(shù)據(jù)分析節(jié)點(diǎn)都設(shè)有通信層、邏輯層和容器層,其中的通信層和容器層組成節(jié)點(diǎn)公共基礎(chǔ)結(jié)構(gòu);該節(jié)點(diǎn)公共基礎(chǔ)結(jié)構(gòu)中的功能模塊,除去數(shù)據(jù)適配節(jié)點(diǎn)在通信層專設(shè)其特有的數(shù)據(jù)收發(fā)模塊以外,其余包括通信層中的節(jié)點(diǎn)管理模塊和事件收發(fā)模塊,容器層中的數(shù)據(jù)處理容器模塊、邏輯管理模塊都是上述兩種節(jié)點(diǎn)共同設(shè)置的,且兩者的上述模塊的結(jié)構(gòu)與功能都相同。
4.根據(jù)權(quán)利要求3所述的系統(tǒng),其特征在于:所述節(jié)點(diǎn)公共基礎(chǔ)結(jié)構(gòu)的通信層設(shè)有節(jié)點(diǎn)管理模塊和事件收發(fā)模塊,用于完成節(jié)點(diǎn)間通信功能;數(shù)據(jù)適配節(jié)點(diǎn)的通信層還包含數(shù)據(jù)收發(fā)模塊;這三種模塊的功能說明如下: 節(jié)點(diǎn)管理模塊,通過P2P技術(shù)監(jiān)聽周圍節(jié)點(diǎn)的廣播信號來發(fā)現(xiàn)新節(jié)點(diǎn),并測試新節(jié)點(diǎn)連通性,檢查現(xiàn)有節(jié)點(diǎn)的負(fù)載與可用性,更新和維護(hù)各自節(jié)點(diǎn)的可用節(jié)點(diǎn)信息列表,采集數(shù)據(jù)分析集群中各節(jié)點(diǎn)的負(fù)載信息,為事件收發(fā)模塊完成事件分發(fā)功能提供支持; 事件收發(fā)模塊,用于完成事件接收和分發(fā):每個(gè)節(jié)點(diǎn)配置各自接收的事件類型,并只接收和處理該類型事件,但節(jié)點(diǎn)對外發(fā)送的事件類型不受限制;事件收發(fā)模塊接收到來自于本模塊、本節(jié)點(diǎn)或其他節(jié)點(diǎn)的事件吋,將接收到的事件分別交由數(shù)據(jù)處理容器模塊中的數(shù)據(jù)適配實(shí)例或數(shù)據(jù)分析實(shí)例進(jìn)行處理;而接收到來自本節(jié)點(diǎn)的數(shù)據(jù)適配實(shí)例或數(shù)據(jù)分析實(shí)例的中間事件吋,則根據(jù)事件類型和節(jié)點(diǎn)管理模塊產(chǎn)生的可用節(jié)點(diǎn)列表和負(fù)載信息,將該中間事件以ー對一或ー對多方式選擇轉(zhuǎn)發(fā)給本模塊、ー個(gè)或多個(gè)其他節(jié)點(diǎn);選擇方法是遵從本地優(yōu)先和基于一致性Hash的平衡路由機(jī)制; 數(shù)據(jù)收發(fā)模塊,為數(shù)據(jù)適配節(jié)點(diǎn)的專有模塊,用于監(jiān)聽與接收外網(wǎng)數(shù)據(jù):將接收到的外網(wǎng)數(shù)據(jù)交給數(shù)據(jù)處理容器模塊中相應(yīng)的數(shù)據(jù)適配實(shí)例,進(jìn)行數(shù)據(jù)到事件的適配處理;以及將系統(tǒng)內(nèi)部處理結(jié)果對外輸出:接收到本系統(tǒng)的分析處理結(jié)果,即來自于數(shù)據(jù)適配實(shí)例的最終結(jié)果數(shù)據(jù)時(shí),將該最終結(jié)果數(shù)據(jù)發(fā)送到相應(yīng)的外網(wǎng)。
5.根據(jù)權(quán)利要求3所述的系統(tǒng),其特征在于:所述節(jié)點(diǎn)公共基礎(chǔ)結(jié)構(gòu)的容器層負(fù)責(zé)管理和維護(hù)多種處理邏輯,以及處理邏輯所產(chǎn)生的具體實(shí)例:數(shù)據(jù)分析節(jié)點(diǎn)和數(shù)據(jù)適配節(jié)點(diǎn)的兩個(gè)容器層分別管理各自的數(shù)據(jù)分析實(shí)例和數(shù)據(jù)適配實(shí)例;容器層包括:數(shù)據(jù)處理容器模塊、邏輯管理模塊;其中: 數(shù)據(jù)處理容器模塊,負(fù)責(zé)統(tǒng)一維護(hù)多種處理邏輯實(shí)例,為已創(chuàng)建的邏輯實(shí)例提供管理容器,并在邏輯實(shí)例結(jié)束執(zhí)行后對其進(jìn)行刪除;當(dāng)數(shù)據(jù)收發(fā)模塊接收外網(wǎng)數(shù)據(jù)或事件收發(fā)模塊接收到事件吋,都從數(shù)據(jù)處理`容器模塊獲取相應(yīng)的邏輯實(shí)例對數(shù)據(jù)或事件進(jìn)行處理;此時(shí),若已有邏輯實(shí)例能對數(shù)據(jù)或事件進(jìn)行處理,則提供該邏輯實(shí)例;否則,由邏輯管理模塊分別創(chuàng)建各自新的邏輯實(shí)例; 邏輯管理模塊,用于根據(jù)需要加載不同類型的處理邏輯,生成用于數(shù)據(jù)和事件的適配功能和分析功能的數(shù)據(jù)適配實(shí)例和數(shù)據(jù)分析實(shí)例的處理邏輯實(shí)例,然后將數(shù)據(jù)分析實(shí)例或數(shù)據(jù)適配實(shí)例注入到數(shù)據(jù)處理容器模塊。
6.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于:所述數(shù)據(jù)分析節(jié)點(diǎn)是該網(wǎng)絡(luò)數(shù)據(jù)分析系統(tǒng)完成網(wǎng)絡(luò)數(shù)據(jù)分析的關(guān)鍵節(jié)點(diǎn);其通信層與容器層的結(jié)構(gòu)組成和模塊功能與節(jié)點(diǎn)公共基礎(chǔ)結(jié)構(gòu)相同,只是沒有數(shù)據(jù)收發(fā)模塊;邏輯層的數(shù)據(jù)分析實(shí)例是邏輯管理模塊創(chuàng)建的處理邏輯的具體實(shí)例,并由數(shù)據(jù)處理容器模塊維護(hù),以供事件收發(fā)模塊調(diào)用,完成包括故障監(jiān)測、分析、統(tǒng)計(jì)、排查和診斷的網(wǎng)絡(luò)數(shù)據(jù)分析和處理的任務(wù),且優(yōu)先選擇本地處理事件,減少通信代價(jià);在完成任務(wù)后,把分析的中間結(jié)果或最終結(jié)果都封裝為事件,將中間結(jié)果事件經(jīng)由事件收發(fā)模塊發(fā)送給本節(jié)點(diǎn)或其他數(shù)據(jù)分析節(jié)點(diǎn)進(jìn)行后續(xù)處理:最終結(jié)果事件則被發(fā)往數(shù)據(jù)適配節(jié)點(diǎn),經(jīng)適配轉(zhuǎn)換為外部數(shù)據(jù)格式后,發(fā)給相應(yīng)的外網(wǎng)系統(tǒng)。
7.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于:所述數(shù)據(jù)適配節(jié)點(diǎn)的通信層增設(shè)數(shù)據(jù)收發(fā)模塊,用于接收外網(wǎng)數(shù)據(jù)和將系統(tǒng)內(nèi)部最終結(jié)果對外輸出;因該節(jié)點(diǎn)只負(fù)責(zé)系統(tǒng)對內(nèi)和對外的事件和數(shù)據(jù)的適配轉(zhuǎn)換,不負(fù)責(zé)處理事件,故其通信層的事件收發(fā)模塊分發(fā)事件時(shí),只采用一致性Hash的平衡路由機(jī)制,不采用本地優(yōu)先策略; 數(shù)據(jù)適配節(jié)點(diǎn)的邏輯層中的數(shù)據(jù)適配實(shí)例,負(fù)責(zé)在數(shù)據(jù)適配節(jié)點(diǎn)接收到外網(wǎng)數(shù)據(jù)吋,由數(shù)據(jù)收發(fā)模塊調(diào)用數(shù)據(jù)適配實(shí)例,完成將外網(wǎng)數(shù)據(jù)轉(zhuǎn)換為系統(tǒng)內(nèi)能夠解析的事件,并調(diào)用事件收發(fā)模塊發(fā)送給系統(tǒng)內(nèi)的數(shù)據(jù)分析節(jié)點(diǎn);當(dāng)數(shù)據(jù)適配節(jié)點(diǎn)接收到來自于系統(tǒng)內(nèi)部的最終結(jié)果事件吋,事件收發(fā)模塊調(diào)用數(shù)據(jù)適配實(shí)例,完成將最終結(jié)果事件轉(zhuǎn)換為對外輸出的數(shù)據(jù)格式:包括數(shù)據(jù)庫記錄、日志記錄、Web Service消息和指定格式的網(wǎng)絡(luò)通信數(shù)據(jù)。
8.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于:所述系統(tǒng)的功能包括: 網(wǎng)絡(luò)數(shù)據(jù)分析:兩種節(jié)點(diǎn)都設(shè)有邏輯管理模塊和數(shù)據(jù)處理容器模塊,藉由該兩種模塊的配合,完成從用戶自定義的處理邏輯到事件的數(shù)據(jù)分析流程,以滿足用戶便利地自定義配置如何分析其需要處理的網(wǎng)絡(luò)數(shù)據(jù); 節(jié)點(diǎn)伸縮性及流水線作業(yè)方式:各節(jié)點(diǎn)之間以事件為通信交互的唯一媒介,由節(jié)點(diǎn)的事件收發(fā)模塊和節(jié)點(diǎn)管理模塊配合完成節(jié)點(diǎn)的伸縮,再由事件收發(fā)模塊的路由機(jī)制,把新事件自動發(fā)送到新增節(jié)點(diǎn)上,實(shí)現(xiàn)負(fù)載均衡;還以節(jié)點(diǎn)伸縮功能和數(shù)據(jù)處理容器支持流水線作業(yè)方式:因數(shù)據(jù)分析實(shí)例在邏輯上獨(dú)立于數(shù)據(jù)分析節(jié)點(diǎn),系統(tǒng)根據(jù)每個(gè)節(jié)點(diǎn)配置的處理能力,由數(shù)據(jù)適配實(shí)例配合數(shù)據(jù)處理容器模塊和事件收發(fā)模塊共同完成把事件分派為多個(gè)子事件后,再分發(fā)給各個(gè)數(shù)據(jù)分析實(shí)例,且在完成各個(gè)子事件分析任務(wù)后,又匯總為ー個(gè)結(jié)果輸出,從而大大減少用戶設(shè)計(jì)負(fù)擔(dān),同時(shí)提高系統(tǒng)功效; 分析處理實(shí)時(shí)性:先由數(shù)據(jù)適配節(jié)點(diǎn)分流數(shù)據(jù),過濾刪除大量無用數(shù)據(jù),并將流量分散到不同的數(shù)據(jù)分析節(jié)點(diǎn),均衡系統(tǒng)負(fù)載;再用流水線作業(yè)方式,使每個(gè)數(shù)據(jù)分析節(jié)點(diǎn)的數(shù)據(jù)分析任務(wù)盡量単一,并由事件收發(fā)模塊實(shí)現(xiàn)負(fù)載均衡;最后,數(shù)據(jù)處理容器用內(nèi)存作為持久層介質(zhì)保存數(shù)據(jù)分析實(shí)例,因內(nèi)存讀寫數(shù)據(jù)快,能忽略實(shí)例的查找與存儲時(shí)間,從而實(shí)現(xiàn)操作的實(shí)時(shí)性和高效性; 海量數(shù)據(jù)處理能力:因利用數(shù)據(jù)適配節(jié)點(diǎn)過濾和分流數(shù)據(jù),以流水線作業(yè)方式和采用內(nèi)存的數(shù)據(jù)處理容器處理數(shù)據(jù)或事件,使得每個(gè)節(jié)點(diǎn)的處理能力很強(qiáng),系統(tǒng)的吞吐量大?’另外,操作流程簡化,能確保實(shí)時(shí)性和高效性;節(jié)點(diǎn)具有動態(tài)伸縮功能:節(jié)點(diǎn)負(fù)載過高吋,只要増加若干個(gè)新節(jié)點(diǎn),節(jié)點(diǎn)管理模塊就會探査到新節(jié)點(diǎn),事件收發(fā)模塊就將事件分發(fā)給新節(jié)點(diǎn),達(dá)到負(fù)載均衡。
9.一種基于海量數(shù)據(jù)實(shí)時(shí)處理技術(shù)的網(wǎng)絡(luò)分析系統(tǒng)的工作方法,其特征在于:該方法為流水線式的作業(yè)方式,包括下列操作步驟: (1)數(shù)據(jù)適配節(jié)點(diǎn)的數(shù)據(jù)收發(fā)模塊抓取到外網(wǎng)數(shù)據(jù)時(shí),就從數(shù)據(jù)處理容器模塊中尋找處理該數(shù)據(jù)的數(shù)據(jù)適配實(shí)例,由數(shù)據(jù)適配實(shí)例將該外網(wǎng)數(shù)據(jù)匹配轉(zhuǎn)換為數(shù)據(jù)分析節(jié)點(diǎn)能夠處理的事件后,事件收發(fā)模塊調(diào)用節(jié)點(diǎn)管理模塊的可用節(jié)點(diǎn)信息列表,再基于一致性hash的平衡路由機(jī)制選擇適宜的數(shù)據(jù)分析節(jié)點(diǎn)分發(fā)事件,即將該事件轉(zhuǎn)發(fā)給數(shù)據(jù)分析節(jié)點(diǎn)進(jìn)行處理;且本次分發(fā)事件不執(zhí)行本地優(yōu)先的事件分發(fā)策略; (2)數(shù)據(jù)分析節(jié)點(diǎn)的事件收發(fā)模塊對接收到的事件進(jìn)行解析,數(shù)據(jù)處理容器模塊根據(jù)該事件的類型和特征值尋找調(diào)用數(shù)據(jù)分析實(shí)例,由數(shù)據(jù)分析實(shí)例處理該事件;完成數(shù)據(jù)分析、故障監(jiān)測、統(tǒng)計(jì)處理操作后,將處理結(jié)果封裝為ー個(gè)或多個(gè)新事件,由事件收發(fā)模塊為姆個(gè)新事件分別選擇分發(fā)給下ー節(jié)點(diǎn); (3)事件收發(fā)模塊在分發(fā)事件時(shí),根據(jù)節(jié)點(diǎn)管理模塊提供的可用節(jié)點(diǎn)信息列表,根據(jù)本地優(yōu)先和一致性hash的平衡路由機(jī)制的事件分發(fā)策略,再結(jié)合各節(jié)點(diǎn)的可用狀態(tài)和負(fù)載率,將新事件轉(zhuǎn)發(fā)給本節(jié)點(diǎn)處理,或者從所有能夠處理該新事件的其他節(jié)點(diǎn)集合中,選擇并分發(fā)給適宜的ー個(gè)目的節(jié)點(diǎn)進(jìn)行處理; (4)各個(gè)數(shù)據(jù)分析節(jié)點(diǎn)循環(huán)執(zhí)行上述步驟(2)和(3),即對事件執(zhí)行流水線式的處理,直至完成全部處理過程后,將產(chǎn)生的最終結(jié)果事件轉(zhuǎn)發(fā)給能夠匹配處理該類事件的數(shù)據(jù)適配節(jié)點(diǎn); (5)數(shù)據(jù)適配節(jié)點(diǎn)的事件收發(fā)模塊將接收的最終結(jié)果事件交給數(shù)據(jù)處理容器模塊,數(shù)據(jù)處理容器模塊根據(jù)結(jié)果事件特征值查找與調(diào)用數(shù)據(jù)適配實(shí)例,將該結(jié)果事件轉(zhuǎn)換為外網(wǎng)數(shù)據(jù)格式,再由數(shù)據(jù)收發(fā)模塊轉(zhuǎn)發(fā)給相應(yīng)的外網(wǎng),以便對該結(jié)果事件完成后期處理。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于:所述步驟(1)、(3)或(5)還包括下列操作內(nèi)容:數(shù)據(jù)適配節(jié)點(diǎn)或數(shù)據(jù)分析節(jié)點(diǎn)在轉(zhuǎn)發(fā)事件后,其數(shù)據(jù)處理容器模塊根據(jù)設(shè)置的數(shù)據(jù)適配實(shí)例或數(shù)據(jù)分析實(shí)例的自身生命周期,保留數(shù)據(jù)適配實(shí)例或數(shù)據(jù)分析實(shí)例,或者關(guān)閉該數(shù)據(jù)適配實(shí)例或數(shù)據(jù)分析實(shí)例并釋放資源。
11.根據(jù)權(quán)利要求9所述的方法,其特征在于:所述步驟(2)中,數(shù)據(jù)分析實(shí)例對事件進(jìn)行解析后,若還要繼續(xù)分析,則將中間結(jié)果封裝成ー個(gè)或多個(gè)新事件,交給事件收發(fā)模塊進(jìn)行分發(fā);若不需繼續(xù)分析,則不產(chǎn)生新事件,直接產(chǎn)生結(jié)果事件,并將該結(jié)果事件轉(zhuǎn)發(fā)給能夠匹配處理該類事件的數(shù)據(jù)適配節(jié)點(diǎn);然后,直接跳轉(zhuǎn)執(zhí)行步驟(5)。
12.根據(jù)權(quán)利要求9所述的方法,其特征在于:所述步驟(3)中的節(jié)點(diǎn)管理模塊任務(wù)是發(fā)現(xiàn)新節(jié)點(diǎn)、激活老節(jié)點(diǎn)、采集獲取各個(gè)節(jié)點(diǎn)的實(shí)時(shí)工作狀態(tài)和負(fù)載率信息,以便確定如何給節(jié)點(diǎn)分配任務(wù),通 過將流量分流到相應(yīng)的數(shù)據(jù)分析節(jié)點(diǎn)來保證各節(jié)點(diǎn)的負(fù)載均衡;其操作內(nèi)容如下: (31)系統(tǒng)啟動時(shí),節(jié)點(diǎn)管理模塊利用P2P技術(shù)遍歷系統(tǒng)中的節(jié)點(diǎn),并對該節(jié)點(diǎn)的可用節(jié)點(diǎn)信息列表進(jìn)行初始化設(shè)置; (32)系統(tǒng)運(yùn)行過程中,節(jié)點(diǎn)管理模塊同時(shí)執(zhí)行下述三項(xiàng)操作: 周期地測試各個(gè)節(jié)點(diǎn)的連通性能,及時(shí)發(fā)現(xiàn)失效節(jié)點(diǎn),并在可用節(jié)點(diǎn)信息列表中刪除該失效節(jié)點(diǎn); 實(shí)時(shí)采集各個(gè)可用節(jié)點(diǎn)的當(dāng)前負(fù)載信息,計(jì)算各可用節(jié)點(diǎn)的負(fù)載率,再實(shí)時(shí)更新各節(jié)點(diǎn)的負(fù)載率表,以備事件收發(fā)模塊調(diào)用; 監(jiān)聽周圍新節(jié)點(diǎn)的廣播信號,嘗試連接新節(jié)點(diǎn)和采集其信息,以便及時(shí)將其加入可用節(jié)點(diǎn)信息列表。
【文檔編號】H04L12/58GK103560943SQ201310529178
【公開日】2014年2月5日 申請日期:2013年10月31日 優(yōu)先權(quán)日:2013年10月31日
【發(fā)明者】趙耀, 林榮恒, 翁佳雷, 鄒華, 楊放春, 趙翔, 陳雪龍, 王建強(qiáng) 申請人:北京郵電大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1