?

物聯網分布式存儲技術的應用與分析

2017-11-27 07:26劉兵
物聯網技術 2017年11期
關鍵詞:存儲技術物聯網分布式

劉兵

摘 要:隨著物聯網業務的興起,參與網絡連接的終端迅速增多,由此產生了海量數據。對于數據的存儲,從數據收集的途徑、分析開發實際需求以及安全性出發,分布式存儲是最佳選擇。

關鍵詞:物聯網;分布式;存儲技術;終端

中圖分類號:TP39 文獻標識碼:A 文章編號:2095-1302(2017)11-00-02

0 引 言

近年來,隨著網絡技術和通信技術,特別是無線通信技術的快速發展,人類社會逐漸進入物物相聯的時代。雖然物與物之間的信息交換單次信息量不大,但由于終端數量龐大,將會生成海量數據。如何更好地存儲這些數據是物聯網絡系統建設者需要思考的問題。

1 物聯網行業發展現狀

20世紀90年代至今,物聯網經歷了漫長的發展過程。直到2009年,物聯網被正式列為國家五大新興戰略性產業之一,并寫入當年的《政府工作報告》,隨即物聯網受到了社會的極大關注和大量人力、物力資源的投入,并開始迅速發展。2016年12月18日,工業和信息化部印發的《信息通信行業發展規劃物聯網分冊(2016-2020年)》(簡稱《物聯網分冊》)指出,2015年底我國物聯網產業規模已達7 500億元,整個“十二五”期間年均復合增長率達到25%。我國機器與機器連接數突破1億,占全球總量的31%,成為全球最大市場?!笆濉逼陂g,隨著萬物互聯時代開啟,我國物聯網產業規模也將保持高速發展勢頭,預計2017年,產業規模將達到萬億級。

2 物聯網業務對分布式存儲的需求

物聯網分為應用層,數據層,網絡層和感知層。對網絡層來說,雖然在物聯網大力發展時期將面臨大量通信節點暴增的挑戰,但按照有序發展支撐和演進式逐步建設的規劃,目前的網絡資源仍然足夠支撐業務增長。在充分利用現有網絡資源的前提下,依據業務實際增長情況逐步擴展,分階段改造網絡,逐步完成網絡層的建設。

物聯網應用所帶來的數據量和數據讀寫業務壓力不同以往,數據層所面臨的挑戰相對而言更大。與傳統業務相比,這方面的需求都呈指數級增長,遠高于現有系統的承載能力。物聯網的典型應用通常包括海量傳感器,數量可達數百萬個,采樣頻率也較高。雖然單個數據并不大,但積少成多,因此數據總量非??捎^。這兩種情況的結合,即要求存儲系統能并發處理數百萬個傳感器的高頻數據寫入,并發壓力和傳統生產系統有著數十倍乃至上百倍的差異。一個典型的物聯網存儲子系統可能需要支持數千億個小文件的存儲,同時需提供超高的并發讀寫性能支撐。

由于視頻監控也是典型的物聯網應用,來自各類固定、移動監控攝像頭甚至無人機的監控錄像和高清圖片也是物聯網存儲系統所要處理的數據類型。此類數據類型通常是連續的視頻流,而并發的高帶寬和海量存儲空間需求也是前所未有的巨大挑戰。同時,由于物聯網“物”的特征,很多時候并不需要像人類參與的工種一樣有典型的時間周期,物聯網系統經常全年無休,每時每刻都在不知疲倦地產生數據,同時由于業務本身持續不斷,因此對存儲系統的高可用性也有很強的需求。

從數據類型上看,相對傳統業務的結構化數據占比較高,物聯網應用和新業務將產生大量的非結構化和半結構化數據,這也將對存儲系統提出新的挑戰。

物聯網大規模的數據存儲或計算需求通過控制節點分發到各物理機,采用分布式存儲方案解決了傳統集中計算存儲存在的性能瓶頸問題和成本問題,近年來獲得了廣泛應用。

3 分布式存儲CAP理論

CAP是分布式系統設計中的經典理論,也是工程實施和產品研發中的基本理論依據,對分布式存儲產品設計、選型、實施具有指導意義。這一理論由Eric Brewer在2000年的PODC會議上提出,最初僅僅是一個猜想,2年后被MIT的Seth Gilbert和Nancy Lynch證明為理論,并很快被互聯網企業如Ebay,Twitter,Amazon等接受和擁護。17年來,該理論已被廣泛應用于各類分布式系統設計中。CAP理論簡單說來只有一句話:在分布式系統中,一致性(Consistency),可用性(Availability)和分區容忍性(Partition-Tolerance)三種特性只能同時實現其中部分,常取其中兩種,舍棄一種。

3.1 數據一致性

如果系統對一個寫操作返回成功,那么之后的讀請求都能讀到這個新數據;如果返回失敗,那么所有讀操作都不能讀到該數據,對調用者而言,數據具有強一致性(Strong Consistency) ,又叫原子性(Atomic),線性一致性(Linearizable Consistency)。

無論對數據如何操作,該特性可保證得到的數據都是完成狀態的數據,否則操作失敗。類似于原子性的概念,一個操作必須是完整的,杜絕牽扯不清的中間狀態。對數據的修改必須保證最終數據是原子操作的合格品,否則失敗退出,決不能出現修改了一半的數據半成品。例如多個應用并發對系統調用時,應用不會得到一張被另外一個應用請求畫了一半的圖,或更新了上半段的說明書。

3.2 服務可用性

在指定的響應時間窗口內,每個操作請求都能到響應并返回,不會持續等待。該特性接近實時系統的定義,能夠確保系統及時響應,避免死鎖,從而為更多的并發業務和應用提供“可用”的服務。

3.3 分區容忍性

保證系統支持分區,在分裂的情況下,各節點仍可正常提供服務,支撐業務和應用。

只要還有分區存活就能給出及時響應并提供服務。該特性保證了系統是可分區的,各分區都能夠獨立提供服務,配合互為備份。系統可以方便地進行橫向擴展,這種特性也是跨分區(設備)分布式系統最具價值之處。

CAP理論對分布式系統實現有非常重大的影響,我們可以根據自身的業務特點,在數據一致性和服務可用性之間作出傾向性選擇。endprint

4 分布式存儲的對稱式架構與非對稱式架構比較

按照元數據的管理方式,可分為對稱式集群文件系統和非對稱式集群文件系統。進行簡單類比,非對稱式架構是管理和數據分離,而對稱式架構是管理和數據合一。兩者在擴展性、健壯性、安全性和后端數據交互壓力對系統的影響方面存在差異。

4.1 擴展性

對稱式架構由于每個節點都承擔管理和數據雙重職責,節點間通信較為復雜,導致節點數量受限于通信量。當節點數量增加時,信息同步復雜度呈幾何級數增長(以10個節點為例,每個節點可能同時與其他9個節點通信,此時系統連接總數近似為10×10,若增加到100個節點,則連接總數為99×99),總體性能將大幅下降至不可接受,因此必須對集群規模加以限制。以市場成熟度最高的對稱式架構產品Isilon OneFS為例,雖然官方宣稱最大集群規模為144個節點,但在實際部署中,絕大多數都只拆分成10個節點左右。

非對稱式架構由專用的服務器維護元數據,實現管理和數據分離,擴展性良好。節點增加帶來的元數據復雜度呈線性,因而集群性能能夠實現線性擴展,在業界廣泛采用。全球Top 100的集群存儲系統中,鮮有采用對稱式架構,Top 10中更是全部采用非對稱式架構。

4.2 健壯性和安全性

對稱式架構的多個節點間耦合性緊。如果某單個節點出現問題,響應超時得不到應答,將會影響整個集群的性能。一旦某單個節點發生嚴重故障,將導致文件系統元數據的一致性被破壞,后果嚴重。輕則丟失數據或不一致,重則系統整體癱瘓,無法提供存儲服務。

在非對稱式架構中,節點間采用松耦合機制,可以很好地隔離數據節點故障,系統的健壯性更強。

4.3 后端數據交互壓力對系統的影響

由于分布式系統數據分散存放在不同的節點,因而出現磁盤故障或節點故障時不可避免地會進行跨界點的數據重構。

在對稱式架構中,數據路徑和控制路徑通?;煊?,當追求重構速度時,節點間的數據交互壓力較大,會使控制信息擁塞,而控制信息對響應延遲要求較高,一旦有任何一條控制信息延遲,就會拖慢整個系統。若不得已采用單獨的控制鏈路,則需在每臺設備上都單獨增加硬件,從而加大了成本。

非對稱式架構采用數據路徑與控制路徑分離的方式,任何數據節點滿負載運行或數據節點間的網絡擁塞均不會影響到整個系統的性能波動(性能波動僅限于故障節點)。

5 分布式存儲的數據保護模式

存儲領域的數據冗余機制長期以來發生了革命性的進展,RAID、副本一直是當仁不讓的最終選擇。近幾年,尤其是在規模較大的應用場景下,糾刪碼越來越多地出現在大眾視野中,成為RAID、副本之外的第三種選擇,因此也獲得了越來越多的關注。

糾刪碼(Erasure Code)是一種編碼容錯技術,最早用以解決通信行業中部分數據在傳輸中的損耗問題。其基本原理是把傳輸的信號分段,加入一定的校驗后再讓各段間發生一定的聯系,即使在傳輸過程中丟失部分信號,接收端仍能通過算法把完整的信息計算出來。如果嚴格區分,按照誤碼控制的不同功能,還可以分為檢錯、糾錯和糾刪類型。

糾錯碼不僅具備識別錯碼功能,還具備糾正錯碼功能,其適用場景通常采用大規模部署方式。從傳統情況來看,RAID通常在企業級環境中應用較多。在幾臺或十幾臺存儲設備規模的IT系統中,較常使用穩定可靠、歷經數十年磨礪的RAID技術。而在數據中心級的大規模部署中,RAID不再受歡迎,大部分分布式系統都偏好副本模式,均看重其高可靠性和讀性能優化的特點。然而副本帶來的成本壓力也讓眾多企業叫苦不迭,因此,糾錯碼技術的適時出現,以其更低成本和更高技術含量及提供近似可靠性的特點,吸引了眾多分布式存儲和云存儲的廠商和用戶。

6 結 語

文章從技術特點以及實際應用效果,分析了數據存儲的不同技術,并將傳統技術和糾錯碼技術進行對比,論證了分布式存儲是物聯網業務的最佳選擇。

參考文獻

[1]金海,劉文超,韓健亭,等.家庭物聯網應用研究[J].電信科學,2010,26(2):10-13.

[2]寧雄雁,武文忠,楊照宏,等.應用于海量存儲中高度容錯的新編碼方案[J].計算機應用研究,2007,24(12):41-43.

[3]王劍柯.云計算環境下的分布式存儲[J].中國新通信,2015,17(20):33.

[4]李廷力,李宏宇,田野,等.物聯網存儲模式與方案研究[J].計算機應用研究,2013,30(11):3201-3208.

[5]馬穎,朱新剛,王瑩,等.多通道分布式智能終端研究與設計[J].物聯網技術,2014,4(4):66-68.

[6]孔陶茹.云存儲應用的現狀、挑戰、展望、創新及探討[J].物聯網技術,2014,4(2):69-71.

[7]薛建生,于建忠,黃磊,等.物聯網海量數據的分布式存儲算法[J].小型微型計算機系統,2013,34(9):2081-2084.

[8]劉巍,王冬鴿.物聯網安全體系結構研究[J].物聯網技術,2016,6(4):61-63.endprint

猜你喜歡
存儲技術物聯網分布式
關于計算機網絡存儲技術分析
基于FAT文件系統的數據存儲技術的研究
數據存儲技術的應用
中國或成“物聯網”領軍者
基于FPGA的并行測試高速存儲技術
基于DDS的分布式三維協同仿真研究
西門子 分布式I/O Simatic ET 200AL
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合