郭 慶,朱一凡,謝瑩瑩,張 榆,陳小兵
1(北京理工大學(xué)計(jì)算機(jī)學(xué)院,北京100081)
2(中科曙光大數(shù)據(jù)事業(yè)部,北京100193)
隨著互聯(lián)網(wǎng)的不斷發(fā)展及移動(dòng)互聯(lián)網(wǎng)的出現(xiàn),網(wǎng)民數(shù)量及網(wǎng)絡(luò)流量快速的增長(zhǎng).此外,各種新的互聯(lián)網(wǎng)應(yīng)用,如微博、互聯(lián)網(wǎng)金融、共享交通系列APP、微信、支付寶、在線(xiàn)短視頻等等層出不窮,同時(shí)智能終端、人工智能、物聯(lián)網(wǎng)、云計(jì)算等信息技術(shù)的快速發(fā)展和廣泛應(yīng)用,促使數(shù)據(jù)呈現(xiàn)爆炸式增長(zhǎng)的態(tài)勢(shì),推動(dòng)人類(lèi)社會(huì)邁入大數(shù)據(jù)時(shí)代[1-3].與之相伴,大量的數(shù)據(jù)需要通過(guò)網(wǎng)絡(luò)傳輸,進(jìn)而產(chǎn)生了大規(guī)模的網(wǎng)絡(luò)流量數(shù)據(jù),企業(yè)級(jí)用戶(hù)已有Gbps 級(jí)的數(shù)據(jù)規(guī)模,而在運(yùn)營(yíng)商骨干網(wǎng)、城域網(wǎng)等環(huán)境下更是已高達(dá)Tbps 級(jí)的超大規(guī)模[4].網(wǎng)絡(luò)流量數(shù)據(jù)中包含了豐富的信息,包括時(shí)間戳、協(xié)議類(lèi)型、源IP、目的IP、源端口、目的端口、數(shù)據(jù)報(bào)文等多維數(shù)據(jù),可反映網(wǎng)絡(luò)狀態(tài),發(fā)現(xiàn)網(wǎng)絡(luò)事件,已廣泛用于入侵檢測(cè)、異常流量檢測(cè)、溯源分析、態(tài)勢(shì)感知、網(wǎng)絡(luò)安全監(jiān)控等多種場(chǎng)景[5].
隨著大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)的發(fā)展,其在數(shù)據(jù)量、數(shù)據(jù)規(guī)模、處理速度、響應(yīng)時(shí)間等方面的要求越來(lái)越高,因此大規(guī)模數(shù)據(jù)的實(shí)時(shí)匯聚處理等技術(shù)成為現(xiàn)在重要的研究熱點(diǎn)之一[6].為此,業(yè)界相繼出現(xiàn)了一系列分布式流處理系統(tǒng),如Yahoo 推出的S4,Twitter 推出的Storm,有力的推動(dòng)了流計(jì)算的廣泛應(yīng)用[7].而面向海量數(shù)據(jù)的實(shí)時(shí)分析,也取得了一定成果,以MapReduce、Spark 等為代表的離線(xiàn)計(jì)算、內(nèi)存計(jì)算系統(tǒng),在實(shí)踐中獲得了大量應(yīng)用[8,9].Palacio 等針對(duì)企業(yè)網(wǎng)絡(luò)流量監(jiān)控的應(yīng)用場(chǎng)景,提出了一個(gè)基于Spark 的系統(tǒng)框架,通過(guò)流處理和批處理的使用,監(jiān)視網(wǎng)絡(luò)活動(dòng),分析離線(xiàn)歷史數(shù)據(jù),實(shí)現(xiàn)對(duì)異常行為的識(shí)別檢測(cè)[10].Qiao 等針對(duì)運(yùn)營(yíng)商的應(yīng)用場(chǎng)景,提供了一套移動(dòng)大數(shù)據(jù)框架,可用于對(duì)海量數(shù)據(jù)流量的采集存儲(chǔ)和分析監(jiān)控[11].
但是在面向大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)時(shí),這些系統(tǒng)在數(shù)據(jù)吞吐量、分析查詢(xún)性能、負(fù)載均衡、系統(tǒng)容錯(cuò)等諸多方面仍然存在著不足:在大規(guī)模Tbps 量級(jí)下,這些系統(tǒng)很難有效采集接收大規(guī)模的網(wǎng)絡(luò)流量數(shù)據(jù);在數(shù)據(jù)量累積到PB 量級(jí)時(shí),有效組織數(shù)據(jù)存儲(chǔ)并從中快速的查詢(xún)檢索數(shù)據(jù)仍很難直接支持;同時(shí)這些系統(tǒng)通常關(guān)注于某個(gè)環(huán)節(jié)的處理,沒(méi)有可直接用于網(wǎng)絡(luò)流量數(shù)據(jù)處理的整體系統(tǒng).因此構(gòu)建低延遲、高吞吐、高性能且持續(xù)可靠可擴(kuò)展的網(wǎng)絡(luò)流量大數(shù)據(jù)一體化系統(tǒng),滿(mǎn)足大規(guī)模、實(shí)時(shí)性的需求,仍是當(dāng)前亟待解決的問(wèn)題.
本文針對(duì)上述問(wèn)題,基于業(yè)界已有的研究基礎(chǔ),提出一種面向大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)的實(shí)時(shí)匯聚查詢(xún)平臺(tái),實(shí)現(xiàn)對(duì)大規(guī)模數(shù)據(jù)的匯聚采集、實(shí)時(shí)處理、存儲(chǔ)組織以及快速查詢(xún)分析.對(duì)平臺(tái)中半同步半異步模式的分級(jí)數(shù)據(jù)采集、多分區(qū)隊(duì)列的并行分布式數(shù)據(jù)流處理和基于屬性劃分的數(shù)據(jù)加載、基于抽象數(shù)據(jù)訪(fǎng)問(wèn)驅(qū)動(dòng)的虛分區(qū)式數(shù)據(jù)存儲(chǔ)、基于異步構(gòu)建分級(jí)索引的數(shù)據(jù)檢索查詢(xún)等關(guān)鍵技術(shù)進(jìn)行了深入研究并給出了實(shí)現(xiàn)方案.平臺(tái)具有良好的數(shù)據(jù)讀寫(xiě)并發(fā)度、計(jì)算并發(fā)度,以及良好的可擴(kuò)展性和可維護(hù)性,能有效應(yīng)對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)規(guī)模大和時(shí)效性高的需求.平臺(tái)已在實(shí)際項(xiàng)目中應(yīng)用實(shí)施,本文給出了用例測(cè)試以表明該平臺(tái)的有效性和可用性.
面向大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)的實(shí)時(shí)匯聚查詢(xún)平臺(tái),是針對(duì)海量異構(gòu)數(shù)據(jù)的匯聚采集、存儲(chǔ)管理、查詢(xún)分析的一體化實(shí)時(shí)處理平臺(tái),可對(duì)高速網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行采集和預(yù)處理,并對(duì)流量數(shù)據(jù)的五元組信息(源IP 地址、目的IP 地址、協(xié)議、源端口、目的端口)進(jìn)行提取,可對(duì)接入的網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行合理存儲(chǔ),并對(duì)數(shù)據(jù)報(bào)文五元組信息構(gòu)建索引,可對(duì)數(shù)據(jù)報(bào)文進(jìn)行快速查詢(xún)與檢索,實(shí)現(xiàn)網(wǎng)絡(luò)全流量的回溯.
圖1 是平臺(tái)的系統(tǒng)整體架構(gòu),從左往右主要包括數(shù)據(jù)采集、實(shí)時(shí)處理、存儲(chǔ)計(jì)算、數(shù)據(jù)服務(wù)等模塊,數(shù)據(jù)源中的數(shù)據(jù)通過(guò)各模塊的協(xié)同處理,最終供用戶(hù)使用.
圖1 系統(tǒng)整體架構(gòu)Fig.1 System overview architecture
1)數(shù)據(jù)采集:平臺(tái)支持對(duì)實(shí)時(shí)的網(wǎng)絡(luò)原始流量數(shù)據(jù)的匯聚,也支持對(duì)日志類(lèi)的安全數(shù)據(jù)采集.對(duì)于網(wǎng)絡(luò)流量數(shù)據(jù),通過(guò)分級(jí)專(zhuān)用的采集設(shè)備匯聚網(wǎng)絡(luò)分流過(guò)來(lái)的流量,對(duì)于日志類(lèi)的文本數(shù)據(jù),通過(guò)日志采集軟件增量匯聚.同時(shí)平臺(tái)提供分布式消息中間件,可對(duì)接匯聚采集的流量數(shù)據(jù)和日志數(shù)據(jù).
2)實(shí)時(shí)處理:平臺(tái)提供分布式流式處理系統(tǒng),可對(duì)消息系統(tǒng)中的實(shí)時(shí)數(shù)據(jù)進(jìn)行預(yù)處理,并實(shí)時(shí)的持久化到存儲(chǔ)平臺(tái).對(duì)于流量數(shù)據(jù)將進(jìn)行基于安全規(guī)則的監(jiān)測(cè),同時(shí)為提升整個(gè)系統(tǒng)對(duì)大規(guī)模流量數(shù)據(jù)的存儲(chǔ)量和查詢(xún)分析性能,可通過(guò)會(huì)話(huà)合并、清洗去重等預(yù)處理技術(shù)手段壓縮原始數(shù)據(jù)量;對(duì)于日志類(lèi)安全數(shù)據(jù),支持根據(jù)業(yè)務(wù)需求實(shí)現(xiàn)對(duì)數(shù)據(jù)去重清洗轉(zhuǎn)換等各類(lèi)預(yù)處理功能.
3)存儲(chǔ)計(jì)算:提供對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)和日志類(lèi)安全數(shù)據(jù)的存儲(chǔ)和分析計(jì)算功能.結(jié)構(gòu)化、半結(jié)構(gòu)化數(shù)據(jù)由分布式數(shù)據(jù)庫(kù)存儲(chǔ),非結(jié)構(gòu)化數(shù)據(jù)由分布式文件系統(tǒng)存儲(chǔ),能夠根據(jù)業(yè)務(wù)需求對(duì)數(shù)據(jù)進(jìn)行劃分,使得數(shù)據(jù)合理地寫(xiě)入到平臺(tái)的各個(gè)節(jié)點(diǎn)上.并提供數(shù)據(jù)處理的計(jì)算和分析挖掘功能,包括離線(xiàn)計(jì)算、內(nèi)存計(jì)算等,支持聚類(lèi)分析、特征提取、關(guān)聯(lián)分析、異常檢測(cè)、深度神經(jīng)網(wǎng)絡(luò)等數(shù)據(jù)挖掘算法.具體應(yīng)用包括為存儲(chǔ)到分布式數(shù)據(jù)庫(kù)中的流量數(shù)據(jù)根據(jù)查詢(xún)需求建立索引;對(duì)存儲(chǔ)在分布式文件系統(tǒng)中的非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析等離線(xiàn)處理.
4)數(shù)據(jù)服務(wù):提供數(shù)據(jù)接口服務(wù)和圖形化的交互服務(wù),對(duì)于數(shù)據(jù)報(bào)文提供圖形化的數(shù)據(jù)檢索和下載界面,對(duì)于挖掘分析提供圖形化的分析統(tǒng)計(jì)、挖掘建模的交互分析界面.
平臺(tái)通過(guò)軟硬設(shè)備一體化集成,采用分布式可擴(kuò)展服務(wù)架構(gòu),利用增加節(jié)點(diǎn)擴(kuò)大系統(tǒng)規(guī)模,可實(shí)現(xiàn)整體處理能力的增長(zhǎng),通過(guò)數(shù)據(jù)處理主要環(huán)節(jié)的技術(shù)優(yōu)化,可達(dá)到對(duì)大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)的匯聚接入和實(shí)時(shí)處理的效果.為實(shí)現(xiàn)對(duì)大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)處理的實(shí)時(shí)性,平臺(tái)采用了基于半同步半異步模式的分級(jí)數(shù)據(jù)采集、基于多分區(qū)隊(duì)列的數(shù)據(jù)緩存和流處理、基于抽象數(shù)據(jù)訪(fǎng)問(wèn)驅(qū)動(dòng)的數(shù)據(jù)虛分區(qū)式存儲(chǔ)組織、基于批量構(gòu)建模式的分級(jí)索引數(shù)據(jù)查詢(xún)等關(guān)鍵技術(shù)方案,有效提升了整體處理能力.
網(wǎng)絡(luò)流量數(shù)據(jù)的采集,目前通用的服務(wù)器設(shè)備可以滿(mǎn)足百兆到準(zhǔn)萬(wàn)兆的環(huán)境.而在幾十Gbps 以上數(shù)量級(jí)的網(wǎng)絡(luò)流量數(shù)據(jù)下,因?yàn)橥ㄟ^(guò)網(wǎng)卡收進(jìn)來(lái)的數(shù)據(jù)包,經(jīng)過(guò)協(xié)議棧處理,緩存在內(nèi)核態(tài)空間中,應(yīng)用程序調(diào)用數(shù)據(jù)的時(shí)候,需要將內(nèi)核態(tài)空間的數(shù)據(jù)拷貝到用戶(hù)態(tài)中再使用,這樣帶來(lái)了CPU 的開(kāi)銷(xiāo),而隨著CPU 核數(shù)的增多,多個(gè)核之間交互協(xié)同的開(kāi)銷(xiāo)會(huì)成指數(shù)增長(zhǎng)(如跨NUMA 內(nèi)存訪(fǎng)問(wèn)),所以對(duì)于數(shù)據(jù)量規(guī)模較大的情況下,通過(guò)高端的設(shè)備(如四路、八路服務(wù)器)來(lái)增加CPU 數(shù)量,并不能帶來(lái)流量數(shù)據(jù)收發(fā)解析等處理的整體性能的過(guò)多提升.因此針對(duì)大規(guī)模流量數(shù)據(jù),需要采用分布式的軟硬件架構(gòu)[12].本平臺(tái)采用了半同步半異步模式,利用Scaleout 方式設(shè)計(jì)了分級(jí)處理的可擴(kuò)展技術(shù)架構(gòu),性能彈性靈活擴(kuò)展,可支持幾十Gbps 以上的大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)的實(shí)時(shí)接入.
半同步半異步模式的分級(jí)架構(gòu)中前一級(jí)以異步模式向后一級(jí)分發(fā)數(shù)據(jù),后一級(jí)以同步模式進(jìn)行數(shù)據(jù)的任務(wù)處理,兩者通過(guò)隊(duì)列進(jìn)行相關(guān)信息交互.異步模式可提升執(zhí)行效率,同步模式可簡(jiǎn)化并行難度,半同步半異步整體提升了系統(tǒng)的并行度,可應(yīng)對(duì)大規(guī)模數(shù)據(jù)處理并行的要求.
圖2 是分級(jí)采集流量數(shù)據(jù)的架構(gòu)圖,首先一級(jí)處理主要通過(guò)專(zhuān)用的高性能匯聚分流設(shè)備,將多條雙向鏈路流量接入,對(duì)數(shù)據(jù)包進(jìn)行過(guò)濾,丟棄不需要分析的報(bào)文,并根據(jù)規(guī)則對(duì)流量進(jìn)行負(fù)載均衡分流,保持會(huì)話(huà).二級(jí)處理通過(guò)流量采集設(shè)備,利用協(xié)處理卡釋放服務(wù)器計(jì)算資源,加速網(wǎng)絡(luò)流量處理,實(shí)現(xiàn)零拷貝、無(wú)中斷線(xiàn)速收發(fā)包.三級(jí)處理采用分布式消息系統(tǒng),通過(guò)采集軟件從二級(jí)處理設(shè)備中獲取流量數(shù)據(jù),將五元組數(shù)據(jù)和報(bào)文數(shù)據(jù)組成網(wǎng)絡(luò)包結(jié)構(gòu)體,序列化到消息系統(tǒng)中,以供后續(xù)流處理環(huán)節(jié)對(duì)數(shù)據(jù)進(jìn)一步進(jìn)行分析處理.
圖2 分級(jí)數(shù)據(jù)采集架構(gòu)Fig.2 Hierarchical data collect architecture
一級(jí)處理通常應(yīng)對(duì)上百Gbps 的數(shù)據(jù)規(guī)模,一般存在于骨干網(wǎng)或核心網(wǎng)出口.目前主要使用大型的高端匯聚分流設(shè)備,將通過(guò)分光方式獲取的多條鏈路的雙向流量全部匯聚下來(lái),可采用設(shè)備堆疊或者集群的方式來(lái)支持超大規(guī)模的網(wǎng)絡(luò)環(huán)境.在對(duì)流量匯聚后,將根據(jù)五元組信息,通過(guò)Hash 運(yùn)算把數(shù)據(jù)轉(zhuǎn)發(fā)到后端的二級(jí)處理集群,并使得同一個(gè)流的數(shù)據(jù)轉(zhuǎn)到同一個(gè)節(jié)點(diǎn)之上[13].
二級(jí)處理接收一級(jí)匯聚分流設(shè)備轉(zhuǎn)發(fā)過(guò)來(lái)的流量數(shù)據(jù),通常在幾十Gbps 的數(shù)據(jù)規(guī)模.目前單個(gè)節(jié)點(diǎn)的處理能力遠(yuǎn)不能支持,因此面對(duì)規(guī)模較大的流量數(shù)據(jù),平臺(tái)采用了Scale-out和Scale-up 結(jié)合的方式,通過(guò)可擴(kuò)展的分布式集群來(lái)支持大流量處理.在集群的節(jié)點(diǎn)分布上,根據(jù)流量數(shù)據(jù)的不同類(lèi)型,用不同的節(jié)點(diǎn)處理不同類(lèi)型的流量,比如根據(jù)協(xié)議類(lèi)型,有HTTP、DNS、FTP 等協(xié)議的流量數(shù)據(jù);根據(jù)后期分析的業(yè)務(wù)類(lèi)型,有DDoS 攻擊檢測(cè)、入侵檢測(cè)、郵件監(jiān)測(cè)等不同業(yè)務(wù)的流量數(shù)據(jù),因此在一級(jí)分流時(shí)就將根據(jù)數(shù)據(jù)內(nèi)容,過(guò)濾出對(duì)應(yīng)的數(shù)據(jù)并分發(fā)到相應(yīng)二級(jí)節(jié)點(diǎn)進(jìn)行處理,可通過(guò)增加節(jié)點(diǎn)來(lái)支持不同內(nèi)容的流量數(shù)據(jù),并擴(kuò)大系統(tǒng)支持的數(shù)據(jù)規(guī)模[13].同時(shí)平臺(tái)設(shè)計(jì)中也考慮到集群規(guī)模大帶來(lái)的能耗和成本,可通過(guò)增強(qiáng)單節(jié)點(diǎn)能力降低節(jié)點(diǎn)數(shù)量,來(lái)提升整個(gè)系統(tǒng)的投資回報(bào)率.鑒于現(xiàn)在的CPU 計(jì)算能力已經(jīng)較強(qiáng),所以對(duì)于網(wǎng)絡(luò)流量數(shù)據(jù)處理的主要瓶頸是在數(shù)據(jù)收發(fā)包環(huán)節(jié).通用網(wǎng)卡在數(shù)據(jù)處理時(shí)需發(fā)起CPU 中斷,數(shù)據(jù)包需在內(nèi)核空間和用戶(hù)空間之間轉(zhuǎn)換,此過(guò)程會(huì)占用大量的系統(tǒng)資源.平臺(tái)為了優(yōu)化性能,設(shè)計(jì)支持了零拷貝和專(zhuān)用網(wǎng)卡兩種方式.零拷貝通過(guò)Intel的DPDK 技術(shù),網(wǎng)卡在收到數(shù)據(jù)包時(shí),直接把數(shù)據(jù)存入到用戶(hù)態(tài)空間中,以供應(yīng)用程序調(diào)用,從而減少?gòu)膬?nèi)核態(tài)空間拷貝的開(kāi)銷(xiāo);DPDK 提供指定NUMA 號(hào)來(lái)申請(qǐng)內(nèi)存接口,用戶(hù)可以通過(guò)指定NUMA 號(hào)申請(qǐng)內(nèi)存來(lái)保證CPU 使用就近內(nèi)存,以降低訪(fǎng)存的消耗;同時(shí)DPDK 可利用CPU 的親和性將線(xiàn)程與CPU 綁定,避免運(yùn)行過(guò)程中被隨意調(diào)度而帶來(lái)的頻繁切換開(kāi)銷(xiāo),綜上整體可有數(shù)倍性能的提升[14].專(zhuān)用網(wǎng)卡通過(guò)專(zhuān)用芯片(如FPGA、ASIC)來(lái)加速數(shù)據(jù)包的處理,首先與零拷貝一樣,其避免了內(nèi)核態(tài)到用戶(hù)態(tài)的拷貝,降低了開(kāi)銷(xiāo),同時(shí)作為專(zhuān)用協(xié)處理卡,可根據(jù)分析需求對(duì)高負(fù)載應(yīng)用進(jìn)行負(fù)載卸載.包括數(shù)據(jù)過(guò)濾,通過(guò)五元組、特征碼規(guī)則等過(guò)濾不需分析的流量,以減少CPU 處理的數(shù)據(jù)量;數(shù)據(jù)匹配,對(duì)于報(bào)文內(nèi)容的關(guān)鍵字/正則表達(dá)式匹配等高消耗CPU 的任務(wù),將其卸載到專(zhuān)用網(wǎng)卡上實(shí)現(xiàn),可有效降低CPU 的資源消耗;同時(shí)專(zhuān)用網(wǎng)卡可與CPU 配合,CPU 在對(duì)一條流內(nèi)前部數(shù)據(jù)包分析得出結(jié)論后,即可下發(fā)規(guī)則,讓專(zhuān)用網(wǎng)卡對(duì)該流后續(xù)數(shù)據(jù)包直接轉(zhuǎn)發(fā)或丟棄,無(wú)需再經(jīng)CPU 處理,綜上專(zhuān)用網(wǎng)卡可對(duì)高負(fù)載應(yīng)用卸載,過(guò)濾或降低需CPU 處理的數(shù)據(jù),進(jìn)而帶來(lái)處理能力的提升.
三級(jí)處理支持接入二級(jí)流量采集設(shè)備中的實(shí)時(shí)流量,也支持批量的日志類(lèi)數(shù)據(jù),并通過(guò)分布式消息系統(tǒng)緩存數(shù)據(jù).此級(jí)處理主要包括原始網(wǎng)絡(luò)流量數(shù)據(jù)、批量數(shù)據(jù)的采集和序列化數(shù)據(jù)到消息系統(tǒng)兩個(gè)過(guò)程.原始網(wǎng)絡(luò)流量數(shù)據(jù)的采集與專(zhuān)用設(shè)備對(duì)接,可以多個(gè)節(jié)點(diǎn)并行以提高傳輸速度.獲取流量數(shù)據(jù)過(guò)程中,可通過(guò)基于協(xié)議的單獨(dú)和組合規(guī)則對(duì)流量數(shù)據(jù)進(jìn)行過(guò)濾以減少吞吐數(shù)據(jù)量,并打上精確到納秒級(jí)別的時(shí)間戳,為后續(xù)分析提供精確的時(shí)間索引.采集到的網(wǎng)絡(luò)報(bào)文解析后,對(duì)IP 報(bào)文獲得IP 地址,對(duì)TCP 或者UDP 數(shù)據(jù)包則進(jìn)一步獲取通信端口,進(jìn)而將五元組數(shù)據(jù)和實(shí)際報(bào)文數(shù)據(jù)組成一個(gè)含時(shí)間戳的網(wǎng)絡(luò)包結(jié)構(gòu)體,并將該結(jié)構(gòu)體序列化到消息系統(tǒng)中.
面對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)的大規(guī)模,在采集接入后,還需要解決數(shù)據(jù)實(shí)時(shí)處理的可靠性、時(shí)效性和數(shù)據(jù)加載持久化的可擴(kuò)展性,從而實(shí)現(xiàn)對(duì)數(shù)據(jù)的及時(shí)處理和合理存儲(chǔ),并為后續(xù)的挖掘分析和檢索查詢(xún)墊定基礎(chǔ).
3.2.1 基于多分區(qū)隊(duì)列的數(shù)據(jù)緩存
為了保障數(shù)據(jù)采集后的可靠性和吞吐量,平臺(tái)在架構(gòu)設(shè)計(jì)中引入了分布式消息系統(tǒng)對(duì)數(shù)據(jù)緩存,實(shí)現(xiàn)多點(diǎn)采集的統(tǒng)一維護(hù)與管理.緩存系統(tǒng)使用本地磁盤(pán)對(duì)收到的消息進(jìn)行持久化,克服傳統(tǒng)內(nèi)存瓶頸實(shí)現(xiàn)數(shù)據(jù)的高可靠性,并設(shè)置消息的副本數(shù)大于1,從而有效保障緩存數(shù)據(jù)的可靠.為了提高吞吐量,將消息隊(duì)列拆分為多個(gè)分區(qū),并將每個(gè)分區(qū)位于不同的機(jī)器或者不同的磁盤(pán)上,以保證磁盤(pán)讀寫(xiě)的連續(xù)性.在大數(shù)據(jù)量的情況下,可通過(guò)加大緩存系統(tǒng)主題的分區(qū)數(shù),使得采集數(shù)據(jù)分散到消息系統(tǒng)的各個(gè)節(jié)點(diǎn)的各個(gè)磁盤(pán)上,增加處理的數(shù)據(jù)量,也提升后續(xù)消息訂閱處理時(shí)的并行度.
3.2.2 并行分布式的數(shù)據(jù)流處理
采集的數(shù)據(jù)進(jìn)入緩存系統(tǒng)后,通常需根據(jù)業(yè)務(wù)需求進(jìn)行預(yù)處理并進(jìn)行數(shù)據(jù)持久化操作,此過(guò)程中因節(jié)點(diǎn)宕機(jī)或存儲(chǔ)系統(tǒng)響應(yīng)慢,就會(huì)出現(xiàn)大面積的數(shù)據(jù)丟失.因此,平臺(tái)設(shè)計(jì)采用了并行的分布式流式處理技術(shù),統(tǒng)一從緩存系統(tǒng)中獲取數(shù)據(jù),根據(jù)預(yù)處理的規(guī)則和不同的持久化目標(biāo),構(gòu)建作業(yè)級(jí)容錯(cuò)的實(shí)時(shí)處理拓?fù)洌?5].通過(guò)配置每個(gè)拓?fù)涔?jié)點(diǎn)的并行數(shù),充分利用集群計(jì)算資源達(dá)到較高的并行度,大幅度提高數(shù)據(jù)預(yù)處理和持久化的時(shí)效性;同時(shí)通過(guò)捕獲錯(cuò)誤信息,對(duì)數(shù)據(jù)進(jìn)行回滾,可以保證有節(jié)點(diǎn)故障時(shí)不會(huì)出現(xiàn)數(shù)據(jù)未被執(zhí)行的情況.圖3 展示了流式處理的過(guò)程.
圖3 流式處理過(guò)程Fig.3 Streaming process
3.2.3 基于屬性劃分的數(shù)據(jù)加載
針對(duì)網(wǎng)絡(luò)流量數(shù)據(jù),有五元組等結(jié)構(gòu)化數(shù)據(jù),也有原始報(bào)文等非結(jié)構(gòu)化數(shù)據(jù),平臺(tái)支持分布式數(shù)據(jù)庫(kù)和分布式文件系統(tǒng)來(lái)滿(mǎn)足不同類(lèi)型的數(shù)據(jù)存儲(chǔ),在流式處理環(huán)節(jié)會(huì)根據(jù)數(shù)據(jù)的特性加載到相應(yīng)的存儲(chǔ)系統(tǒng)中.為了適應(yīng)數(shù)據(jù)規(guī)模的擴(kuò)展,數(shù)據(jù)存儲(chǔ)分布策略按照各個(gè)數(shù)據(jù)對(duì)象的屬性值進(jìn)行劃分[16].在數(shù)據(jù)加載時(shí),需按照數(shù)據(jù)的關(guān)鍵字,即劃分屬性,將數(shù)據(jù)寫(xiě)入到相應(yīng)的存儲(chǔ)節(jié)點(diǎn)中.而在分布式文件系統(tǒng)中,由于文件是按照塊的方式分布在多個(gè)節(jié)點(diǎn)上,因此采用文件夾的方式,對(duì)分區(qū)進(jìn)行管理,每個(gè)分區(qū)可以表示一個(gè)文件夾.
網(wǎng)絡(luò)流量數(shù)據(jù)涉及結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù),因此平臺(tái)設(shè)計(jì)提供不同類(lèi)型的存儲(chǔ),采用基于抽象數(shù)據(jù)訪(fǎng)問(wèn)驅(qū)動(dòng)的虛分區(qū)進(jìn)行數(shù)據(jù)組織,用于支持不同場(chǎng)景的存儲(chǔ)需求,底層存儲(chǔ)包括關(guān)系型數(shù)據(jù)庫(kù)、分布式NoSQL 數(shù)據(jù)庫(kù)、分布式文件系統(tǒng)和文本檢索系統(tǒng)等以及這些數(shù)據(jù)存儲(chǔ)和處理系統(tǒng)的復(fù)合[17].平臺(tái)采用軟件中間件的架構(gòu)方式,將底層的存儲(chǔ)系統(tǒng)組織管理起來(lái),對(duì)外提供統(tǒng)一的數(shù)據(jù)存儲(chǔ)服務(wù),并實(shí)現(xiàn)對(duì)各種類(lèi)型數(shù)據(jù)的統(tǒng)一處理[18].架構(gòu)如圖4 所示.
圖4 數(shù)據(jù)統(tǒng)一存儲(chǔ)處理架構(gòu)Fig.4 Architecture of unified data storage and process
架構(gòu)中的抽象數(shù)據(jù)訪(fǎng)問(wèn)驅(qū)動(dòng),是對(duì)底層各種類(lèi)型數(shù)據(jù)訪(fǎng)問(wèn)的統(tǒng)一接口,采用Portable 的設(shè)計(jì),針對(duì)不同的數(shù)據(jù)類(lèi)型,可添加或者裝載新的驅(qū)動(dòng).目前支持?jǐn)?shù)據(jù)庫(kù)訪(fǎng)問(wèn)接口、文件系統(tǒng)接口、文本檢索接口,并可通過(guò)添加新的驅(qū)動(dòng)庫(kù)來(lái)擴(kuò)展其它數(shù)據(jù)訪(fǎng)問(wèn)接口.通過(guò)抽象的數(shù)據(jù)訪(fǎng)問(wèn)驅(qū)動(dòng)層,可以屏蔽數(shù)據(jù)訪(fǎng)問(wèn)的差異細(xì)節(jié),將對(duì)不同類(lèi)型存儲(chǔ)數(shù)據(jù)的訪(fǎng)問(wèn)統(tǒng)一起來(lái),簡(jiǎn)化了系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn),同時(shí)也對(duì)不同數(shù)據(jù)的聯(lián)合查詢(xún)分析提供了支撐基礎(chǔ),可實(shí)現(xiàn)不同類(lèi)型數(shù)據(jù)的通用處理[19].比如將文本檢索和數(shù)據(jù)庫(kù)查詢(xún)相結(jié)合進(jìn)行數(shù)據(jù)分析,在網(wǎng)絡(luò)流量數(shù)據(jù)基于五元組查詢(xún)數(shù)據(jù)報(bào)文的場(chǎng)景中,就可以先通過(guò)關(guān)鍵字檢索到五元組信息,再根據(jù)五元組進(jìn)行數(shù)據(jù)庫(kù)查詢(xún)得到所需數(shù)據(jù)報(bào)文.
平臺(tái)對(duì)數(shù)據(jù)的統(tǒng)一存儲(chǔ)組織,提供對(duì)數(shù)據(jù)的邏輯劃分功能,支持按照數(shù)據(jù)語(yǔ)義的 hash、range、list 和 round-robin 的數(shù)據(jù)劃分策略[20].針對(duì)結(jié)構(gòu)化數(shù)據(jù)處理的數(shù)據(jù)庫(kù)系統(tǒng),每個(gè)數(shù)據(jù)節(jié)點(diǎn)保存整個(gè)數(shù)據(jù)集的一部分.針對(duì)非結(jié)構(gòu)化數(shù)據(jù)處理的分布式文件系統(tǒng)或者文本檢索系統(tǒng),則可以劃分到不同的文件或者文件夾,每個(gè)文件或文件夾保存數(shù)據(jù)集的一部分.
為了適應(yīng)節(jié)點(diǎn)數(shù)的動(dòng)態(tài)擴(kuò)展,平臺(tái)設(shè)計(jì)了一種虛分區(qū)的技術(shù),即分區(qū)和節(jié)點(diǎn)是多對(duì)一的關(guān)系,每個(gè)節(jié)點(diǎn)包含多個(gè)虛分區(qū).每個(gè)表定義時(shí)需要指定一個(gè)節(jié)點(diǎn)組,包含若干數(shù)據(jù)節(jié)點(diǎn).分區(qū)表進(jìn)行存儲(chǔ)劃分時(shí),每個(gè)節(jié)點(diǎn)包含若干分區(qū)(也叫虛分區(qū)),因此采用數(shù)據(jù)劃分的數(shù)據(jù)表的存儲(chǔ)可以分為分區(qū)、節(jié)點(diǎn)和節(jié)點(diǎn)組的三層包含關(guān)系.為了充分利用系統(tǒng)的計(jì)算資源,在多分區(qū)時(shí)對(duì)讀寫(xiě)等負(fù)載進(jìn)行有效調(diào)度,分區(qū)數(shù)量可以設(shè)定為CPU 的核數(shù)×2,或者更多,這樣使得CPU 的每個(gè)核能對(duì)應(yīng)一個(gè)以上分區(qū),避免分區(qū)過(guò)少造成的計(jì)算資源空閑,從而可以在運(yùn)行過(guò)程中根據(jù)不同的負(fù)載模式做相應(yīng)的調(diào)度策略,使得每個(gè)CPU核都能分配到對(duì)應(yīng)任務(wù),從而充分發(fā)揮出節(jié)點(diǎn)的計(jì)算能力.
當(dāng)系統(tǒng)規(guī)模擴(kuò)大時(shí),比如往節(jié)點(diǎn)組中增加新節(jié)點(diǎn)時(shí),需要對(duì)在線(xiàn)數(shù)據(jù)進(jìn)行遷移,以保證節(jié)點(diǎn)組內(nèi)各節(jié)點(diǎn)間的數(shù)據(jù)均衡.采用虛分區(qū)技術(shù),數(shù)據(jù)遷移時(shí)只需將一定數(shù)量的分區(qū)整體遷移到新增節(jié)點(diǎn),避免了重新分區(qū)的開(kāi)銷(xiāo),同時(shí)也保證節(jié)點(diǎn)間的最小數(shù)據(jù)遷移量.
在網(wǎng)絡(luò)流量數(shù)據(jù)分析的需求中,其中典型的應(yīng)用場(chǎng)景是根據(jù)需求檢索查詢(xún)出原始數(shù)據(jù)報(bào)文,以進(jìn)行溯源和深入的內(nèi)容分析,在大規(guī)模數(shù)據(jù)存儲(chǔ)量的環(huán)境下,需要提供從中快速檢索查詢(xún)的技術(shù)方案.為此平臺(tái)設(shè)計(jì)了以分布式列式數(shù)據(jù)庫(kù)為存儲(chǔ)載體,利用全文搜索引擎為數(shù)據(jù)建立二級(jí)索引,通過(guò)異步批處理進(jìn)行數(shù)據(jù)的會(huì)話(huà)合并和索引構(gòu)建的整體方案,來(lái)應(yīng)對(duì)網(wǎng)絡(luò)流量大數(shù)據(jù)量的查詢(xún)挑戰(zhàn).
數(shù)據(jù)存儲(chǔ)使用典型的NoSQL 非關(guān)系數(shù)據(jù)庫(kù)系統(tǒng),采用key-value 模式的數(shù)據(jù)模型,在主鍵上建立索引,可以高效地支持基于主鍵的數(shù)據(jù)查詢(xún)[21].為了支持流量數(shù)據(jù)的快速查詢(xún),平臺(tái)設(shè)計(jì)了以源 IP 地址+目的 IP 地址+協(xié)議+源端口+目的端口+時(shí)間戳為組合的rowkey.根據(jù)實(shí)際數(shù)據(jù)量,對(duì)表進(jìn)行周期性切分,如按天、周進(jìn)行分表;對(duì)表進(jìn)行預(yù)分區(qū),確保數(shù)據(jù)能夠均勻的寫(xiě)入每個(gè)節(jié)點(diǎn),提高系統(tǒng)的吞吐量,降低熱點(diǎn)節(jié)點(diǎn)出現(xiàn)的概率.并通過(guò)啟用數(shù)據(jù)壓縮、增加處理線(xiàn)程數(shù)、調(diào)整塊緩存大小、增加阻塞時(shí)存儲(chǔ)文件數(shù)目等多種手段進(jìn)行整體優(yōu)化.
為實(shí)現(xiàn)對(duì)報(bào)文數(shù)據(jù)的快速檢索,利用分布式搜索引擎對(duì)五元組等關(guān)鍵字段構(gòu)建二級(jí)索引.數(shù)據(jù)報(bào)文的ID 為唯一字段,可與rowkey 一致,源IP 地址、目的IP 地址、協(xié)議、源端口、目的端口、時(shí)間為索引字段,查詢(xún)時(shí)可根據(jù)任意條件組合的索引字段查詢(xún)到ID,再根據(jù)ID 從數(shù)據(jù)庫(kù)中獲取報(bào)文內(nèi)容.考慮網(wǎng)絡(luò)流量的數(shù)據(jù)規(guī)模,容易形成數(shù)據(jù)積壓,平臺(tái)采用了異步批處理模式來(lái)創(chuàng)建索引.批處理主要實(shí)現(xiàn)將文件系統(tǒng)中數(shù)據(jù)包結(jié)構(gòu)的rcfile 文件合并為會(huì)話(huà)結(jié)構(gòu)的avro 文件,并根據(jù)索引字段對(duì)avro 文件生成搜索引擎的索引文件,直接導(dǎo)入搜索引擎,從而繞過(guò)原生的導(dǎo)數(shù)據(jù)建索引同步接口,性能可大幅提升.在對(duì)數(shù)據(jù)報(bào)文建立索引的過(guò)程中,基于時(shí)間窗口將五元組相同的報(bào)文合并成一條會(huì)話(huà),會(huì)話(huà)記錄報(bào)文的五元組信息、起始時(shí)間、結(jié)束時(shí)間、報(bào)文數(shù)量,也可以有效減少數(shù)據(jù)量,提升檢索效率.
本文所設(shè)計(jì)提出的面向大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)的實(shí)時(shí)匯聚查詢(xún)平臺(tái),可應(yīng)對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)的采集、實(shí)時(shí)處理、存儲(chǔ)組織和檢索查詢(xún)的需求,為了檢驗(yàn)本文中關(guān)鍵技術(shù)和整體系統(tǒng)的實(shí)際性能,我們選取了主要環(huán)節(jié)進(jìn)行性能驗(yàn)證.
表1 節(jié)點(diǎn)配置信息和角色Table 1 Node config information and role
測(cè)試環(huán)境中接入20Gbps 網(wǎng)絡(luò)流量數(shù)據(jù),測(cè)試服務(wù)器集群共有30 個(gè)節(jié)點(diǎn),節(jié)點(diǎn)硬件配置和角色分布參見(jiàn)表1.
實(shí)驗(yàn)采用發(fā)包儀構(gòu)造網(wǎng)絡(luò)流量包,持續(xù)發(fā)送20Gbps 的流量數(shù)據(jù)進(jìn)行采集性能、數(shù)據(jù)寫(xiě)入性能、數(shù)據(jù)查詢(xún)性能、構(gòu)建索引性能和可擴(kuò)展性的測(cè)試.
1)采集性能
針對(duì)采集性能實(shí)驗(yàn),分別通過(guò)發(fā)包儀構(gòu)造64b/512b/1024b 的小包,經(jīng)分流設(shè)備向每路采集節(jié)點(diǎn)發(fā)送網(wǎng)絡(luò)數(shù)據(jù)包,最終我們測(cè)試的單節(jié)點(diǎn)采集性能大于4200Mbps,峰值可達(dá)到4900Mbps,且數(shù)據(jù)包越大,單節(jié)點(diǎn)采集性能越高,具體實(shí)驗(yàn)結(jié)果詳見(jiàn)圖5.由于各個(gè)采集節(jié)點(diǎn)是獨(dú)立處理分流的數(shù)據(jù),相互可并行工作,因此整體采集能力可隨節(jié)點(diǎn)線(xiàn)性擴(kuò)展,5 個(gè)節(jié)點(diǎn)即可處理20Gbps 的流量數(shù)據(jù),通過(guò)增加節(jié)點(diǎn)數(shù)量可以處理更大規(guī)模的流量數(shù)據(jù).
圖5 單節(jié)點(diǎn)采集性能對(duì)比Fig.5 Single node collect performance comparison
2)數(shù)據(jù)寫(xiě)入性能
采集的數(shù)據(jù)經(jīng)過(guò)實(shí)時(shí)處理并入庫(kù)存儲(chǔ),以大小為1024b的包為例,如圖6 所示,整體數(shù)據(jù)解析及入庫(kù)能力不低于350萬(wàn)條/s,穩(wěn)定在370 萬(wàn)條/s,峰值可達(dá)390 萬(wàn)條/s.實(shí)驗(yàn)表明通過(guò)多分區(qū)隊(duì)列的數(shù)據(jù)緩存、并行分布式的數(shù)據(jù)流處理和基于屬性劃分的數(shù)據(jù)加載等構(gòu)建的整體流程,可以快速的處理解析流量數(shù)據(jù),并根據(jù)數(shù)據(jù)特征有效的完成數(shù)據(jù)入庫(kù)加載,具備對(duì)大數(shù)據(jù)量的實(shí)時(shí)處理能力.
圖6 數(shù)據(jù)解析入庫(kù)性能Fig.6 Data parsing and writing performance
3)數(shù)據(jù)查詢(xún)性能
為了提高數(shù)據(jù)查詢(xún)性能,在本系統(tǒng)中,我們通過(guò)對(duì)分布式數(shù)據(jù)庫(kù)中存儲(chǔ)的原始數(shù)據(jù)建立二級(jí)索引實(shí)現(xiàn)數(shù)據(jù)的快速查詢(xún)響應(yīng).在1PB 數(shù)據(jù)量下,分別對(duì)本系統(tǒng)查詢(xún)響應(yīng)時(shí)間和直接查詢(xún)?cè)植际綌?shù)據(jù)庫(kù)HBase 的響應(yīng)時(shí)間進(jìn)行了多種場(chǎng)景的測(cè)試,包括雙向源IP 精確查詢(xún)、單向源IP模糊查詢(xún)、雙向源IP 模糊查詢(xún)?cè)?、雙向雙端口精確查詢(xún)和雙向源IP 模糊+雙端口精確查詢(xún).在本系統(tǒng)下精確查詢(xún)響應(yīng)時(shí)間<1s,復(fù)雜查詢(xún)時(shí)間秒級(jí)返回,比直接從分布式數(shù)據(jù)庫(kù)查詢(xún)性能提升30 倍以上,部分場(chǎng)景可達(dá)80 倍的效果,具體測(cè)試數(shù)據(jù)參見(jiàn)表2.結(jié)果表明通過(guò)二級(jí)索引的構(gòu)建,可以大幅提升查詢(xún)數(shù)據(jù)的尋址時(shí)間,同時(shí)結(jié)合五元組數(shù)據(jù)特征構(gòu)建合理的鍵值結(jié)構(gòu),整體可實(shí)現(xiàn)對(duì)流量數(shù)據(jù)查詢(xún)場(chǎng)景的快速響應(yīng).
表2 數(shù)據(jù)查詢(xún)性能對(duì)比Table 2 Data querying performance comparison
4)構(gòu)建索引性能
為了提高建索引的速度和存儲(chǔ)空間利用率,平臺(tái)采用了異步模式來(lái)批量建立索引并進(jìn)行數(shù)據(jù)的會(huì)話(huà)合并,規(guī)避同步模式構(gòu)建索引的時(shí)間消耗,并利用會(huì)話(huà)合并來(lái)減少處理的數(shù)據(jù)量.實(shí)驗(yàn)過(guò)程中我們以小時(shí)的數(shù)據(jù)為單位周期建立索引,索引數(shù)18 億條左右,實(shí)測(cè)每次建立索引10 分鐘內(nèi)完成,系統(tǒng)整體構(gòu)建索引速度平均329 萬(wàn)條/s.如圖7 所示對(duì)比,檢索系統(tǒng)Elasticsearch 的原生索引構(gòu)建速度平均91 萬(wàn)條/s,性能優(yōu)化提升 3.5 倍以上.
圖7 構(gòu)建索引速度Fig.7 Build index speed
5)擴(kuò)展性測(cè)試
為了支持大規(guī)模,系統(tǒng)需要具有良好的擴(kuò)展性,我們選擇了數(shù)據(jù)采集和數(shù)據(jù)寫(xiě)入,通過(guò)對(duì)不同集群規(guī)模的壓力測(cè)試來(lái)驗(yàn)證系統(tǒng)的可擴(kuò)展性.
數(shù)據(jù)采集性能如圖8 所示,以1024b 大小的包為例,由于各個(gè)采集節(jié)點(diǎn)的并行工作,可以看到隨著采集節(jié)點(diǎn)數(shù)的增加,采集性能保持線(xiàn)性增長(zhǎng),驗(yàn)證了數(shù)據(jù)采集的架構(gòu)在可擴(kuò)展性方面有著良好的表現(xiàn).
圖8 數(shù)據(jù)采集性能Fig.8 Data collect performance
數(shù)據(jù)寫(xiě)入性能如圖9 所示,以1024b 大小的包為例,由于系統(tǒng)整體采用分布式的服務(wù)架構(gòu),當(dāng)節(jié)點(diǎn)從5 個(gè)擴(kuò)展到25個(gè),數(shù)據(jù)寫(xiě)入性能從80 萬(wàn)條/s 提升到370 萬(wàn)條/s,基本保持近線(xiàn)性增長(zhǎng),驗(yàn)證了存儲(chǔ)計(jì)算節(jié)點(diǎn)在擴(kuò)展性方面同樣具備良好表現(xiàn).
受限于硬件條件的限制,測(cè)試沒(méi)有針對(duì)更大規(guī)模的數(shù)據(jù)進(jìn)行驗(yàn)證,但通過(guò)實(shí)驗(yàn)可以表明,系統(tǒng)整體具備高吞吐量高性能的處理能力,系統(tǒng)中的模塊采用分布式可擴(kuò)展服務(wù)架構(gòu),通過(guò)擴(kuò)大集群規(guī)模即可實(shí)現(xiàn)系統(tǒng)處理能力的增長(zhǎng),從而支持更大規(guī)模流量數(shù)據(jù)處理的需求.
圖9 數(shù)據(jù)寫(xiě)入性能Fig.9 Data write performance
目前系統(tǒng)已在用戶(hù)項(xiàng)目中使用,實(shí)時(shí)處理20Gbps 的網(wǎng)絡(luò)流量,數(shù)據(jù)存儲(chǔ)量5PB,持續(xù)穩(wěn)定運(yùn)行一年以上,具有很好的應(yīng)用價(jià)值.
本文闡述了面向超大規(guī)模網(wǎng)絡(luò)流量數(shù)據(jù)的實(shí)時(shí)匯聚查詢(xún)平臺(tái)的系統(tǒng)架構(gòu)、關(guān)鍵技術(shù)以及相關(guān)測(cè)試.結(jié)果表明平臺(tái)通過(guò)半同步半異步模式的分級(jí)架構(gòu),能夠接入采集大規(guī)模的網(wǎng)絡(luò)實(shí)時(shí)流量;通過(guò)多分區(qū)隊(duì)列的消息緩存、并行分布式流處理和基于屬性劃分的數(shù)據(jù)加載等手段的優(yōu)化組合能夠?qū)α髁繑?shù)據(jù)進(jìn)行可靠高效的實(shí)時(shí)處理;采用基于抽象數(shù)據(jù)訪(fǎng)問(wèn)驅(qū)動(dòng)的虛分區(qū)式數(shù)據(jù)存儲(chǔ)可對(duì)異構(gòu)數(shù)據(jù)進(jìn)行統(tǒng)一的管理,并具備良好的擴(kuò)展性;通過(guò)異步構(gòu)建的分級(jí)索引架構(gòu),實(shí)現(xiàn)對(duì)海量數(shù)據(jù)報(bào)文的快速查詢(xún)檢索,最終為用戶(hù)提供數(shù)據(jù)匯聚查詢(xún)的一體化平臺(tái),并達(dá)到支撐超大規(guī)模和高實(shí)時(shí)性的目標(biāo),可廣泛應(yīng)用于網(wǎng)絡(luò)流量數(shù)據(jù)的各類(lèi)使用場(chǎng)景.下一步,我們會(huì)針對(duì)五元組信息外的條件檢索查詢(xún)場(chǎng)景進(jìn)行研究并提出更高效的數(shù)據(jù)存儲(chǔ)、索引和查詢(xún)優(yōu)化方法,并針對(duì)更為復(fù)雜的流量數(shù)據(jù)分析挖掘需求提供解決方案.