摘 要:物聯網的快速發展,對海量數據處理技術要求越來越高。針對物聯網數據的實時性、海量性、多態與異構性特征,文章通過對基于分布式內存數據庫的數據庫技術和基于云計算技術的分布式實時數據庫技術的分析研究,認為以上兩種數據庫技術可以適合并滿足物聯網海量數據的處理需求。
關鍵詞:實時數據庫;物聯網;海量數據;內存數據庫;云計算
中圖分類號:TP393 文獻識別碼:A 文章編號:2095-1302(2014)06-0088-03
0引言
隨著物聯網技術的快速發展,在農業、工業、交通、醫療、環保等領域每時每刻都在產生大量的數據。在各行業業務的不斷擴大、信息化的不斷深入的背景下,數據已滲透到企業日常業務的各個應用場景之中。用戶對于海量數據的處理和實施分析的及時高效性越來越重視,快速有效的海量數據處理和實時分析技術將有助于企業快速了解市場行情變化、迅速做出決策,從而占得發展先機。同時該需求也對數據庫技術提供更高要求。
物聯網中不同類型子系統的海量異構數據需要統一的處理及存儲,那么就要求該海量數據處理方法能融合多個不同網絡、多個數據源、異構的海量數據并且能對這些數據進行高效快速的處理,同時,該海量數據處理任務需要對包括網絡資源、計算資源、存儲資源等多種資源進行統一的規劃和調度,為數據處理分配合適的資源,將任務分散到多個聯網的節點上并行計算,可以有效地加快海量數據處理的速度。而傳統的數據處理技術和數據庫管理系統(DBMS)已經無法完全適用于物聯網海量數據的處理與存儲管理。因此,本文通過對物聯網海量數據處理的實時數據庫技術進行分析與研究,選擇滿足海量數據處理需求的實時數據庫技術。
1物聯網海量信息處理關鍵技術分析
物聯網中感知設備種類繁多,并且來自不同類型網絡,需要物聯網的海量數據處理方法能融合多個不同類型網絡、多個數據源、異構的海量數據并對這些數據進行高效快速的處理,從中篩選獲取有價值的信息,對有價值信息進行綜合分析,從而提供智能決策。
1.1多源數據融合技術
在不同物聯網節點上獲取的信息具有不同的數據類型特征,針對多源異構的海量數據需建立統一的層次化表達數據結構和本體標注,為多源數據信息的融合提供標準的格式,結合多源異構數據的數據聚類、時空轉換與度量等技術,解決不同來源數據的一體化有效利用問題。
1.2物聯網海量數據存儲、檢索和查詢技術
物聯網在應用中廣泛部署感知設備,采集生成大量實時、多源、多粒度、多緯度流數據,其數據規??蛇_到TB甚至是PB級;開展物聯網海量數據的存儲、檢索和查詢等技術研究,對集中有效地處理這些海量數據,高效性管理,高實時性地統一定制所需數據給用戶,以達到這些技術與用戶信息系統間的完美結合具有重要意義。
存儲機制:采用就近存儲原則,提供一個全局摘要視圖節點,各數據歸檔節點將自己的數據分布情況通知給全局摘要視圖節點,查詢請求首先被發送到全局摘要視圖節點,并能快速定位到數據所在網絡節點,避免泛洪式查詢;設計存儲磁盤容量耗盡時的數據回收機制,根據查詢歷史統計結果和當前系統存儲容量情況,為不同類型數據動態配置數據生存周期。對超過生存周期的數據將被新增數據覆蓋。由于物聯網數據具有一次寫、很少修改、多次讀、不刪除的特點,對于單個網絡節點的數據存儲技術,建議采用非關系型數據庫技術。
索引機制研究:物聯網數據包括時態流數據和空間流數據。研究根據歸檔的數據種類,自動創建最優化的索引算法。對于時態流數據,主要查詢類型為間隔查詢。對于空間類型的流數據來說,可以用查詢操作方式來尋找某個區域內所有符合條件的對象,并運用多維索引技術,建立最優索引,使系統滿足效率實時處理要求。
2物聯網數據庫技術要求
數據大小、數值范圍、索引。物聯網中存在數據的大小和數值范圍是極其巨大的,物聯網系統中涉及到眾多不同類型風格的數據對象,不能僅對數據庫編目進行管理,所以索引對物聯網實時數據庫要求很高。
查詢語言。數據庫管理系統查詢語言以前基本上都基于結構化數據,而可擴展標記語言(XML)提供了一種更為松散結構的數據表現方式,并且支持自定義數據描述的方式,該方式能夠整合文檔、網頁以及關系數據庫等數據源進行查詢。
多相性和完整性。物聯網由眾多獨立的感知或網絡節點組成,每個節點有著不同的保存數據方式,隨著物聯網數據量的不斷增長和不同類型系統的日益增多,異構性和互操作性的問題是物聯網實時數據庫需要面對的重要問題。
時間序列集聚。傳統的查詢語言如SQL,已經不適合進行時間序列數據的查詢,需要將物聯網實時數據以時間有序的方式組織并存儲起來,對于提高查詢任務的性能及支持快速查詢響應至關重要。針對物聯網實時數據的時序特征,最佳的時間采樣周期極大地依賴于數據性質和應用領域,需要物聯網實時數據庫能定義合適的查詢設備,提供連續數據采樣服務。
3物聯網實時數據庫技術分析
本文針對物聯網海量數據的特性和對實時數據庫技術的要求進行分析。
3.1分布式內存數據庫技術
分布式數據庫是傳統數據庫技術與網絡技術相結合的產物。一個分布式數據庫是在物理空間中分布在計算機網絡各個節點上,但在邏輯上可以屬于同一系統的數據集合,圖1所示是分布式數據庫的系統架構。該分布式內存數據庫技術具有局部物理空間自治與邏輯全局共享性、數據的冗余性、數據的獨立性以及系統的透明性等特點。分布式數據庫管理系統支持全局控制集中、全局控制分散、全局控制部分分散的控制方式; 由局部場地數據庫管理系統、全局數據庫管理系統、全局數據字典、通信管理組成,負責建立和管理局部數據庫,實現場地自治能力,執行局部應用等功能以及提供分布透明性,協調全局事物的執行并協調各局部數據庫管理系統,保證數據庫的全局一致性,實現更新同步等功能。數據庫技術與人工智能技術、網絡通信技術、并行計算技術等互相滲透,互相結合,成為當前數據庫技術發展的主要特征。
在這個系統中,要滿足以下要求:
(1)各網絡節點內存數據庫保持其自治性;
(2)內存數據庫集群化,通過讀寫分離,垂直和水平切分策略應對海量數據存儲;
(3)多種數據切分方式,在總體垂直切分模式基礎上進行水平切分,應對不同的應用和數據所需要做不同的處理;
(4)各節點內存數據庫間相互協調,促使每個內存數據庫都可以作為其他結點的服務端;
(5)保持數據分布的透明性,滿足數據的分布性和數據庫間的協調性特點,結合內存數據庫之間平衡的改進,解決物聯網海量數據實時處理的要求;
(6)內存數據庫持久化,內存數據庫中的數據變化需要復制到與磁盤數據庫上,通過兩級數據庫及異步寫來完成持久化。
圖1分布式數據庫系統架構
3.2基于云技術的分布式實時數據庫技術(DRTDBS)
“基于云技術的分布式實時數據庫”[2]架構如圖2所示,將實時數據庫技術與云計算技術進行深度融合,通過分布在世界各地的云計算中心服務器集群實現具有數據庫規模可擴展、可伸縮,數據庫管理系統可靠性、可維護性高的分布式實時數據庫系統,該系統包含了數據處理壓縮、數據檢索、數據存儲虛擬化技術、沖突處理、內容分發網絡技術、事務調度、故障監測與恢復、負載均衡等多項功能,在實時性、分布式、虛擬化基礎上實現海量數據存儲、高并發事務處理、存儲加密處理、分布式冗余備份、系統動態擴展等功能。
圖2分布式實時數據庫架構
在分布式實時數據庫的構架中,數據采集器和數據庫服務器節點的服務組件均通過分布式通訊服務平臺的中間件接口接入該平臺,實現同其他服務組件的交互。各組件以服務的方式與其他功能組件進行連接、調用,可以實現數據交互的自由、高效。另外通過與同樣接入該服務的其他節點的進行通訊連結,數據的收發也可以通過分布式通訊服務平臺的接口實現。分布式通訊服務平臺通過內部的緩沖隊列和異步調用機制,使節點在數據發送時無需關心接收節點的狀態,在接收數據時將通過消息回調實現節點數據獲取。分布式數據存儲檢索平臺如圖3所示。
多臺數據采集器和數據服務器所需的數據存儲、檢索服務組件通過云服務接入平臺形成統一的數據存儲、數據檢索服務并對外提供該服務,突破了以往單臺實時數據處理服務器的孤島模式,形成一個去中心化的、對等的分布式數據存儲、數據檢索等功能的系統。數據采集器或數據服務器將采集的實時數據通過服務平臺發送到統一的數據存儲服務功能模塊進行實時數據的存儲。而客戶端則通過平臺接口或是Web服務器連接入到通訊服務平臺,并向統一的數據查詢服務申請和進行數據查詢。對通過分布式通訊服務平臺向其他節點發送數據的服務器節點來說,數據發送成功就可以認定為數據寫入成功。當節點接收到數據時,會通過回調接口完成數據的接收。
圖3分布式實時數據存儲檢索平臺
4結語
本文結合物聯網海量數據的特征,列舉了物聯網海量數據處理關鍵技術及物聯網對實時數據庫技術的要求;著重分析研究了分布式數據庫技術和基于云技術實時數據庫技術來解決物聯網海量數據處理的問題。第一,分布式內存數據庫系統中各節點內存數據庫能保持其自治性、數據的分布性和數據庫間的協調性等特點,結合其數據分布的透明性滿足了數據庫間平衡的改進,就能很好地解決物聯網海量數據實時處理的要求。第二,本文通過研究高性能分布式存儲技術與云計算技術,基于分布式應用服務,多臺數據采集器和數據服務器的數據存儲、檢索服務組件通過云服務接入平臺結成一個統一的數據存儲、數據檢索服務并對外提供服務,形成一個去中心化的、對等的分布式數據存儲、數據檢索系統并支持系統規模動態擴展,適合并滿足物聯網海量數據處理需求。
參 考 文 獻
[1]劉寶華. 基于內存數據庫的海量數據實時處理策略[J]. 艦船電子對抗, 2013, 36(1): 109–113.
[2]錢益舟. 基于云技術的分布實時數據庫高性能數據存儲檢索機制的研究 [D].杭州:浙江大學, 2012.
[3]胡海東. 物聯網中的海量數據處理技術[J]. 科技創新導報,2013 (3): 188.
[4]高聞迪. 突發性海量數據處理技術在物聯網監控系統中的研究與應用[D].北京:北京郵電大學, 2013.
[5]于秀麗,邢智毅. 面向物聯網的多媒體數據庫檢索技術應用研究[J]. 物聯網技術,2013,3(2):65-68.
Things massive database technology data processing analysis and research
WENG Zu-quan, ZHANG Qi
(Beijing Saipu Shineford, Technology Co., Ltd.,Ministry of Industry and
Information Technology Software and Integrated Circuit Promotion Center, Beijing 100038, China)
Abstract:With the rapid development of the Internet of things, Increasingly high demand for massive data processing.With regard to the feature of data in internet of things – massive, polymorphism and isomerism, real-time – two kinds of data processing techniques is developed in this article, they are Real-time Memory Database System and Distributed Real-time Database System based on Cloud Computing, Thetwodatabase technical are suitability and meet demand for data processing of IOT’s Massive data.
Keywords: Real-time Database System, Internet of things, massive data, Memory Database System, Cloud Computing