版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
基于物聯(lián)網(wǎng)的復(fù)雜裝備狀態(tài)監(jiān)測(cè)實(shí)時(shí)流數(shù)據(jù)處理框架
0狀態(tài)監(jiān)測(cè)系統(tǒng)面臨的挑戰(zhàn)狀態(tài)監(jiān)控是對(duì)運(yùn)行設(shè)備的重要屬性參數(shù)進(jìn)行監(jiān)控,并評(píng)估是否運(yùn)行的正常監(jiān)控行為。物聯(lián)網(wǎng)技術(shù)的發(fā)展為大型復(fù)雜裝備狀態(tài)監(jiān)測(cè)提供了新的思路。基于物聯(lián)網(wǎng)的狀態(tài)監(jiān)測(cè)對(duì)工業(yè)產(chǎn)品提出了智能化需求,通過智能器件將工業(yè)產(chǎn)品接入到互聯(lián)網(wǎng)上,人們可以對(duì)這些產(chǎn)品進(jìn)行識(shí)別、定位和監(jiān)控。這種基于物聯(lián)網(wǎng)的狀態(tài)監(jiān)測(cè)具有全面感知、可靠傳遞、智能化處理等新技術(shù)特點(diǎn),主要表現(xiàn)在以下方面:(1)復(fù)雜裝備智能化與動(dòng)態(tài)化要求狀態(tài)監(jiān)測(cè)系統(tǒng)具有動(dòng)態(tài)接入能力和彈性計(jì)算能力。嵌入到大型復(fù)雜裝備中的智能部件通常具有處理器、操作系統(tǒng)和處理軟件等,能夠通過以太網(wǎng)、GPRS等方式接入物聯(lián)網(wǎng)并與狀態(tài)監(jiān)控主站程序進(jìn)行交互。此外,設(shè)備開工率和開工時(shí)間在工業(yè)生產(chǎn)淡旺季的波動(dòng),以及設(shè)備的投入使用、維修、報(bào)廢等因素,導(dǎo)致狀態(tài)監(jiān)測(cè)系統(tǒng)數(shù)據(jù)處理和存儲(chǔ)的壓力難以預(yù)估。因此,狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)必須提供不同的方式來動(dòng)態(tài)接入監(jiān)測(cè)設(shè)備,并且具備一定彈性的計(jì)算能力。(2)設(shè)備類型多、監(jiān)測(cè)數(shù)據(jù)復(fù)雜要求狀態(tài)監(jiān)測(cè)系統(tǒng)具備通用性和可擴(kuò)展性。物聯(lián)網(wǎng)被廣泛應(yīng)用于交通、發(fā)電、工程機(jī)械、航空等領(lǐng)域的復(fù)雜裝備狀態(tài)監(jiān)測(cè),設(shè)備類型多樣、數(shù)量多、監(jiān)控和分析應(yīng)用的需求復(fù)雜。許多設(shè)備生產(chǎn)商根據(jù)實(shí)際需要,定義了專用的狀態(tài)監(jiān)控?cái)?shù)據(jù)傳輸協(xié)議,不同生產(chǎn)制造商之間缺少必要的數(shù)據(jù)傳輸協(xié)議標(biāo)準(zhǔn)。這要求狀態(tài)監(jiān)測(cè)系統(tǒng)提供一種通用的數(shù)據(jù)處理解決方案,能夠識(shí)別、解析不同領(lǐng)域不同設(shè)備的數(shù)據(jù)傳輸協(xié)議,對(duì)不同的數(shù)據(jù)報(bào)文進(jìn)行正確處理。(3)狀態(tài)監(jiān)測(cè)持續(xù)時(shí)間長、數(shù)據(jù)量大要求狀態(tài)監(jiān)測(cè)系統(tǒng)能夠?qū)?shù)據(jù)進(jìn)行高效實(shí)時(shí)的處理與存儲(chǔ)。由于物聯(lián)網(wǎng)廣泛接入的特點(diǎn),基于物聯(lián)網(wǎng)的復(fù)雜裝備狀態(tài)監(jiān)測(cè)通常具有設(shè)備多、數(shù)據(jù)量大的特點(diǎn)。以某工程機(jī)械生產(chǎn)商為例,在線監(jiān)測(cè)5萬臺(tái)設(shè)備一天的監(jiān)測(cè)數(shù)據(jù)量可達(dá)22~25G,每秒處理的工況數(shù)可達(dá)8萬個(gè)。此外,狀態(tài)監(jiān)測(cè)數(shù)據(jù)是一種典型的流式數(shù)據(jù),具有持續(xù)不斷、數(shù)據(jù)量大、規(guī)模及順序無法預(yù)知及時(shí)效性高等特點(diǎn)。因此,狀態(tài)監(jiān)測(cè)系統(tǒng)必須能對(duì)大量流式數(shù)據(jù)進(jìn)行高效實(shí)時(shí)處理,并提供快速可靠的工業(yè)大數(shù)據(jù)存儲(chǔ)查詢策略。(4)狀態(tài)監(jiān)測(cè)業(yè)務(wù)需求個(gè)性化要求狀態(tài)監(jiān)測(cè)系統(tǒng)具備支持各種上層應(yīng)用集成的能力。對(duì)于狀態(tài)監(jiān)測(cè)數(shù)據(jù),不同企業(yè)和人員有不同的使用需求,例如,設(shè)備購買者關(guān)注設(shè)備的實(shí)時(shí)運(yùn)行狀態(tài);設(shè)備維修人員關(guān)注設(shè)備的異常數(shù)據(jù)和故障診斷,并以此合理安排設(shè)備維修計(jì)劃;企業(yè)決策人員關(guān)注監(jiān)測(cè)數(shù)據(jù)的統(tǒng)計(jì)分析,作為企業(yè)經(jīng)營決策的依據(jù)。此外,狀態(tài)監(jiān)測(cè)系統(tǒng)還需要支撐上層遠(yuǎn)程控制、實(shí)時(shí)數(shù)據(jù)訂閱預(yù)警等應(yīng)用需求。因此,狀態(tài)監(jiān)測(cè)系統(tǒng)需要支持上層應(yīng)用、遠(yuǎn)程控制以及數(shù)據(jù)訪問等集成,滿足不同用戶的分析及控制需要。針對(duì)以上問題,國內(nèi)外學(xué)者和研究機(jī)構(gòu)已經(jīng)從不同角度開展了相關(guān)研究。在工業(yè)監(jiān)控領(lǐng)域,各種類型的數(shù)據(jù)采集與監(jiān)視控制系統(tǒng)(SupervisoryControlandDataAcquisition,SCADA)系統(tǒng)已經(jīng)廣泛地應(yīng)用在各類工業(yè)生產(chǎn)線的管理中,但這些系統(tǒng)主要是面向工業(yè)生產(chǎn)過程監(jiān)控,難以適應(yīng)海量實(shí)時(shí)流數(shù)據(jù)處理及動(dòng)態(tài)接入等要求。在流數(shù)據(jù)處理方面,數(shù)據(jù)流管理系統(tǒng)(DataStreamManagementSystem,DSMS)是近年來國內(nèi)外學(xué)者的一個(gè)研究熱點(diǎn)。流處理引擎(StreamProcessingEngine,SPE)是進(jìn)行實(shí)時(shí)流數(shù)據(jù)處理的一種主流方法。第一代SPE研究成果包括麻省理工與布朗大學(xué)的Aurora、斯坦福的STREAM、加州伯克利的TelegraphCQ以及筑波大學(xué)的StreamSpinner等;第二代SPE擴(kuò)展了分布式處理等特性,包括麻省理工與布朗大學(xué)的Borealis、IBM的S4、Twitter的Storm以及Yahoo的SPADE等;第三代SPE通過與云計(jì)算等技術(shù)相結(jié)合,具備了彈性擴(kuò)展、動(dòng)態(tài)接入等能力。以上研究為海量狀態(tài)監(jiān)測(cè)實(shí)時(shí)流數(shù)據(jù)處理提供了可能的解決方案,但對(duì)于狀態(tài)監(jiān)測(cè)數(shù)據(jù)類型復(fù)雜、業(yè)務(wù)需求多變以及上層應(yīng)用集成等方面的需求,傳統(tǒng)SPE的解決能力有限。文獻(xiàn)基于StreamSpinner,開發(fā)了服務(wù)器磁盤狀態(tài)監(jiān)測(cè)系統(tǒng),通過配置文件的方式對(duì)不同的監(jiān)測(cè)數(shù)據(jù)進(jìn)行定制,具有一定的通用性。但由于其只針對(duì)服務(wù)器監(jiān)控單一領(lǐng)域,接收的數(shù)據(jù)類型及形式有限,對(duì)于生產(chǎn)商自定義協(xié)議無法做到通用支持;此外,其系統(tǒng)設(shè)計(jì)沒有給出對(duì)狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理業(yè)務(wù)流程定制的解決方案。在海量監(jiān)測(cè)數(shù)據(jù)的存儲(chǔ)管理方面,一種主流方式是通過流處理引擎進(jìn)行數(shù)據(jù)存儲(chǔ)與查詢,但傳統(tǒng)SPE通常不支持大數(shù)據(jù)存儲(chǔ),精確查詢的性能較低,且喪失了傳統(tǒng)數(shù)據(jù)庫已有的查詢檢索等算法優(yōu)勢(shì),不能滿足監(jiān)測(cè)數(shù)據(jù)存儲(chǔ)管理的需求;第二種方式是將流處理引擎與傳統(tǒng)數(shù)據(jù)庫相結(jié)合,文獻(xiàn)設(shè)計(jì)了一種基于關(guān)系數(shù)據(jù)庫MonetDB的流處理引擎,結(jié)合了數(shù)據(jù)庫的已有優(yōu)勢(shì);但其數(shù)據(jù)存儲(chǔ)仍然是基于關(guān)系數(shù)據(jù)庫的模型,可擴(kuò)展性較差,當(dāng)數(shù)據(jù)量過大時(shí)性能會(huì)明顯下降,設(shè)備與工況的動(dòng)態(tài)增加,會(huì)使其處理能力達(dá)到瓶頸?;谝陨戏治?本文通過對(duì)基于物聯(lián)網(wǎng)復(fù)雜裝備狀態(tài)監(jiān)測(cè)的系統(tǒng)層次及核心業(yè)務(wù)進(jìn)行歸納分析,給出基于物聯(lián)網(wǎng)復(fù)雜裝備狀態(tài)監(jiān)測(cè)實(shí)時(shí)流數(shù)據(jù)處理系統(tǒng)框架;通過分布式流水線計(jì)算,對(duì)海量實(shí)時(shí)流數(shù)據(jù)處理及彈性計(jì)算進(jìn)行支持;通過定義系統(tǒng)模型,滿足系統(tǒng)在數(shù)據(jù)處理業(yè)務(wù)、協(xié)議等方面的通用性;基于非結(jié)構(gòu)化數(shù)據(jù)庫,提出兩種支持狀態(tài)監(jiān)測(cè)海量數(shù)據(jù)存儲(chǔ)與查詢的工況數(shù)據(jù)庫設(shè)計(jì)方式。1狀態(tài)監(jiān)測(cè)數(shù)據(jù)的系統(tǒng)需分析1.1數(shù)據(jù)分析與處理基于物聯(lián)網(wǎng)的復(fù)雜裝備狀態(tài)監(jiān)測(cè)系統(tǒng)架構(gòu)包括感知層、傳輸層和應(yīng)用層,如圖1所示。感知層通過傳感器、智能終端等技術(shù),實(shí)現(xiàn)物體的信息采集和對(duì)象識(shí)別,并經(jīng)由傳輸層快速、可靠、安全地接入和傳輸?shù)綉?yīng)用層所在的系統(tǒng)主站。應(yīng)用層是物聯(lián)網(wǎng)狀態(tài)監(jiān)測(cè)的上層軟件系統(tǒng),具體又可分為數(shù)據(jù)處理、數(shù)據(jù)分析和業(yè)務(wù)支持三層。數(shù)據(jù)處理層主要用于狀態(tài)監(jiān)測(cè)實(shí)時(shí)流數(shù)據(jù)處理以及大數(shù)據(jù)存儲(chǔ);數(shù)據(jù)分析層對(duì)監(jiān)測(cè)數(shù)據(jù)進(jìn)行數(shù)據(jù)挖掘、故障診斷、壽命預(yù)測(cè)等分析;業(yè)務(wù)支持層在數(shù)據(jù)處理與數(shù)據(jù)分析的基礎(chǔ)上,為企業(yè)和用戶提供各種具體應(yīng)用系統(tǒng),如運(yùn)維系統(tǒng)、決策系統(tǒng)、實(shí)時(shí)監(jiān)控系統(tǒng)等。根據(jù)以上分析可知,狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理在該體系結(jié)構(gòu)中起到了承上啟下的重要作用,它從傳輸層接收狀態(tài)監(jiān)測(cè)實(shí)時(shí)數(shù)據(jù)并進(jìn)行解析處理,對(duì)處理后的數(shù)據(jù)進(jìn)行存儲(chǔ)與管理;它是上層分析與應(yīng)用的基礎(chǔ),也是上層應(yīng)用與設(shè)備進(jìn)行交互的橋梁。目前,許多狀態(tài)監(jiān)測(cè)系統(tǒng)在設(shè)計(jì)時(shí)并沒有將數(shù)據(jù)處理和數(shù)據(jù)分析進(jìn)行解耦,對(duì)數(shù)據(jù)處理的共性需求和基礎(chǔ)作用關(guān)注不夠。這就導(dǎo)致底層數(shù)據(jù)處理與上層分析的系統(tǒng)靈活性下降,數(shù)據(jù)處理流程的變動(dòng)可能會(huì)影響分析處理的實(shí)現(xiàn),反之亦然。此外,狀態(tài)監(jiān)測(cè)流數(shù)據(jù)處理對(duì)實(shí)時(shí)性的要求通常比數(shù)據(jù)分析要高,將實(shí)時(shí)數(shù)據(jù)處理與數(shù)據(jù)分析相耦合,會(huì)導(dǎo)致數(shù)據(jù)處理整體性能下降。本文研究的基于物聯(lián)網(wǎng)復(fù)雜裝備狀態(tài)監(jiān)測(cè)流數(shù)據(jù)處理系統(tǒng)位于數(shù)據(jù)處理層,通過將狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理與數(shù)據(jù)分析業(yè)務(wù)進(jìn)行剝離,系統(tǒng)設(shè)計(jì)的主要目標(biāo)是:支持以多種方式接入狀態(tài)監(jiān)測(cè)數(shù)據(jù),對(duì)狀態(tài)監(jiān)測(cè)實(shí)時(shí)流處理業(yè)務(wù)進(jìn)行建模,對(duì)海量工況數(shù)據(jù)進(jìn)行解析處理、存儲(chǔ)與管理,對(duì)狀態(tài)監(jiān)測(cè)數(shù)據(jù)傳輸協(xié)議進(jìn)行通用定制,并向數(shù)據(jù)分析層以及業(yè)務(wù)支持層提供應(yīng)用集成方式。1.2高效數(shù)據(jù)存儲(chǔ)基于物聯(lián)網(wǎng)的復(fù)雜裝備狀態(tài)監(jiān)測(cè)實(shí)時(shí)流數(shù)據(jù)處理系統(tǒng)(簡稱狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng))位于物聯(lián)網(wǎng)狀態(tài)監(jiān)測(cè)體系結(jié)構(gòu)中的數(shù)據(jù)處理層,其核心業(yè)務(wù)包括實(shí)時(shí)數(shù)據(jù)處理、工業(yè)大數(shù)據(jù)存儲(chǔ)、狀態(tài)監(jiān)測(cè)數(shù)據(jù)管理、模型與基礎(chǔ)數(shù)據(jù)管理、應(yīng)用集成及遠(yuǎn)程控制六個(gè)模塊。核心業(yè)務(wù)的參與者包括系統(tǒng)管理員、企業(yè)的設(shè)備運(yùn)維人員、決策人員、設(shè)備的購買者以及上層應(yīng)用與上層用戶等。圖2描述了狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)的具體業(yè)務(wù)及關(guān)系。(1)實(shí)時(shí)數(shù)據(jù)處理實(shí)時(shí)數(shù)據(jù)處理是系統(tǒng)的基礎(chǔ)核心功能,用于部署運(yùn)行狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理業(yè)務(wù)邏輯,主要供系統(tǒng)管理員使用。狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理流程的主要功能包括:(1)支持通過以太網(wǎng)、GPRS、離線批量上傳等方式對(duì)狀態(tài)監(jiān)測(cè)數(shù)據(jù)進(jìn)行接收;(2)對(duì)數(shù)據(jù)進(jìn)行校驗(yàn)、解密、解壓縮、解析以及數(shù)據(jù)轉(zhuǎn)換、標(biāo)準(zhǔn)化等操作;(3)對(duì)狀態(tài)監(jiān)測(cè)數(shù)據(jù)的歸屬設(shè)備進(jìn)行正識(shí)別等。實(shí)時(shí)流數(shù)據(jù)處理完成后,可以根據(jù)需要對(duì)工況數(shù)據(jù)進(jìn)行存儲(chǔ)或訂閱推送。(2)海量數(shù)據(jù)存儲(chǔ)由于后續(xù)分析需要,系統(tǒng)需對(duì)海量工況數(shù)據(jù)進(jìn)行存儲(chǔ)。根據(jù)工況數(shù)據(jù)描述,綜合考慮安全、成本、設(shè)備及數(shù)據(jù)類型和數(shù)據(jù)量等因素,給出一種靈活、簡便、易擴(kuò)展、可管理的數(shù)據(jù)存儲(chǔ)方案。由于不同企業(yè)及用戶的存在,需要考慮不同用戶間的數(shù)據(jù)安全與隔離,給出合理的數(shù)據(jù)存儲(chǔ)策略(即數(shù)據(jù)分區(qū)、轉(zhuǎn)儲(chǔ)等的規(guī)范等)。海量數(shù)據(jù)存儲(chǔ)主要供系統(tǒng)管理員及上層應(yīng)用使用。(3)監(jiān)測(cè)數(shù)據(jù)管理該核心業(yè)務(wù)主要包括對(duì)狀態(tài)監(jiān)測(cè)數(shù)據(jù)進(jìn)行管理與分析等一系列功能。系統(tǒng)管理員、上層用戶(如企業(yè)的決策人員、運(yùn)維人員、業(yè)主)通過監(jiān)測(cè)數(shù)據(jù)管理,能夠進(jìn)行歷史數(shù)據(jù)查詢、統(tǒng)計(jì)、可視化及異常信息查看等操作。監(jiān)測(cè)數(shù)據(jù)管理還可將實(shí)時(shí)狀態(tài)監(jiān)測(cè)數(shù)據(jù)推送給上層應(yīng)用系統(tǒng);可提供一些簡單、可快速處理的分析功能。(4)模型及基礎(chǔ)數(shù)據(jù)管理狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)需要對(duì)數(shù)據(jù)處理流程、數(shù)據(jù)傳輸協(xié)議、設(shè)備基礎(chǔ)信息以及用戶信息等進(jìn)行管理,才能正確完成狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理業(yè)務(wù)。系統(tǒng)管理員和企業(yè)用戶通過協(xié)議管理,可以定義不同的狀態(tài)監(jiān)測(cè)數(shù)據(jù)傳輸協(xié)議,并提供通用的數(shù)據(jù)解析規(guī)則及數(shù)據(jù)封包規(guī)則。通過業(yè)務(wù)流程管理,用戶可以定義狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理的具體邏輯與業(yè)務(wù)流程。(5)應(yīng)用集成狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)作為上層分析與應(yīng)用系統(tǒng)的共性支撐,應(yīng)提供統(tǒng)一的上層應(yīng)用集成接口,以滿足上層應(yīng)用對(duì)數(shù)據(jù)處理系統(tǒng)歷史數(shù)據(jù)訪問、實(shí)時(shí)數(shù)據(jù)查詢、數(shù)據(jù)訂閱等需要。(6)遠(yuǎn)程控制不同領(lǐng)域及企業(yè)對(duì)遠(yuǎn)程狀態(tài)監(jiān)控的需求各不相同,狀態(tài)監(jiān)控系統(tǒng)屬于業(yè)務(wù)支撐層(如圖1),但狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)作為上層應(yīng)用與設(shè)備之間的通信中轉(zhuǎn),需能識(shí)別上層應(yīng)用的命令,對(duì)遠(yuǎn)程控制數(shù)據(jù)進(jìn)行封裝與發(fā)送;同時(shí)將設(shè)備返回的應(yīng)答推送給上層狀態(tài)監(jiān)控應(yīng)用。2數(shù)據(jù)庫、模型層和應(yīng)用層根據(jù)核心業(yè)務(wù)需求分析,本文給出復(fù)雜裝備狀態(tài)監(jiān)測(cè)實(shí)時(shí)流數(shù)據(jù)處理框架(如圖3),包括數(shù)據(jù)層、運(yùn)行層、模型層、工具層和應(yīng)用層五層架構(gòu),以及二次開發(fā)輔助工具和實(shí)時(shí)運(yùn)行監(jiān)控等功能模塊。該框架可以支持多種上層應(yīng)用與用戶集成使用。(1)數(shù)據(jù)層包括系統(tǒng)外部數(shù)據(jù)和內(nèi)部數(shù)據(jù)。外部數(shù)據(jù)是指系統(tǒng)與設(shè)備之間交互的數(shù)據(jù)。內(nèi)部數(shù)據(jù)是指系統(tǒng)處理的狀態(tài)監(jiān)測(cè)數(shù)據(jù)、模型、基礎(chǔ)信息數(shù)據(jù)等,內(nèi)部數(shù)據(jù)的存儲(chǔ)管理采用多種類型數(shù)據(jù)庫來完成,非結(jié)構(gòu)化數(shù)據(jù)庫用于支持海量工況數(shù)據(jù)的存儲(chǔ)和查詢;內(nèi)存數(shù)據(jù)庫用于數(shù)據(jù)處理中間結(jié)果的緩存以及資源加載;結(jié)構(gòu)化數(shù)據(jù)庫用于存儲(chǔ)系統(tǒng)模型和基礎(chǔ)信息數(shù)據(jù)。(2)運(yùn)行層用于部署、運(yùn)行狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理業(yè)務(wù),進(jìn)行狀態(tài)監(jiān)測(cè)實(shí)時(shí)流數(shù)據(jù)處理以及海量數(shù)據(jù)存儲(chǔ)。該層包括分布式SPE、遠(yuǎn)程控制支撐,以及所需的模型解釋引擎、配置、部署、監(jiān)控工具。數(shù)據(jù)處理業(yè)務(wù)流程可通過模型層中拓?fù)淠P偷亩ㄖ茖?shí)現(xiàn)(在3.2節(jié)中詳細(xì)介紹),拓?fù)鋵?shí)例必須在該層提供的實(shí)時(shí)流處理引擎中進(jìn)行部署后,才能實(shí)際運(yùn)行。(3)模型層用于對(duì)框架中的協(xié)議模型、處理單元、拓?fù)淠P?、訂閱模型及預(yù)警模型等進(jìn)行管理。采用模型驅(qū)動(dòng)的方式,用戶可對(duì)狀態(tài)監(jiān)測(cè)數(shù)據(jù)傳輸協(xié)議、數(shù)據(jù)處理業(yè)務(wù)流程、數(shù)據(jù)訂閱方案及數(shù)據(jù)預(yù)警方案等進(jìn)行描述與定義。該層同時(shí)提供了基于權(quán)限的定制規(guī)則以及模型實(shí)例管理功能。運(yùn)行層是模型運(yùn)行的容器,工具層為模型層提供了必要的模型定制工具。(4)工具層在模型層及運(yùn)行層的基礎(chǔ)上,為系統(tǒng)提供模型管理、數(shù)據(jù)查詢分析及基礎(chǔ)信息管理等工具,具體包括對(duì)5種模型的定制工具、數(shù)據(jù)訂閱及實(shí)時(shí)數(shù)據(jù)查看、數(shù)據(jù)預(yù)警及警報(bào)信息查看、歷史數(shù)據(jù)查詢,以及設(shè)備、用戶與系統(tǒng)基礎(chǔ)數(shù)據(jù)管理等。(5)應(yīng)用層泛指用戶在以上框架的基礎(chǔ)上,自行開發(fā)的各種上層分析應(yīng)用系統(tǒng)。狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理的上層應(yīng)用通常包括各種運(yùn)維及遠(yuǎn)程控制系統(tǒng)、統(tǒng)計(jì)分析及決策系統(tǒng)、企業(yè)門戶及移動(dòng)終端等。應(yīng)用層通過應(yīng)用集成接口與工具層進(jìn)行集成,利用系統(tǒng)提供的工具,用戶可定制出滿足特定業(yè)務(wù)需求的應(yīng)用系統(tǒng),工具層則對(duì)不同的應(yīng)用系統(tǒng)提供共性支撐(如用戶管理、數(shù)據(jù)查詢等)。此外,通過二次開發(fā)輔助工具,用戶可以根據(jù)實(shí)際需要擴(kuò)展框架模型、開發(fā)系統(tǒng)工具。實(shí)時(shí)運(yùn)行監(jiān)控對(duì)實(shí)時(shí)流處理進(jìn)行狀態(tài)控制、流量統(tǒng)計(jì)、日志記錄以及服務(wù)器監(jiān)測(cè)等。本文將對(duì)框架中的分布式實(shí)時(shí)流處理原理、處理單元與拓?fù)淠P?、協(xié)議模型和大數(shù)據(jù)存儲(chǔ)等關(guān)鍵技術(shù)分別進(jìn)行介紹。3狀態(tài)監(jiān)測(cè)的實(shí)時(shí)流程處理3.1數(shù)據(jù)處理模塊狀態(tài)監(jiān)測(cè)數(shù)據(jù)是一種典型的流式數(shù)據(jù),具有連續(xù)不斷、數(shù)據(jù)量大、規(guī)模及順序無法預(yù)知等特點(diǎn)。因此,單臺(tái)計(jì)算機(jī)的處理效率很難滿足海量數(shù)據(jù)的處理需要,狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理需采用分布式計(jì)算模式,并充分考慮流式數(shù)據(jù)的處理特點(diǎn)。流水線計(jì)算模型可以很好地適應(yīng)狀態(tài)監(jiān)測(cè)流數(shù)據(jù)處理特點(diǎn)。不同領(lǐng)域復(fù)雜裝備狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理業(yè)務(wù)是總體趨同、局部差異化的。通過將復(fù)雜處理流程劃分為不同的處理邏輯單元,能夠充分利用系統(tǒng)的計(jì)算資源,提高系統(tǒng)的通用性和復(fù)用性。為敘述方便,本文給出一個(gè)典型的狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理業(yè)務(wù)如圖4a所示,包括數(shù)據(jù)接收、協(xié)議識(shí)別、報(bào)文解析、設(shè)備識(shí)別、數(shù)據(jù)存儲(chǔ)5個(gè)處理單元。采用流水線處理技術(shù),可定義處理周期其中:Ti為第i個(gè)處理單元執(zhí)行所需時(shí)間,d為分段后由于單元間數(shù)據(jù)傳輸、調(diào)度等造成的固定延遲代價(jià)。那么,處理n條數(shù)據(jù)的時(shí)間T=(n+5-1)·Δt(如圖4b)。在流數(shù)據(jù)處理場(chǎng)景下,由于狀態(tài)數(shù)據(jù)源源不斷地到來,即n→∞;通過調(diào)整處理單元的邏輯與大小,使段處理單元的時(shí)間近似相同,則相比于未采用流水作業(yè)總時(shí)間5·n·Δt,流水線技術(shù)將數(shù)據(jù)處理速度提高了近5倍。在圖3所示的系統(tǒng)框架中,運(yùn)行層的流處理引擎采用流水線技術(shù),在運(yùn)行時(shí),將業(yè)務(wù)流程處理單元分配到集群的不同機(jī)器節(jié)點(diǎn)上,并集中監(jiān)控與調(diào)度整體業(yè)務(wù)的運(yùn)行,保證狀態(tài)監(jiān)測(cè)實(shí)時(shí)流數(shù)據(jù)處理有序進(jìn)行。在實(shí)際運(yùn)行中,為了提高監(jiān)測(cè)數(shù)據(jù)處理性能,可對(duì)處理單元設(shè)置不同的并行度以提高計(jì)算效率,通過Δt與處理單元并行度比例的調(diào)整,可對(duì)狀態(tài)監(jiān)測(cè)實(shí)時(shí)流數(shù)據(jù)處理的性能進(jìn)行調(diào)優(yōu)。流水線技術(shù)方式很好地提高了系統(tǒng)業(yè)務(wù)的靈活性與可復(fù)用性,不同領(lǐng)域狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理業(yè)務(wù)存在局部差異,通過流程解耦,可分別對(duì)這些個(gè)性需求開發(fā)定義不同的數(shù)據(jù)處理單元,并可根據(jù)不同監(jiān)測(cè)業(yè)務(wù)定制處理流程,提高系統(tǒng)的通用性和復(fù)用性。3.2狀態(tài)監(jiān)測(cè)的實(shí)時(shí)過程處理3.2.1狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理采用流水線技術(shù)對(duì)狀態(tài)監(jiān)測(cè)數(shù)據(jù)進(jìn)行分布式實(shí)時(shí)流處理,系統(tǒng)首先要支持處理單元的注冊(cè)與數(shù)據(jù)處理流程定制,本文對(duì)處理單元(ProcessUnit)的定義如下:定義1處理單元。實(shí)現(xiàn)了狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理具體業(yè)務(wù)功能的可復(fù)用軟件模塊,可用來構(gòu)造數(shù)據(jù)處理業(yè)務(wù)流程。采用構(gòu)件化思想對(duì)處理單元進(jìn)行設(shè)計(jì),使處理單元本身可插拔、可替換,有助于避免重復(fù)基礎(chǔ)開發(fā)、提升開發(fā)效率以及實(shí)現(xiàn)軟件復(fù)用和功能的即插即用。不同處理單元之間可能存在數(shù)據(jù)交互,因此需要對(duì)其輸入輸出,即實(shí)時(shí)流處理的數(shù)據(jù)項(xiàng)進(jìn)行標(biāo)準(zhǔn)化定義。實(shí)時(shí)流處理的數(shù)據(jù)項(xiàng)Tuple由多個(gè)字段及屬性值組成,包括離散有序的時(shí)間戳t、監(jiān)測(cè)對(duì)象唯一標(biāo)志d和監(jiān)測(cè)數(shù)據(jù)s,可記為三元組:Tuple=〈t,d,s〉。其中時(shí)間戳t代表數(shù)據(jù)到來的時(shí)間點(diǎn)及其先后順序。在未標(biāo)志數(shù)據(jù)發(fā)送時(shí)間的情況下,數(shù)據(jù)項(xiàng)s由多組key-value組成,可用于表示狀態(tài)監(jiān)測(cè)數(shù)據(jù)及其他信息,監(jiān)測(cè)的具體數(shù)據(jù)值存放在value中。標(biāo)準(zhǔn)化輸入輸出后,可對(duì)處理單元進(jìn)行定義??蚣芏x處理單元為一個(gè)五元組:其中:input和output是處理單元的標(biāo)準(zhǔn)化輸入輸出;logic是處理單元自身的邏輯實(shí)現(xiàn);control代表處理單元運(yùn)行時(shí),上層用戶或應(yīng)用對(duì)其可能的參數(shù)輸入。處理單元一般包含一個(gè)輸入與一個(gè)輸出,輸入和輸出至少定義一個(gè)。處理單元各自實(shí)現(xiàn)了獨(dú)立的功能,單元之間松散耦合,存放在框架的處理單元集中。以3.1節(jié)所列的數(shù)據(jù)處理流程為例(如圖4a),對(duì)數(shù)據(jù)接收、協(xié)議識(shí)別、協(xié)議解析、設(shè)備識(shí)別、數(shù)據(jù)存儲(chǔ)進(jìn)行構(gòu)件化,其輸入輸出定義如表1所示,skey表示數(shù)據(jù)項(xiàng)s所包含鍵的集合,其中rawData表示未解析的原始數(shù)據(jù)報(bào)文,protocol表示解析報(bào)文所需的協(xié)議,condition表示狀態(tài)監(jiān)測(cè)的工況。按照以上規(guī)范化輸入輸出,可對(duì)處理單位的功能邏輯進(jìn)行開發(fā),并對(duì)處理單元進(jìn)行注冊(cè)。以數(shù)據(jù)接收單元為例,定義處理單元DataRev=〈“在線數(shù)據(jù)接收”,onlineRev,null,tupleout,port〉。單元的功能是通過以太網(wǎng)進(jìn)行實(shí)時(shí)數(shù)據(jù)接收。其中:onlineRev是處理單元的具體邏輯實(shí)現(xiàn),可以是實(shí)現(xiàn)了統(tǒng)一接口的代碼類等,通過端口監(jiān)聽的方式進(jìn)行;tupleout是處理單元輸出,如表1所示;port是上層應(yīng)用輸入,表示運(yùn)行時(shí)監(jiān)聽的網(wǎng)絡(luò)端口。處理單元的邏輯可以是系統(tǒng)的默認(rèn)實(shí)現(xiàn),也可以是用戶二次開發(fā)定制形成。其他處理單元的定義方式與數(shù)據(jù)接收單元類似,這里不再贅述。3.2.2數(shù)據(jù)處理流程本文使用拓?fù)?Topology)對(duì)狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理流程進(jìn)行描述,對(duì)拓?fù)涞木唧w定義為:定義2拓?fù)洹0凑諗?shù)據(jù)處理業(yè)務(wù),遵循一定的約束條件對(duì)處理單元進(jìn)行組合,并設(shè)置其上下游數(shù)據(jù)流轉(zhuǎn)關(guān)系,由此整合形成的整體稱為拓?fù)?。拓?fù)涫菭顟B(tài)監(jiān)測(cè)數(shù)據(jù)處理業(yè)務(wù)邏輯的載體,其結(jié)構(gòu)可用一個(gè)AOV網(wǎng)描述,具體表示如下:Topology=〈name,V,E〉。其中:頂點(diǎn)V表示處理單元集合,邊E表示處理單元之間的數(shù)據(jù)流轉(zhuǎn)關(guān)系集合。對(duì)于任意vi∈V,定義vi=〈name,unit,type,parallel〉,其中:unit表示節(jié)點(diǎn)綁定的處理單元;parallel表示節(jié)點(diǎn)運(yùn)行時(shí)的并發(fā)數(shù);type表示該處理單元的類型,分為源節(jié)點(diǎn)與處理節(jié)點(diǎn)兩種,即type={Spout,Bolt},源節(jié)點(diǎn)可作為處理流程的起點(diǎn),主要作用是接收?qǐng)?bào)文,將數(shù)據(jù)轉(zhuǎn)化為可被系統(tǒng)處理的Tuple形式,處理節(jié)點(diǎn)用來執(zhí)行狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理任務(wù)。一般而言,對(duì)于負(fù)載較重、處理時(shí)間較長的節(jié)點(diǎn),應(yīng)設(shè)置較大的并發(fā)數(shù)。對(duì)于u,v∈V,若〈u,v〉∈E,則表示節(jié)點(diǎn)u為節(jié)點(diǎn)v的上游處理節(jié)點(diǎn),節(jié)點(diǎn)u處理的數(shù)據(jù)輸出會(huì)流向節(jié)點(diǎn)v進(jìn)行處理。拓?fù)涫菢I(yè)務(wù)流程的載體,其構(gòu)建的主要約束條件有:(1)對(duì)于u,v∈V,若有〈u,v〉∈E,則有u.unit.output=v.unit.input,即上游節(jié)點(diǎn)處理單元的輸出等于下游節(jié)點(diǎn)處理單元的輸入。(2)只有類型為源的節(jié)點(diǎn)才能作為拓?fù)涞某跏脊?jié)點(diǎn),處理單元未定義輸入的節(jié)點(diǎn)只能作為源節(jié)點(diǎn)。(3)類型為源的節(jié)點(diǎn)不能作為中間處理節(jié)點(diǎn)。(4)處理單元沒有定義輸出的節(jié)點(diǎn)只能作為拓?fù)涞慕K止節(jié)點(diǎn)。(5)拓?fù)涫且粋€(gè)有向無環(huán)的弱連通圖,可以有多個(gè)初始節(jié)點(diǎn)和終止節(jié)點(diǎn)。以3.1節(jié)所舉的數(shù)據(jù)處理流程為例(如圖4a),該流程是一個(gè)單源的簡單線性處理流程,在處理單元開發(fā)注冊(cè)完成后(如表1),可對(duì)拓?fù)溥M(jìn)行定制,數(shù)據(jù)接收節(jié)點(diǎn)為源節(jié)點(diǎn),其他節(jié)點(diǎn)為數(shù)據(jù)處理節(jié)點(diǎn),定制結(jié)果如圖5所示,T=〈example,V,E〉。其中,節(jié)點(diǎn)集合V={v1,v2,v2,v4,v5},其中v1=〈1_DR,DataRev,Spout,3〉。節(jié)點(diǎn)數(shù)據(jù)流轉(zhuǎn)集合E={〈v1,v2〉,〈v2,v3〉,〈v3,v4〉,〈v4,v5〉}。4狀態(tài)監(jiān)測(cè)數(shù)據(jù)協(xié)議管理4.1狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)的適用性第3章提出了一種基于拓?fù)涞慕7椒?用于對(duì)狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理業(yè)務(wù)流程進(jìn)行描述定義,但不同應(yīng)用領(lǐng)域的復(fù)雜裝備監(jiān)測(cè)數(shù)據(jù)在數(shù)據(jù)格式、傳輸方式、解析方式、數(shù)據(jù)類型、數(shù)據(jù)轉(zhuǎn)換方式等方面各不相同,為了使?fàn)顟B(tài)監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)具有普適性,框架還需要支持協(xié)議通用性。所謂協(xié)議通用性,是指狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)能夠識(shí)別并正確解析不同應(yīng)用領(lǐng)域的狀態(tài)監(jiān)測(cè)數(shù)據(jù)。狀態(tài)監(jiān)測(cè)數(shù)據(jù)傳輸協(xié)議是一種設(shè)備到設(shè)備、設(shè)備到系統(tǒng)的通訊規(guī)約。一般來說,基于互聯(lián)網(wǎng)的狀態(tài)監(jiān)測(cè)數(shù)據(jù)傳輸協(xié)議通常由包頭、包體、校驗(yàn)與包尾4部分組成,包頭通常包含設(shè)備的唯一標(biāo)志、時(shí)間戳、幀長度、幀類型、加密壓縮算法、控制信息等;包體包含了狀態(tài)監(jiān)測(cè)的工況數(shù)據(jù)值,也可能由其他協(xié)議數(shù)據(jù)嵌套組成。本節(jié)將采用模型驅(qū)動(dòng)的思想,設(shè)計(jì)一種協(xié)議模型,用于描述協(xié)議的結(jié)構(gòu)、協(xié)議數(shù)據(jù)的含義以及協(xié)議的相關(guān)操作,使之能夠滿足不同領(lǐng)域多樣性協(xié)議的建模需要。4.2統(tǒng)算機(jī)械協(xié)議的解析同一企業(yè)的狀態(tài)監(jiān)測(cè)協(xié)議通常具有相似性(如都具有相同的包頭結(jié)構(gòu)、使用相同的校驗(yàn)算法等),因此,為了增加協(xié)議模型的靈活性與復(fù)用性,協(xié)議由模板、元模板及模板參數(shù)等元素來描述,其關(guān)系如圖6所示。本文對(duì)協(xié)議模型的要素定義如下:定義3處理方案。模板參數(shù)、元模板、模板和協(xié)議所具有的處理算法中定義了數(shù)據(jù)解析時(shí)系統(tǒng)對(duì)數(shù)據(jù)的處理方式及響應(yīng)操作等。處理方案的表示如式(1)所示,其中:type表示處理方案類型;logic是處理方案的具體邏輯實(shí)現(xiàn);parameter是算法的輸入?yún)?shù)。定義4is模板參數(shù)。用于定義報(bào)文的最小數(shù)據(jù)單元字段,可以表示工況或基礎(chǔ)信息,也可以表示嵌套的協(xié)議數(shù)據(jù),其表示如式(2)所示。其中:length為模板參數(shù)的長度;{ti}為有序的處理方案集合;type表示模板參數(shù)的類型,包括數(shù)據(jù)參數(shù)和協(xié)議參數(shù)兩種,即type={Data,Protocol}。數(shù)據(jù)參數(shù)表示參數(shù)數(shù)據(jù)段為有具體含義且不可分割的數(shù)據(jù)單元,協(xié)議參數(shù)表示參數(shù)數(shù)據(jù)段為嵌套的其他協(xié)議的數(shù)據(jù),需要對(duì)數(shù)據(jù)段進(jìn)一步解析。定義5元模板。由模板參數(shù)按照一定順序組合排列而成,用于描述包頭、包體、校驗(yàn)或包尾數(shù)據(jù)段的結(jié)構(gòu),其定義如式(3)所示。其中:parse是解析算法;{parai}是有順序的模板參數(shù)集,代表了元模板的數(shù)據(jù)結(jié)構(gòu)與格式;{prei}和{posti}代表了模板的預(yù)處理和后處理方案。定義6模板。由元模板按照一定順序組成,可用于描述某協(xié)議報(bào)文的具體數(shù)據(jù)結(jié)構(gòu)。其表示如式(4)所示,模板由header,body,checker和end四個(gè)元模板組成,分別用于描述包頭、包體、校驗(yàn)和包尾的結(jié)構(gòu)。定義7協(xié)議。位于協(xié)議模型的頂層,是一類具有相似結(jié)構(gòu)的模板的統(tǒng)稱,每個(gè)模板描述了協(xié)議的一種具體數(shù)據(jù)結(jié)構(gòu)。協(xié)議的定義如式(5)所示。其中:{tempi}為協(xié)議所包含的模板集合;recog為協(xié)議模板的識(shí)別算法,協(xié)議解析時(shí)根據(jù)模板識(shí)別算法識(shí)別數(shù)據(jù)的解析模板。根據(jù)以上協(xié)議模型,可對(duì)不同應(yīng)用領(lǐng)域的狀態(tài)監(jiān)測(cè)數(shù)據(jù)傳輸協(xié)議進(jìn)行通用定義。圖7給出了某工程機(jī)械的協(xié)議示例,它由兩層協(xié)議組成,頂層協(xié)議的包頭包含了協(xié)議標(biāo)志、報(bào)文長度以及報(bào)文類型等字段,分別為2個(gè)字節(jié)長度。包體嵌套了若干個(gè)工況協(xié)議數(shù)據(jù)段。以臂角協(xié)議為例,其包頭為4個(gè)字節(jié)的標(biāo)志字段;包體為4個(gè)自傳感器上采集的傾角數(shù)據(jù),每個(gè)數(shù)據(jù)為2個(gè)字節(jié)長度,臂架傾角數(shù)據(jù)值為浮點(diǎn)型數(shù)據(jù)。數(shù)據(jù)報(bào)文為二進(jìn)制格式。使用協(xié)議模型對(duì)該工程機(jī)械的協(xié)議進(jìn)行如下定制:(1)處理方案以上報(bào)文解析需要的處理方案有:協(xié)議模板識(shí)別算法(ProReg)、元模板按位二進(jìn)制解析算法(BiParse)、模板參數(shù)16位無符號(hào)整數(shù)轉(zhuǎn)換(UTrans16)、傾角數(shù)據(jù)轉(zhuǎn)換算法(ATrans)等,處理方案集合T={ProReg,BiParse,UTrans16,ATrans}。(2)模板參數(shù)數(shù)據(jù)參數(shù)以agl1為例,TPagl1=〈agl1,臂架角度1,16bit,Data,{UTrans16,AT-rans}〉,協(xié)議參數(shù)以數(shù)據(jù)段1為例,TPpro=〈pro,p2,96bit,Protocol,null〉,其中p2為嵌套協(xié)議的id。依此方式定義其他模板參數(shù),模板參數(shù)集合TP={id1,id2,type,check,agl1,agl2,agl3,agl4,…}(3)元模板以協(xié)議1包頭為例,MThead1=〈head1,48bit,BiParse,{id1,length,type},null,null〉依此定義其他元模板,元模板集合MT={head1,body1,head2,body2,check}。(4)模板分別定義協(xié)議1和協(xié)議2的模板,TP1=〈tp1,head1,body1,check,null〉,TP2=〈tp2,head2,body2,null,null〉。(5)協(xié)議定義工程機(jī)械頂層協(xié)議P1=〈p1,ProReg,{tp1}〉,嵌套的工況協(xié)議P2=〈p2,ProReg,{tp2}〉。通過協(xié)議模型以及模型輔助的界面工具,用戶可以根據(jù)企業(yè)自身需求定制數(shù)據(jù)傳輸協(xié)議。協(xié)議模型減少了由于工況、協(xié)議格式、數(shù)據(jù)處理方式新增、變更等帶來的維護(hù)工作,用戶通過界面定制而不是修改代碼的方式來維護(hù)數(shù)據(jù)傳輸協(xié)議。協(xié)議模型具有較高的可復(fù)用性,處理方案、模板參數(shù)、元模板可以反復(fù)使用,減少了重復(fù)定義及代碼開發(fā)工作。5鍵空間面向狀態(tài)監(jiān)測(cè)工況數(shù)據(jù)可看作一個(gè)四元組(E,S,T,V)。其中:E為機(jī)械設(shè)備編號(hào),S為工況參數(shù)標(biāo)志,T為接收時(shí)間,V為工況參數(shù)值。傳統(tǒng)的關(guān)系型數(shù)據(jù)庫將每條工況數(shù)據(jù)作為一條記錄存儲(chǔ)在關(guān)系表中,形成一種典型的長表結(jié)構(gòu),隨著數(shù)據(jù)規(guī)模的不斷變大,必然帶來查詢速度慢、一些統(tǒng)計(jì)分析功能無法實(shí)現(xiàn)等問題。非結(jié)構(gòu)化的自由表數(shù)據(jù)模型是一個(gè)多維的分布式映射,本框架采用Cassandra的存儲(chǔ)模型,通過列族名、行鍵、列名唯一地映射到一個(gè)值。列(Column)是最小數(shù)據(jù)模型;行(Row)是包含若干個(gè)列的集合,它通過一個(gè)叫行鍵(RowKey)的主鍵來索引;列族(ColumnFamily)是包含很多行的集合,相當(dāng)于關(guān)系數(shù)據(jù)庫中的表;鍵空間(Keyspace)是包多列族的集合,相當(dāng)于關(guān)系數(shù)據(jù)庫中的數(shù)據(jù)庫(Database)。非結(jié)構(gòu)化的自由表數(shù)據(jù)存儲(chǔ)模型的最大特點(diǎn)是數(shù)據(jù)列可以任意添加,總列數(shù)幾乎不受限制。結(jié)合狀態(tài)監(jiān)測(cè)工況數(shù)據(jù)的特點(diǎn),基于自由表的狀態(tài)監(jiān)測(cè)數(shù)據(jù)存儲(chǔ)有以下兩種設(shè)計(jì)方式:(1)單列族模式如圖8a所示,對(duì)于每一條工況數(shù)據(jù)(E,S,T,V),將機(jī)械設(shè)備編號(hào)和工況參數(shù)標(biāo)志的組合作為自由表的行鍵,接收時(shí)間作為列名,工況參數(shù)值作為列值。即數(shù)據(jù)庫每行存儲(chǔ)一臺(tái)設(shè)備一個(gè)工況在所有時(shí)間節(jié)點(diǎn)的值;所有工況數(shù)據(jù)存在一個(gè)列族中。(2)多列族模式如圖8b所示,對(duì)于每一條工況數(shù)據(jù)(E,S,T,V),使用設(shè)備編號(hào)作為行鍵,工況標(biāo)志對(duì)列進(jìn)行分組,作為列族名,接收時(shí)間作為列名,工況參數(shù)值作為列值。即不同工況的數(shù)據(jù)分列族存儲(chǔ),列族中的一行表示某臺(tái)設(shè)備的所有該列族的工況值。這兩種數(shù)據(jù)庫設(shè)計(jì)方式各有所長。在數(shù)據(jù)存儲(chǔ)方面,由于連續(xù)產(chǎn)生的監(jiān)測(cè)數(shù)據(jù)具有隨機(jī)性,機(jī)械設(shè)備編號(hào)E和工況參數(shù)標(biāo)志S一般不會(huì)連續(xù)相同,又因?yàn)樵诙嗔凶逯g頻繁切換訪問需要消耗較長的時(shí)間,所以單列族模式在存儲(chǔ)方面有較大優(yōu)勢(shì),適用于海量工況數(shù)據(jù)實(shí)時(shí)存儲(chǔ)。在數(shù)據(jù)查詢方面,查詢指定設(shè)備E的指定工況S的數(shù)據(jù),與查詢指定設(shè)備E的所有工況S的數(shù)據(jù),這兩種設(shè)計(jì)方式的查詢效率相當(dāng);查詢指定工況S的所有設(shè)備E的數(shù)據(jù)時(shí),多列族查詢是對(duì)某列族的數(shù)據(jù)進(jìn)行遍歷,查詢邏輯簡單,具有較大優(yōu)勢(shì),因此多列族模式適合用于海量工況數(shù)據(jù)分析??傮w而言,基于自由表的數(shù)據(jù)存儲(chǔ)模型將原有的單一長表結(jié)構(gòu)轉(zhuǎn)化為寬表的結(jié)構(gòu),降低了查詢數(shù)據(jù)的復(fù)雜度,提高了性能,使分析統(tǒng)計(jì)操作成為可能。6在線協(xié)議定制與實(shí)現(xiàn)基于以上技術(shù)和方法,系統(tǒng)實(shí)現(xiàn)與應(yīng)用驗(yàn)證分為兩個(gè)步驟:(1)復(fù)雜裝備狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)及工具的開發(fā)與實(shí)現(xiàn);(2)使用開發(fā)的系統(tǒng)及工具進(jìn)行企業(yè)數(shù)據(jù)定制及應(yīng)用驗(yàn)證。狀態(tài)監(jiān)測(cè)數(shù)據(jù)處理系統(tǒng)的總體框架如圖3所示。其中,采用Storm作為分布式流處理引擎,支持硬件漸增的方式進(jìn)行處理性能擴(kuò)展;采用LaUD作為非結(jié)構(gòu)化分布式數(shù)據(jù)庫進(jìn)行工況數(shù)據(jù)存儲(chǔ);采用Redis數(shù)據(jù)庫作為內(nèi)存數(shù)據(jù)庫。對(duì)于系統(tǒng)模型及工具,本文采用清華大學(xué)開發(fā)的MRO支撐軟件定制開發(fā)協(xié)議定制工具,如圖9a所示,用戶通過界面拖拽的方式,可以定義協(xié)議元素(模板參數(shù)、模板等)。對(duì)狀態(tài)監(jiān)測(cè)常用的數(shù)據(jù)接收、數(shù)據(jù)解析等10個(gè)業(yè)務(wù)處理單元進(jìn)行實(shí)現(xiàn),通過結(jié)構(gòu)化字符串的方式配置實(shí)時(shí)流處理拓?fù)浣Y(jié)構(gòu),實(shí)時(shí)流狀態(tài)監(jiān)控工具對(duì)流處理系統(tǒng)的流、節(jié)點(diǎn)狀態(tài)等參數(shù)進(jìn)行采集監(jiān)控,如圖9b所示。在系
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年玻璃制品采購合同
- 2024年物業(yè)服務(wù)與社區(qū)文化活動(dòng)策劃委托合同3篇
- 《背影》課時(shí)教案模板
- 擬定財(cái)務(wù)的個(gè)人工作計(jì)劃大全
- 2024山東基礎(chǔ)軟件服務(wù)市場(chǎng)前景及投資研究報(bào)告
- 產(chǎn)科工作計(jì)劃
- 初中教師年終教學(xué)計(jì)劃五篇
- 幼兒園實(shí)習(xí)自我總結(jié)十篇
- 內(nèi)勤個(gè)人工作計(jì)劃10篇
- 關(guān)于教師一級(jí)述職報(bào)告3篇
- 2025年國家圖書館招聘筆試參考題庫含答案解析
- 機(jī)器人課程課程設(shè)計(jì)
- 南充市市級(jí)事業(yè)單位2024年公招人員擬聘人員歷年管理單位遴選500模擬題附帶答案詳解
- 安全知識(shí)考試題庫500題(含答案)
- 員工投訴表格樣板
- 基礎(chǔ)工程施工月進(jìn)度計(jì)劃表
- 危險(xiǎn)性較大的分部分項(xiàng)工程專家論證表
- 2021-2022學(xué)年上海市閔行區(qū)五年級(jí)上學(xué)期期末語文試卷
- 人教版五年級(jí)上冊(cè)數(shù)學(xué)組合圖形的面積同步練習(xí)
- 2018級(jí)成考專升本漢語言文學(xué)專業(yè)12月份考試資料文獻(xiàn)學(xué)復(fù)習(xí)資料
- 最新中考英語單詞表2200個(gè)
評(píng)論
0/150
提交評(píng)論