余永紀(jì),楊學(xué)平,薛秀麗
(云南機(jī)電職業(yè)技術(shù)學(xué)院,云南 昆明 650203)
物聯(lián)網(wǎng)(IoT)是在互聯(lián)網(wǎng)基礎(chǔ)上擴(kuò)展與延伸的網(wǎng)絡(luò),物與物之間進(jìn)行“萬物互聯(lián)”,實(shí)現(xiàn)信息的交換與通信。物聯(lián)網(wǎng)的出現(xiàn),再加上數(shù)據(jù)通信成本的急劇下降,以及各種傳感技術(shù)和智能設(shè)備的出現(xiàn),加速了數(shù)據(jù)的采集和應(yīng)用[1]。但是在面向各種具體行業(yè)應(yīng)用,源源不斷的產(chǎn)生海量的實(shí)時(shí)數(shù)據(jù)的同時(shí),就會(huì)產(chǎn)生大量的、相互不共享的數(shù)據(jù),容易形成信息孤島的現(xiàn)象[2]。而且當(dāng)前數(shù)據(jù)交換體系存在著數(shù)據(jù)利用效率低、服務(wù)質(zhì)量無保障、數(shù)據(jù)交換不可靠、數(shù)據(jù)請求安全無保障等問題[3],而且很多數(shù)據(jù)交換與共享平臺(tái)無法直接應(yīng)用于物聯(lián)網(wǎng)系統(tǒng)。
為了打破信息孤島,解決物聯(lián)網(wǎng)系統(tǒng)數(shù)據(jù)共享與交換問題,充分挖掘數(shù)據(jù)價(jià)值,提高數(shù)據(jù)利用率,本文將基于物聯(lián)網(wǎng)構(gòu)架,提出一種基于物聯(lián)網(wǎng)的數(shù)據(jù)共享交換平臺(tái)設(shè)計(jì)方案,主要完成物聯(lián)網(wǎng)的數(shù)據(jù)采集、數(shù)據(jù)交換、數(shù)據(jù)處理及數(shù)據(jù)管理功能,將數(shù)據(jù)進(jìn)行治理和融合,形成資源共享目錄,在數(shù)據(jù)交換系統(tǒng)基礎(chǔ)上,實(shí)現(xiàn)數(shù)據(jù)的交換與共享,并提供與之相適應(yīng)的數(shù)據(jù)交換或數(shù)據(jù)產(chǎn)品服務(wù)接口。
基于物聯(lián)網(wǎng)的數(shù)據(jù)共享交換平臺(tái)總體架構(gòu)圖如圖1所示,平臺(tái)支持對分布式的海量的結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行統(tǒng)一存儲(chǔ)、統(tǒng)一管理,并提供靈活的權(quán)限管理和操作功能。系統(tǒng)提供統(tǒng)一的用戶管理和認(rèn)證體系。遵循平臺(tái)制定的數(shù)據(jù)服務(wù)標(biāo)準(zhǔn)規(guī)范體系,獲取相應(yīng)的數(shù)據(jù),將分散數(shù)據(jù)采集進(jìn)入到平臺(tái)的信息資源庫中。在平臺(tái)基礎(chǔ)功能的支撐之下,通過數(shù)據(jù)資源目錄對信息資源庫進(jìn)行統(tǒng)一管理,統(tǒng)一對外提供數(shù)據(jù)資源共享服務(wù)。
基于物聯(lián)網(wǎng)的數(shù)據(jù)共享交換平臺(tái)總體架構(gòu)圖如圖1所示,平臺(tái)支持對分布式的海量的結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行統(tǒng)一存儲(chǔ)、統(tǒng)一管理,并提供靈活的權(quán)限管理和操作功能。系統(tǒng)提供統(tǒng)一的用戶管理和認(rèn)證體系。遵循平臺(tái)制定的數(shù)據(jù)服務(wù)標(biāo)準(zhǔn)規(guī)范體系,獲取相應(yīng)的數(shù)據(jù),將分散數(shù)據(jù)采集進(jìn)入到平臺(tái)的信息資源庫中。在平臺(tái)基礎(chǔ)功能的支撐之下,通過數(shù)據(jù)資源目錄對信息資源庫進(jìn)行統(tǒng)一管理,統(tǒng)一對外提供數(shù)據(jù)資源共享服務(wù)。
平臺(tái)總體架構(gòu)包括以下層次:
應(yīng)用層:各類應(yīng)用訪問的統(tǒng)一入口。
管控層:提供平臺(tái)的統(tǒng)一管理,包括接口管理、監(jiān)控統(tǒng)計(jì)、用戶管理、服務(wù)統(tǒng)計(jì)等模塊。
業(yè)務(wù)層:提供數(shù)據(jù)目錄、數(shù)據(jù)資源管理及共享交換服務(wù)等的功能實(shí)現(xiàn),包括數(shù)據(jù)目錄管理、數(shù)據(jù)資源管理、數(shù)據(jù)采集、數(shù)據(jù)交換、ETL及企業(yè)服務(wù)總線等模塊。
數(shù)據(jù)資源層:是提供數(shù)據(jù)共享與交換的支撐機(jī)構(gòu),它主要實(shí)現(xiàn)數(shù)據(jù)聚合與分層集中管理,建立數(shù)據(jù)的共享資料庫及資源目錄,為上層業(yè)務(wù)提供數(shù)據(jù)服務(wù)。
基礎(chǔ)設(shè)施層:主要包括基礎(chǔ)網(wǎng)絡(luò)資源、計(jì)算及存儲(chǔ)資源、數(shù)據(jù)庫系統(tǒng)等基礎(chǔ)設(shè)施,還包括物聯(lián)網(wǎng)設(shè)施、安全控制設(shè)備、身份認(rèn)證設(shè)施以及密鑰管理設(shè)施等。
政策法規(guī)與標(biāo)準(zhǔn)規(guī)范體系:包括相應(yīng)的國內(nèi)標(biāo)準(zhǔn)、行業(yè)標(biāo)準(zhǔn)以及平臺(tái)建設(shè)的相關(guān)標(biāo)準(zhǔn)。
安全保障體系:符合國家、相關(guān)安全管理部門,以及信息中心相關(guān)安全管理規(guī)定的要求,保障數(shù)據(jù)信息和數(shù)據(jù)服務(wù)的安全。
基于物聯(lián)網(wǎng)架構(gòu)的數(shù)據(jù)采集子系統(tǒng)邏輯架構(gòu)圖如圖2所示,數(shù)據(jù)采集子系統(tǒng)由物聯(lián)網(wǎng)數(shù)據(jù)采集服務(wù)、采集應(yīng)用服務(wù)、集成開發(fā)設(shè)計(jì)器、統(tǒng)一管理平臺(tái)等構(gòu)成。物聯(lián)網(wǎng)服務(wù)提供物聯(lián)網(wǎng)設(shè)備管理、物聯(lián)網(wǎng)節(jié)點(diǎn)接入授權(quán)、物聯(lián)網(wǎng)數(shù)據(jù)傳輸及數(shù)據(jù)的異構(gòu)管理等功能。采集應(yīng)用服務(wù)提供認(rèn)證授權(quán)、監(jiān)控管理接口、擴(kuò)展接口、數(shù)據(jù)橋接、數(shù)據(jù)適配、數(shù)據(jù)同步、數(shù)據(jù)抽取、數(shù)據(jù)存儲(chǔ)、處理流程、任務(wù)調(diào)度、轉(zhuǎn)換引擎等。集成開發(fā)設(shè)計(jì)器包括數(shù)據(jù)源接入、流程開發(fā)、任務(wù)配置、任務(wù)部署、調(diào)試跟蹤、任務(wù)執(zhí)行、監(jiān)控輸出、運(yùn)行日志。統(tǒng)一管理平臺(tái)主要實(shí)現(xiàn)數(shù)據(jù)采集過程中的監(jiān)管與控制,包括設(shè)備、節(jié)點(diǎn)、權(quán)限的控制與管理,采集過程中的運(yùn)行及狀態(tài)監(jiān)控,數(shù)據(jù)采集的性能統(tǒng)計(jì)與分析等。
圖2 基于物聯(lián)網(wǎng)架構(gòu)的數(shù)據(jù)采集子系統(tǒng)邏輯架構(gòu)圖
數(shù)據(jù)交換子系統(tǒng)主要提供數(shù)據(jù)交換的規(guī)則配置、流程管理、交換任務(wù)的調(diào)度、交換過程運(yùn)行狀況的監(jiān)控、系統(tǒng)資源占用情況及系統(tǒng)異常處理等功能。數(shù)據(jù)交換子系統(tǒng)是數(shù)據(jù)采集、傳輸、監(jiān)控的工具、手段,借助先進(jìn)的數(shù)據(jù)共享交換平臺(tái)工具,構(gòu)建安全、可靠、高效、一致的數(shù)據(jù)傳輸機(jī)制。
2.2.1 數(shù)據(jù)交換引擎
數(shù)據(jù)交換引擎是數(shù)據(jù)共享交換平臺(tái)的核心部分,采用基于JAVA技術(shù)設(shè)計(jì)的消息中間件軟件設(shè)計(jì),結(jié)合大數(shù)據(jù)和云計(jì)算的數(shù)據(jù)存儲(chǔ)和處理能力,支撐數(shù)據(jù)交換平臺(tái)實(shí)現(xiàn)海量、多格式、高可靠、高并發(fā)和高穩(wěn)定數(shù)據(jù)采集與分發(fā)。
在共享交換平臺(tái)中心部署服務(wù)節(jié)點(diǎn),實(shí)現(xiàn)前置交換系統(tǒng)與平臺(tái)間的穩(wěn)定可靠的信息傳遞,選擇合理的技術(shù)手段確保前置交換系統(tǒng)之間可靠的信息傳遞功能,實(shí)現(xiàn)交換信息內(nèi)容的“不丟、不錯(cuò)、不重”高效傳輸。支持交換節(jié)點(diǎn)之間的路由和備份路由功能,提供斷點(diǎn)續(xù)傳功能,并且提供數(shù)據(jù)的打包、傳遞、轉(zhuǎn)換及解包等功能。
2.2.2 交換監(jiān)控子系統(tǒng)
交換監(jiān)控子系統(tǒng)用于監(jiān)控?cái)?shù)據(jù)共享與交換的狀態(tài)、服務(wù)和日志等信息,提供前置交換系統(tǒng)的注冊與授權(quán)、狀態(tài)查詢、信息統(tǒng)計(jì)、更新及遠(yuǎn)程部署等功能,協(xié)同部門交換前置機(jī)和中心交換前置機(jī)的運(yùn)行并對交換平臺(tái)的運(yùn)行情況進(jìn)行管理和監(jiān)控。
2.2.3 前置交換子系統(tǒng)
前置交換子系統(tǒng)是業(yè)務(wù)應(yīng)用與平臺(tái)之間數(shù)據(jù)交換的橋梁,它負(fù)責(zé)提供前置數(shù)據(jù)交換的規(guī)則與模式,可以利用中間件進(jìn)行數(shù)據(jù)的交換和共享,實(shí)現(xiàn)數(shù)據(jù)格式的轉(zhuǎn)換與橋接,以及信息數(shù)據(jù)的傳輸?shù)裙δ堋?/p>
2.2.4 橋接交換子系統(tǒng)
橋接服務(wù)運(yùn)行環(huán)境和橋接服務(wù)配置工具。提供物理隔離情況下的數(shù)據(jù)交換。支持異構(gòu)系統(tǒng)的數(shù)據(jù)源(如Oracle、MySQL、SQLServer等)的各種字段類型(如數(shù)據(jù)庫表的字符型、日期型、數(shù)字型、Blob、Clob、流類型等)等在隔離的兩段網(wǎng)絡(luò)間實(shí)現(xiàn)跨域的數(shù)據(jù)交換。
2.2.5 交換傳輸子系統(tǒng)
交換傳輸子系統(tǒng)提供全生命周期的文件傳輸及處理服務(wù),提供交換服務(wù)實(shí)現(xiàn)數(shù)據(jù)庫表、業(yè)務(wù)系統(tǒng)、XML、文件等到文件的格式轉(zhuǎn)換、過濾、映射處理。提供傳輸服務(wù)實(shí)現(xiàn)文件(夾)的可靠傳輸、變化文件傳輸、壓縮、加密傳輸?shù)取L峁┙粨Q服務(wù)、Shell調(diào)用服務(wù)實(shí)現(xiàn)文件到數(shù)據(jù)庫、業(yè)務(wù)系統(tǒng)等集成;提供FTP服務(wù)實(shí)現(xiàn)和外部系統(tǒng)的集成;提供文件分類調(diào)用服務(wù)實(shí)現(xiàn)文件分類調(diào)用等。
數(shù)據(jù)處理,也稱ETL(Extract-Transform-Load),主要是對各數(shù)據(jù)源單位采集的原始信息進(jìn)行清洗、加工、轉(zhuǎn)換、比對等,并按照統(tǒng)一的標(biāo)準(zhǔn)對數(shù)據(jù)進(jìn)行串聯(lián)和匯集,最后將處理完的數(shù)據(jù)加載到相關(guān)存儲(chǔ)設(shè)備中。
2.3.1 數(shù)據(jù)清洗
數(shù)據(jù)清洗是根據(jù)不同的業(yè)務(wù)情況制定清洗規(guī)則,針對不能滿足業(yè)務(wù)需求的數(shù)據(jù),如不完整、有重復(fù)的數(shù)據(jù)進(jìn)行處理,最終達(dá)到應(yīng)用要求的過程[4]。數(shù)據(jù)清洗主要包括數(shù)據(jù)比對、過濾、關(guān)聯(lián)、去重、轉(zhuǎn)換及解析等過程,其目的就是保障數(shù)據(jù)的完整性、正確性和一致性。
2.3.2 數(shù)據(jù)加工
數(shù)據(jù)加工主要是兩方面的工作:構(gòu)建源數(shù)據(jù)處理體系和搭建數(shù)據(jù)資源池基礎(chǔ)數(shù)據(jù)庫群。源數(shù)據(jù)處理系統(tǒng)分析源數(shù)據(jù)庫數(shù)據(jù)特征,根據(jù)源數(shù)據(jù)特征和目標(biāo)數(shù)據(jù)庫結(jié)構(gòu)安裝配置ETL工具,進(jìn)行數(shù)據(jù)抽取/清洗/轉(zhuǎn)換/加載(即ETL過程),從數(shù)據(jù)采集到平臺(tái)之后到建成可供分析應(yīng)用的數(shù)據(jù)倉庫,之間要經(jīng)歷繁的ETL過程(數(shù)據(jù)清洗、轉(zhuǎn)換和整合)。
2.3.3 數(shù)據(jù)抽取
數(shù)據(jù)在經(jīng)過清洗和加工以后,可以對數(shù)據(jù)資源進(jìn)行編目,形成共享資源目錄,以支撐數(shù)據(jù)的檢索和定位。為了滿足不同的業(yè)務(wù)和數(shù)據(jù)形式的要求,在需求明確的情況下,可以制定不同的數(shù)據(jù)抽取規(guī)則接口,對數(shù)據(jù)源中分布的,異構(gòu)的、關(guān)聯(lián)的數(shù)據(jù)進(jìn)行抽取。數(shù)據(jù)抽取的過程主要是從各個(gè)業(yè)務(wù)系統(tǒng)上根據(jù)約定的采集周期采集全量或增量數(shù)據(jù)。在采集過程中可能涉及系統(tǒng)內(nèi)或跨系統(tǒng)的數(shù)據(jù)關(guān)聯(lián)獲取。
數(shù)據(jù)管理子系統(tǒng)主要是針對數(shù)據(jù)的創(chuàng)建、存儲(chǔ)、使用、共享及評價(jià)等過程進(jìn)行的管理。主要包括元數(shù)據(jù)管理、任務(wù)管理、數(shù)據(jù)融合等幾個(gè)方面。元數(shù)據(jù)管理是最基本的數(shù)據(jù)管理,任務(wù)管理主要根據(jù)業(yè)務(wù)需求,以任務(wù)的形式建立數(shù)據(jù)加工的流程,實(shí)現(xiàn)對數(shù)據(jù)處理任務(wù)的配置、任務(wù)調(diào)度、運(yùn)行監(jiān)控管理等工作。數(shù)據(jù)融合主要針對物聯(lián)網(wǎng)跨域數(shù)據(jù)特點(diǎn),挖掘各類實(shí)體數(shù)據(jù)的關(guān)聯(lián)系統(tǒng),對數(shù)據(jù)進(jìn)行整合、存儲(chǔ)及管理,使數(shù)據(jù)最終能夠共享與交換。
2.4.1 元數(shù)據(jù)管理
元數(shù)據(jù)管理是對物聯(lián)網(wǎng)各類數(shù)據(jù)的最基本管理功能,實(shí)現(xiàn)元數(shù)據(jù)的采集、注冊、變更、授權(quán)及統(tǒng)計(jì)等生命周期的管理功能。平臺(tái)系統(tǒng)提供元數(shù)據(jù)管理功能,通過對物聯(lián)網(wǎng)數(shù)據(jù)的加工設(shè)計(jì)、執(zhí)行處理、數(shù)據(jù)融合等步驟,主動(dòng)產(chǎn)生或提取數(shù)據(jù)元數(shù)據(jù),并通過制定元數(shù)據(jù)開放的使用規(guī)范及標(biāo)準(zhǔn),對元數(shù)據(jù)資源進(jìn)行發(fā)布、申請、審核、授權(quán)等操作,以便將數(shù)據(jù)進(jìn)行開放共享與交換。元數(shù)據(jù)管理還可以實(shí)現(xiàn)元數(shù)據(jù)的模型定義并存儲(chǔ),在功能層包裝成各類元數(shù)據(jù)功能,最終對外提供數(shù)據(jù)的應(yīng)用及展現(xiàn);還可以提供元數(shù)據(jù)的關(guān)聯(lián)分析和流向功能,方便對數(shù)據(jù)實(shí)現(xiàn)追蹤溯源和流向的分析與統(tǒng)計(jì)。
2.4.2 任務(wù)管理
任務(wù)管理及調(diào)度邏輯圖如圖3所示,任務(wù)管理包括數(shù)據(jù)處理任務(wù)的配置、任務(wù)調(diào)度和任務(wù)運(yùn)行控制管理等。這部分主要實(shí)現(xiàn)對物聯(lián)網(wǎng)數(shù)據(jù)采集和處理的任務(wù)規(guī)則、參數(shù)和服務(wù)等的配置,實(shí)現(xiàn)物聯(lián)網(wǎng)節(jié)點(diǎn)運(yùn)行狀態(tài)、節(jié)點(diǎn)資源狀態(tài)、節(jié)點(diǎn)任務(wù)運(yùn)行狀態(tài)及節(jié)點(diǎn)的歷史運(yùn)行狀態(tài)的監(jiān)控。
圖3 任務(wù)管理及調(diào)度邏輯圖
2.4.3 數(shù)據(jù)融合
采用關(guān)系數(shù)據(jù)庫技術(shù)、MPP分布式存儲(chǔ)技術(shù)、Hadoop大數(shù)據(jù)處理技術(shù)和柔性多引擎檢索技術(shù)構(gòu)建數(shù)據(jù)存儲(chǔ)系統(tǒng),是預(yù)處理及過濾數(shù)據(jù)庫內(nèi)資料、讀取資料來源、分析資料轉(zhuǎn)換規(guī)則及載入系統(tǒng),并將轉(zhuǎn)換資料寫入主資料庫,最后完成跨域數(shù)據(jù)整合、存儲(chǔ)及管理,是數(shù)據(jù)交換平臺(tái)關(guān)鍵部分之一[5-6]。這要求具有完全分布式的、多副本機(jī)制的、對等的、不共享的系統(tǒng)架構(gòu),沒有單點(diǎn)故障或瓶頸。系統(tǒng)能線性增長,每新增加一個(gè)節(jié)點(diǎn)能同時(shí)增加系統(tǒng)性能和存儲(chǔ)容量。
支持增量索引,采用集中索引和實(shí)時(shí)索引相結(jié)合的方式,集中索引針對批量更新的海量數(shù)據(jù)庫,其索引的制作耗時(shí)較長,由管理員確定索引時(shí)間,如每天夜間等;實(shí)時(shí)索引適用于頻繁更新的數(shù)據(jù)庫,保證記錄的添加、修改、刪除都能實(shí)時(shí)地反映到搜索結(jié)果當(dāng)中。
隨著信息技術(shù)的發(fā)展,物聯(lián)網(wǎng)行業(yè)應(yīng)用版圖不斷增長,物聯(lián)網(wǎng)系統(tǒng)數(shù)據(jù)也呈現(xiàn)出數(shù)據(jù)量大、多樣、多域、多應(yīng)用等特點(diǎn),在各個(gè)應(yīng)用領(lǐng)域形成了大量數(shù)據(jù)不共享、信息不互通的物聯(lián)網(wǎng)平行應(yīng)用系統(tǒng),打破信息數(shù)據(jù)壁壘,實(shí)現(xiàn)物聯(lián)網(wǎng)數(shù)據(jù)的共享與交換,是物聯(lián)網(wǎng)系統(tǒng)廣泛應(yīng)用的關(guān)鍵。本文基于物聯(lián)網(wǎng)構(gòu)架,提出一種基于物聯(lián)網(wǎng)的數(shù)據(jù)共享交換平臺(tái)設(shè)計(jì)方案,完成了數(shù)據(jù)采集、數(shù)據(jù)交換、數(shù)據(jù)處理與數(shù)據(jù)管理等方面的功能,并提供與之相適應(yīng)的數(shù)據(jù)共享交換接口及數(shù)據(jù)服務(wù),進(jìn)一步破除“信息孤島”和“數(shù)據(jù)煙囪”現(xiàn)象,推動(dòng)數(shù)據(jù)資源的整合,對物聯(lián)網(wǎng)系統(tǒng)的多域數(shù)據(jù)共享與交換有重要意義。