吳思 謝汶姝 賈麗
中國運載火箭技術(shù)研究院 北京 100076
數(shù)據(jù)庫技術(shù)起源于20世紀(jì)60年代,隨著計算機技術(shù)的發(fā)展,數(shù)據(jù)庫技術(shù)開始迅速發(fā)展起來,作為計算機信息的核心技術(shù)在最近幾年發(fā)展也是非常迅速的,目前數(shù)據(jù)庫技術(shù)已經(jīng)和計算機技術(shù)緊密地結(jié)合起來,相互發(fā)展、相輔相成,逐漸成為目前社會上應(yīng)用最廣的兩大技術(shù)。目前我國的各行各業(yè)都開始利用數(shù)據(jù)庫技術(shù),這樣也使得更多的人認(rèn)識數(shù)據(jù)庫技術(shù),同時對數(shù)據(jù)庫技術(shù)的研發(fā)投入也不斷增加,這也使得數(shù)據(jù)庫技術(shù)正在不斷完善,應(yīng)用的領(lǐng)域也不斷擴大。傳統(tǒng)的數(shù)據(jù)庫主要以關(guān)系型數(shù)據(jù)庫為代表,國外的有ORACLE、MYSQL;國內(nèi)的有達(dá)夢,Kingbase等。
而隨著用戶業(yè)務(wù)需求不斷更新,數(shù)據(jù)庫也在不斷根據(jù)時代變化而發(fā)展。時序數(shù)據(jù)庫也就應(yīng)運而生。其中,國外代表有InfluxDB,OpenTSDB等。時序數(shù)據(jù)庫全稱為時間序列數(shù)據(jù)庫。時間序列數(shù)據(jù)庫主要用于處理帶時間標(biāo)簽(按照時間的順序變化,即時間序列化)的數(shù)據(jù),帶時間標(biāo)簽的數(shù)據(jù)也稱為時間序列數(shù)據(jù)[1]。
時間序列數(shù)據(jù)主要由電力行業(yè)、化工行業(yè)等各類型實時監(jiān)測、檢查與分析設(shè)備所采集、產(chǎn)生的數(shù)據(jù),這些工業(yè)數(shù)據(jù)的典型特點是:產(chǎn)生頻率快(每一個監(jiān)測點一秒鐘內(nèi)可產(chǎn)生多條數(shù)據(jù))、嚴(yán)重依賴于采集時間(每一條數(shù)據(jù)均要求對應(yīng)唯一的時間)、測點多信息量大(常規(guī)的實時監(jiān)測系統(tǒng)均有成千上萬的監(jiān)測點,監(jiān)測點每秒鐘都產(chǎn)生數(shù)據(jù),每天產(chǎn)生幾十GB的數(shù)據(jù)量)。
實時數(shù)據(jù)庫是工業(yè)領(lǐng)域信息化的核心基礎(chǔ)軟件,在工業(yè)企業(yè)實現(xiàn)數(shù)字化及智能化轉(zhuǎn)變過程中發(fā)揮著重要作用,可廣泛應(yīng)用于能源電力、鋼鐵、石油、石化、航空航天、設(shè)備制造、交通、環(huán)保等重要行業(yè)和領(lǐng)域,主要集中于設(shè)備管理服務(wù)、生產(chǎn)過程管控與企業(yè)運營管理三大類場景。
基于實時數(shù)據(jù)庫的“模型+深度數(shù)據(jù)分析”在設(shè)備運維、資產(chǎn)管理、能耗管理、質(zhì)量管控、工藝調(diào)優(yōu)等場景可獲得大量應(yīng)用,可取得較為顯著的經(jīng)濟效益。
基于實時數(shù)據(jù)庫的“連接+數(shù)據(jù)可視化”在生產(chǎn)監(jiān)控、物料管理、排產(chǎn)調(diào)度分析領(lǐng)域應(yīng)用最為廣泛,并可進(jìn)一步深化探索。
基于實時數(shù)據(jù)庫的“軟件上云+簡單數(shù)據(jù)分析”在客戶關(guān)系管理、供應(yīng)鏈管理和企業(yè)計劃資源管理領(lǐng)域獲得應(yīng)用,能有效降低中小企業(yè)軟件使用成本。
自主可控數(shù)據(jù)庫需采用先進(jìn)的技術(shù)和架構(gòu),可安全、穩(wěn)定地實現(xiàn)與現(xiàn)場各監(jiān)測儀器數(shù)據(jù)的接口,并能對采集的數(shù)據(jù)進(jìn)行高效的數(shù)據(jù)壓縮和長期的歷史存儲,同時提供方便易用的客戶端應(yīng)用和通用的對外數(shù)據(jù)訪問接口(如API/ODBC/JDBC/OPC/WebAPI等),使企業(yè)的管理和決策人員能及時、全面地了解當(dāng)前的現(xiàn)場情況,也可方便地回顧歷史,及時發(fā)現(xiàn)現(xiàn)場所存在的問題,提高決策準(zhǔn)確度,增強企業(yè)的核心競爭力。
實時數(shù)據(jù)系統(tǒng),核心部分便是為客戶提供的實時/歷史數(shù)據(jù)服務(wù)。系統(tǒng)包含采集數(shù)據(jù)流接入、數(shù)據(jù)分析過濾、數(shù)據(jù)壓縮整理、實時數(shù)據(jù)服務(wù)、歷史數(shù)據(jù)歸檔、數(shù)據(jù)檢索、權(quán)限檢查、報警點計算、計算點計算、SQL引擎支持等多個復(fù)雜的交叉步驟。
圖1 系統(tǒng)架構(gòu)圖
數(shù)據(jù)處理流程大致包含:數(shù)據(jù)流分析、數(shù)據(jù)過濾、實時數(shù)據(jù)更新、視圖展示、數(shù)據(jù)壓縮、歷史數(shù)據(jù)表、數(shù)據(jù)歸檔等部分。
數(shù)據(jù)流分析:是指對現(xiàn)場設(shè)備數(shù)據(jù)、二次加工運算數(shù)據(jù)、其他軟件程序等發(fā)送到來要求寫入的數(shù)據(jù)包進(jìn)行數(shù)據(jù)分解。其中包含數(shù)據(jù)解包、數(shù)據(jù)解密、規(guī)范性檢查等步序。
數(shù)據(jù)過濾:經(jīng)由數(shù)據(jù)解析后產(chǎn)生的數(shù)據(jù)寫入請求,將進(jìn)行錯誤數(shù)據(jù)丟棄、合理數(shù)據(jù)過濾檢查,從而完成數(shù)據(jù)請求分類,識別出實時數(shù)據(jù)與歷史數(shù)據(jù)分支。
實時數(shù)據(jù)處理:對實時數(shù)據(jù)進(jìn)行分析檢查,完成實時數(shù)據(jù)視圖更新。
視圖展示:提供實時數(shù)據(jù)展示視圖。
數(shù)據(jù)壓縮:當(dāng)過濾反饋為歷史數(shù)據(jù)寫入請求時,數(shù)據(jù)庫將進(jìn)行數(shù)據(jù)包壓縮處理動作,并更新歷史數(shù)據(jù)表。
歷史數(shù)據(jù)表:提供歷史數(shù)據(jù)視圖。
數(shù)據(jù)歸檔:將更新的歷史數(shù)據(jù)進(jìn)行歸檔,寫入磁盤操作。
圖2 數(shù)據(jù)流圖
為完成數(shù)據(jù)庫系統(tǒng)可視化多元化的業(yè)務(wù)呈現(xiàn),數(shù)據(jù)庫系統(tǒng)都配套帶有各類管理工具和應(yīng)用工具。一般而言,會提供控制臺管理工具、組態(tài)繪制工具、組態(tài)展示程序、數(shù)據(jù)接口等。
豐富、高效、穩(wěn)定的I/O驅(qū)動是數(shù)據(jù)庫實現(xiàn)自身價值的一個重要保障。實時數(shù)據(jù)庫系統(tǒng),需要適配現(xiàn)場的各種接口,并經(jīng)過采集程序的核心處理,完成數(shù)據(jù)的采集接入、實時處理、報警、計算以及其他應(yīng)用,實時數(shù)據(jù)被不斷存入磁盤歷史存儲,形成可追溯的歷史信息,同時通過向應(yīng)用層提供各種適配接口,支持各種開發(fā)語言和各種應(yīng)用需求的訪問。
在工業(yè)現(xiàn)場場景中,由于各工業(yè)設(shè)備/設(shè)施廠家不同,提供的對外數(shù)據(jù)服務(wù)接口方式多種多樣。從物理的對外數(shù)據(jù)接口標(biāo)準(zhǔn)就包括RS232/422/485、AO/DO等,工業(yè)標(biāo)準(zhǔn)接口協(xié)議包括PLC、MODBUS、IEC101/102/104等,其他各廠家定義的協(xié)議模型各式各樣,據(jù)不完全統(tǒng)計,市面上可見的數(shù)據(jù)通信協(xié)議組合上千種。數(shù)據(jù)采集驅(qū)動是需要不斷完善、豐富的一個資源庫。但是數(shù)據(jù)采集的編寫方式由于業(yè)內(nèi)沒有統(tǒng)一的標(biāo)準(zhǔn),導(dǎo)致開發(fā)者每次均需要獨立從頭開始完成其驅(qū)動開發(fā),費時費力。
為保障數(shù)據(jù)采集的資源庫可不斷地通過一個標(biāo)準(zhǔn)模式進(jìn)行豐富,解決設(shè)備數(shù)據(jù)接口適配,所以構(gòu)建一套遵循標(biāo)準(zhǔn)結(jié)構(gòu)的數(shù)據(jù)采集插件系統(tǒng)尤為重要。通過調(diào)研國內(nèi)工控領(lǐng)域主流的系統(tǒng)、設(shè)備,了解其接口協(xié)議規(guī)范,確定數(shù)據(jù)庫需要開發(fā)的接口模塊的優(yōu)先次序;通過調(diào)研數(shù)據(jù)庫的系統(tǒng)集成商,了解其主流開發(fā)平臺、工具、基本需求,確立數(shù)據(jù)庫的開放接口規(guī)范。由于其數(shù)據(jù)處理過程是標(biāo)準(zhǔn)模塊,插件系統(tǒng)的建立可減少大量的重復(fù)開發(fā)活動,提升數(shù)據(jù)收集處理的能力,同時極大地提高數(shù)據(jù)接口的穩(wěn)定性和可靠性。
在強調(diào)海量存儲和高時效性的工業(yè)制造等領(lǐng)域,實時數(shù)據(jù)庫起到了重要作用,它填補了關(guān)系型數(shù)據(jù)庫的不足,提高了運行效率。目前,外國的實時數(shù)據(jù)庫還處于技術(shù)絕對領(lǐng)先的地位,在受到國外技術(shù)封鎖日趨嚴(yán)重的今天,擁有我國自主可控的實時數(shù)據(jù)庫將必不可少。