王紅濤,王志超,陳 峰,馮連強(qiáng),孫思豪
(中國重型機(jī)械研究院股份公司,陜西 西安 710032)
復(fù)雜重型裝備定制生產(chǎn)的設(shè)計、制造、運作管理、營銷服務(wù)等過程中會產(chǎn)生海量的時序數(shù)據(jù)[1],這些來自產(chǎn)品全生命周期的時序數(shù)據(jù)是提高生產(chǎn)水平和管理水平的數(shù)據(jù)基礎(chǔ)[2]。獲取生產(chǎn)現(xiàn)場的時序數(shù)據(jù),能夠為各種設(shè)備監(jiān)控系統(tǒng)、工藝分析系統(tǒng)、管理系統(tǒng)提供實時的數(shù)據(jù)服務(wù),從而打破流程工業(yè)生產(chǎn)過程中的“數(shù)據(jù)壁壘”,為提高產(chǎn)品質(zhì)量和優(yōu)化設(shè)備調(diào)度計劃提供依據(jù)[3]。但海量數(shù)據(jù)的處理同時也面臨著日益嚴(yán)峻的問題:存儲容量問題,單一設(shè)備的各類傳感器每天的采樣數(shù)據(jù)數(shù)以百萬計,每年的采樣數(shù)據(jù)所需的存儲容量從GB到TB[4];處理速度問題,不斷增加的數(shù)據(jù)量給數(shù)據(jù)的存儲方法和檢索查詢方式帶來了難度;實時數(shù)據(jù)的展示問題,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫的采樣周期和采樣方式難以完成對時序數(shù)據(jù)的連續(xù)存儲[5],且無法通過折線圖、散點圖等實時顯示數(shù)據(jù)的變化趨勢。
面對傳統(tǒng)的關(guān)系型數(shù)據(jù)庫在工業(yè)互聯(lián)網(wǎng)環(huán)境下的不足,本文提出基于時序數(shù)據(jù)庫的工業(yè)大數(shù)據(jù)存儲管理系統(tǒng),首先設(shè)計以開源的時序數(shù)據(jù)庫influxDB為參考的工業(yè)時序數(shù)據(jù)庫引擎,實現(xiàn)應(yīng)用于邊緣計算的時序數(shù)據(jù)庫,再通過構(gòu)建數(shù)據(jù)圖譜的方式探尋數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,然后選擇合適的圖表形式將時序數(shù)據(jù)可視化,為后續(xù)的設(shè)備監(jiān)控、遠(yuǎn)程運維等系統(tǒng)提供數(shù)據(jù)支撐,最后提出了基于時序數(shù)據(jù)庫的工業(yè)大數(shù)據(jù)存儲管理系統(tǒng)的性能測試方法。
工業(yè)互聯(lián)網(wǎng)的快速發(fā)展帶來了各種傳感器的廣泛使用和海量工業(yè)數(shù)據(jù)的采集[6]。海量實時數(shù)據(jù)的分析需求無法用傳統(tǒng)的集中處理方式滿足,因此數(shù)據(jù)計算逐漸走向邊緣端[7]。
1.1.1 邊緣計算的發(fā)展
邊緣計算(Edge Computing, EG)指的是接近物理實體或數(shù)據(jù)源的一側(cè),匯集了網(wǎng)絡(luò)、計算、存儲、應(yīng)用核心能力等的開放平臺[8]。當(dāng)前業(yè)界對邊緣計算概念的描述并不統(tǒng)一,但有基本的共性認(rèn)識:邊緣計算是在接近終端的網(wǎng)絡(luò)邊緣上提供服務(wù)[9]。
邊緣計算并不是新興概念,早在2003年,作為全球最大的分布式計算服務(wù)商之一的AKAMAI就與IBM合作“邊緣計算”。近年來,邊緣計算因其滿足萬物互聯(lián)需求的突出優(yōu)點,逐漸受到國內(nèi)外的廣泛關(guān)注。 2017年,全球性產(chǎn)業(yè)組織工業(yè)聯(lián)盟ICC成立Edge Computing TG,為邊緣計算指出了參考架構(gòu);同年11月,中國聯(lián)通推出了“邊緣云&智能安防”的技術(shù)方案[10]。在標(biāo)準(zhǔn)化方面,國際電工委員會(IEC )于2017年發(fā)布了《垂直領(lǐng)域邊緣智能(VEI)白皮書》,指明了邊緣計算對于制造業(yè)等垂直行業(yè)領(lǐng)域的重大意義。
1.1.2 裝備制造業(yè)邊緣計算體系架構(gòu)
裝備制造業(yè)作為向國民經(jīng)濟(jì)和國防建設(shè)提供生產(chǎn)技術(shù)裝備的先進(jìn)制造業(yè),是制造業(yè)的核心組成部分,是我國工業(yè)發(fā)展的基礎(chǔ)[11]。但經(jīng)過對企業(yè)進(jìn)行走訪調(diào)查、閱讀文獻(xiàn)資料等過程,進(jìn)一步了解了邊緣計算應(yīng)用于裝備制造業(yè)的現(xiàn)狀和需要,得知裝備制造業(yè)總體的工程建設(shè)程度不一致,普遍面臨數(shù)據(jù)開放性差且工業(yè)協(xié)議標(biāo)準(zhǔn)不統(tǒng)一、數(shù)據(jù)采集種類較少、數(shù)據(jù)采集實時性水平較低、數(shù)據(jù)安全存在隱患等問題[12]。
依據(jù)邊緣計算的發(fā)展現(xiàn)狀,結(jié)合裝備制造業(yè)的行業(yè)需求,參考工業(yè)互聯(lián)網(wǎng)平臺體系中的邊緣層架構(gòu),提出裝備制造業(yè)邊緣計算體系架構(gòu)如圖1所示。
圖1 裝備制造業(yè)邊緣計算體系架構(gòu)
(1)設(shè)備接入。為工業(yè)現(xiàn)場設(shè)備、智能產(chǎn)品/裝備設(shè)置數(shù)據(jù)采集端口[13],實時獲得生產(chǎn)現(xiàn)場的數(shù)據(jù)并進(jìn)行安全傳輸,實現(xiàn)不同制造商設(shè)備的互聯(lián)互通。
(2)協(xié)議轉(zhuǎn)換?;贠PC UA 設(shè)計支持多種總線協(xié)議、網(wǎng)絡(luò)接口和網(wǎng)絡(luò)拓?fù)涞墓I(yè)網(wǎng)關(guān)。將各提供數(shù)據(jù)的設(shè)備使用的協(xié)議標(biāo)準(zhǔn)化為OPC UA協(xié)議[14]。
(3)邊緣數(shù)據(jù)處理。通過設(shè)備部署實現(xiàn)邊緣端和云端的協(xié)同。基于流式計算處理邊緣設(shè)備產(chǎn)生的數(shù)據(jù),實時響應(yīng)業(yè)務(wù)需求,并行聚合非實時數(shù)據(jù)并傳到云端,實現(xiàn)邊緣計算和云計算的協(xié)同。
1.2.1 時序數(shù)據(jù)
時序數(shù)據(jù)就是時間序列數(shù)據(jù),即某個指標(biāo)根據(jù)時間順序記載的數(shù)據(jù)序列[15]。在以時間為橫軸的坐標(biāo)系中將時序數(shù)據(jù)值連成線,可將歷史時序數(shù)據(jù)做成多維度表,發(fā)現(xiàn)其規(guī)律和異常,也可將時序數(shù)據(jù)用于大數(shù)據(jù)分析,實現(xiàn)趨勢預(yù)測和異常預(yù)警。
工業(yè)互聯(lián)網(wǎng)環(huán)境下需采集的工業(yè)時序數(shù)據(jù)量巨大,且具有如下典型特征:數(shù)據(jù)都是結(jié)構(gòu)化的;一個采集點的數(shù)據(jù)源是唯一的;數(shù)據(jù)較少有更新或刪除操作,一般按到期日期來刪除;數(shù)據(jù)以寫操作為主,讀操作為輔;數(shù)據(jù)流量平穩(wěn),可較為準(zhǔn)確地計算;數(shù)據(jù)都有統(tǒng)計、聚合等實時計算操作;數(shù)據(jù)根據(jù)指定的時間段和區(qū)域進(jìn)行查找。
1.2.2 時序數(shù)據(jù)庫特性
時序數(shù)據(jù)庫即存儲時序數(shù)據(jù)的數(shù)據(jù)庫。它允許快速寫入、持久化、多維度地聚合查詢時序數(shù)據(jù)等操作[16]。該類數(shù)據(jù)庫不但存儲了此刻的數(shù)據(jù)值,而且保存了全部歷史數(shù)據(jù),在查詢時也總會將時間作為過濾條件。
以存儲風(fēng)速傳感器數(shù)據(jù)的時序數(shù)據(jù)庫為例(圖2),時序數(shù)據(jù)庫的相關(guān)定義如表1所示。
圖2 時序數(shù)據(jù)庫基本概念圖
表1 時序數(shù)據(jù)庫相關(guān)定義
時序數(shù)據(jù)庫適用于一切有時序數(shù)據(jù)形成,對數(shù)據(jù)的歷史規(guī)律、異常變化等有分析需求,或者需判斷時序數(shù)據(jù)后續(xù)發(fā)展趨勢的場景。根據(jù)工業(yè)大數(shù)據(jù)特點和實際需要,將本文使用的時序數(shù)據(jù)庫的內(nèi)部架構(gòu)設(shè)計為圖3所示的架構(gòu)。
圖3 時序數(shù)據(jù)庫內(nèi)部架構(gòu)
隨著企業(yè)生產(chǎn)規(guī)模的擴(kuò)大和生產(chǎn)工藝的提高,需要采集的現(xiàn)場生產(chǎn)數(shù)據(jù)愈加龐大[17],常規(guī)采用單計算機(jī)體系結(jié)構(gòu)的實時數(shù)據(jù)庫產(chǎn)品遇到了單臺計算機(jī)體系結(jié)構(gòu)處理能力的限制,無法有效滿足現(xiàn)場生產(chǎn)數(shù)據(jù)共享的需要。為了便于計算機(jī)處理,需要將來自工業(yè)生產(chǎn)現(xiàn)場中連續(xù)變化的工藝參數(shù)等數(shù)據(jù)進(jìn)行離散數(shù)字化取樣,生成持續(xù)的、間斷變化的離散數(shù)字?jǐn)?shù)據(jù)流。
InfluxDB時序數(shù)據(jù)庫起源于服務(wù)器運行情況的監(jiān)控領(lǐng)域,較為復(fù)雜的元數(shù)據(jù)模型使除測點、時間、取值以外的附加屬性信息得以保存[18]。該數(shù)據(jù)庫基于日志結(jié)構(gòu)合并樹(Log Structured Merge Tree, LSM)提出了時間結(jié)構(gòu)合并樹(Time Structured Merge Tree, TSM),分別優(yōu)化了時序數(shù)據(jù)的讀和寫。寫入過程中,數(shù)據(jù)增加到日志文件中,并在內(nèi)存中緩存,當(dāng)緩存至一定容量時新建日志文件,并運行壓縮線程,把數(shù)據(jù)壓縮成TSM數(shù)據(jù)文件。
2013年,influxDB時序數(shù)據(jù)庫被Errplane公司開源,經(jīng)不斷優(yōu)化后目前排至開源時序數(shù)據(jù)庫的首位。
基于influxDB思想設(shè)計工業(yè)時序數(shù)據(jù)庫的引擎,如圖4所示。從上到下包括數(shù)據(jù)庫實例、存儲策略、存儲分片幾個層次[19]。每個存儲分片里包含一個內(nèi)存緩存區(qū)、一或多個日志文件、多個數(shù)據(jù)文件,以及用于處理寫入、壓縮、讀取的線程。
圖4 時序數(shù)據(jù)庫引擎結(jié)構(gòu)示意圖
結(jié)合工業(yè)場景中各數(shù)據(jù)和對象的全生命周期,統(tǒng)一地將當(dāng)前系統(tǒng)和設(shè)備中的數(shù)據(jù)進(jìn)行采集、儲存、處理,探尋數(shù)據(jù)之間的相關(guān)性,加入模型分析、算法預(yù)測,提高企業(yè)的生產(chǎn)工藝水平,完善企業(yè)的供應(yīng)鏈,提高產(chǎn)品質(zhì)量,從而改善企業(yè)效益。
可將企業(yè)數(shù)據(jù)圖譜看作是有機(jī)融合企業(yè)數(shù)據(jù)的知識圖譜的延伸[20]。它包含計算機(jī)視覺、圖形學(xué)、數(shù)學(xué)等在內(nèi)的多學(xué)科知識。企業(yè)構(gòu)建數(shù)據(jù)圖譜的主要內(nèi)容如圖5所示。所謂“全生命周期”,指的是按照時間流分析圖中包括的主體。
圖5 企業(yè)構(gòu)建數(shù)據(jù)圖譜的主要內(nèi)容
數(shù)據(jù)本身是一個抽象的概念,隨著數(shù)據(jù)量的不斷增大,傳統(tǒng)的數(shù)據(jù)統(tǒng)計方法很難滿足用戶去理解數(shù)據(jù)本身含義的任務(wù),而數(shù)據(jù)可視化作為一項新興且蓬勃發(fā)展的技術(shù),其依賴于本身可視的優(yōu)越性,已經(jīng)在自然科學(xué)、工程技術(shù)、經(jīng)濟(jì)、通信及商業(yè)等領(lǐng)域得到了廣泛的應(yīng)用并取得了很多卓有成效的進(jìn)展[21]。對數(shù)據(jù)的理解,人們普遍傾向于具體、形象的展示,數(shù)據(jù)可視化方法通過圖像、表格等視覺載體“看到”數(shù)據(jù),因此在用戶對數(shù)據(jù)進(jìn)行可視分析的過程中起到了至關(guān)重要的作用。
假設(shè)時序數(shù)據(jù)的主要信息是數(shù)據(jù)的變化趨勢,則可從散點圖、折線圖二者中選取能夠最大程度揭示時序數(shù)據(jù)變化趨勢的圖表類型,實現(xiàn)時序數(shù)據(jù)的可視化。
基于時序數(shù)據(jù)庫的工業(yè)大數(shù)據(jù)存儲管理系統(tǒng)的性能測試主要是檢驗其對常見工業(yè)數(shù)據(jù)的存儲能力[22]。
存儲海量工業(yè)時序數(shù)據(jù)時,通常由若干個終端一起產(chǎn)生多條存儲指令,該過程存在較多的風(fēng)險因素。以在連續(xù)存儲請求下的數(shù)據(jù)存儲速度作為評估系統(tǒng)存儲性能的指標(biāo),如
Zmax=Qs/T
(1)
式中,Qs為成功存入數(shù)據(jù)庫的數(shù)據(jù)量;T為消耗的總時間。
壓縮是時序數(shù)據(jù)庫非常重要的能力之一。將存儲完成后數(shù)據(jù)庫文件的大小和原始數(shù)據(jù)大小之比作為評估數(shù)據(jù)壓縮性能的指標(biāo),即
R=Sdb/Sr
(2)
式中,Sdb為數(shù)據(jù)庫文件大小;Sr為原始數(shù)據(jù)大小;R為為壓縮比。
在工業(yè)互聯(lián)網(wǎng)快速發(fā)展的大背景下,工業(yè)生產(chǎn)現(xiàn)場投放了大量的設(shè)備傳感器和監(jiān)控系統(tǒng)[23],二者提供的實時數(shù)據(jù)能夠反映設(shè)備的狀態(tài)和生產(chǎn)的進(jìn)度,其中的大多數(shù)據(jù)都是按照時間順序形成的實時數(shù)據(jù)。這些海量實時數(shù)據(jù)有著多樣化的分析需求和重要的參考價值,此現(xiàn)狀下能夠融入大數(shù)據(jù)生態(tài)并具有良好擴(kuò)展性的時序數(shù)據(jù)庫應(yīng)運而生。對企業(yè)而言,設(shè)計并實現(xiàn)基于時序數(shù)據(jù)庫的工業(yè)大數(shù)據(jù)存儲管理系統(tǒng),能夠為產(chǎn)品的可視化運維、預(yù)測性維護(hù)、遠(yuǎn)程智能管理等方面提供依據(jù),降低人員、時間等成本,同時加速工業(yè)化與信息化的深度融合,促進(jìn)復(fù)雜重型裝備制造業(yè)的轉(zhuǎn)型升級,產(chǎn)生社會經(jīng)濟(jì)效益。