標籤:物聯 缺陷 因此 庫存 網路 儲存 通過 部署 穩定性
轉自:http://blog.csdn.net/guanhui1997/article/details/72840769
工業大資料漫談12:即時資料庫與時序資料庫
在工業大資料資料庫儲存領域,除了傳統的關係型資料庫和分散式資料庫以外,還有一種類型的資料庫是非常常用,而且是非常有必要的,就是即時資料庫和時序資料庫。
即時資料庫誕生於美國,主要是因為現代工業製造流程及大規模工業自動化的發展,導致大量的測量資料需要整合和儲存,而採用關聯式資料庫難以滿足速度和容量的要求,因此在80年代中期,開始誕生了適用於工業監控領域的即時資料庫。
即時資料庫其實並不單單只是一個資料庫,而是一個系統,包括對各類工業介面的資料擷取,海量監測資料的壓縮、儲存及檢索,基於監測資料的反饋及控制功能等。
即時資料庫的出現,主要是為瞭解決當時關係型資料庫不太擅長的領域,包括:
1、海量資料的即時讀寫操作
工業監控資料要求採集速度和響應速度均是毫秒級的,一個大型企業幾萬甚至幾十萬監測點都是常有的事情,這麼大容量的高頻資料,如果用關聯式資料庫進行儲存,由於關係庫本身設計的理念,導致它很難進行每秒幾十萬的資料的讀寫操作,而即時資料庫通過轉為快速讀寫設計的時標型資料結構、高頻緩衝等技術,可以實現海量資料的即時讀寫操作。
2、大容量資料的儲存
由於資料擷取是海量的監控資料,那麼如果用傳統資料庫進行儲存,將會佔用大量的儲存空間,如果我們用關聯式資料庫儲存10000個監測點,每個監測點每秒鐘採集一次雙精確度數的資料,即使不考慮索引等因素,也需要5-6T的儲存空間,這裡還不包括儲存跟監測點相關的時間等因素,如果都包括,再建立索引,則需要15T-20T的儲存空間。即時資料庫採用了專門的壓縮演算法,包括哈佛曼演算法、旋轉門演算法以及一些二次壓縮演算法,壓縮比普遍能夠達到30:1左右,再加上對於時間及索引的特殊處理,儲存量能夠縮小到關係庫的1/40,因此,上面的例子只需要500G的空間就能夠進行有效儲存了。
3、整合了工業介面的資料擷取
由於曆史和壟斷的原因,目前工業通訊、傳輸的協議種類繁多,即時庫一般都整合了大量的工業協議介面,可以對各種類型的工業協議進行解析和傳輸。同時,隨著即時資料庫的發展,介面軟體部分也慢慢被獨立出來,即可以與即時資料庫核心集中式部署在1台電腦上,也可以單獨部署在介面機上,從而提供了更好的可擴充性和穩定性。
4、整合控制功能,可實現即時控制
即時資料庫一般都提供下行控制介面,並且是高速寫出。寫的效率嚴重依賴於介面通訊效率和執行機構。因此,即時資料庫大都是從工控軟體廠商發展而來的,他們就有豐富的工業控制寫入的經驗。即便如此,畢竟工業系統對時序有嚴格的要求,而資料庫從讀到寫,會出現時滯,因此,即時資料庫一般不適宜對快速開關量的控制。
在雲端運算的時代,即時資料庫的一些缺點就慢慢的顯露出來了。
首先,由於即時資料庫是基於時標進行處理的,就導致它只能簡單的使用時間段進行查詢和檢索,當然,各大廠商也開發了許多工具,但無論如何檢索的豐富性不能和關係庫比擬。
其次,由於即時庫都是出售給大型工業企業的,因此價格昂貴,在物聯網時代,對於中小工業企業來說,是個不小的成本。
再次,傳統即時庫在部署時不夠方便靈活,傳輸也更多的考慮工業網路,甚少考慮互連網的情況,不太適應當下雲端運算環境的部署。
這個時候,新興的時序資料庫就出現了。時序資料庫在2017年火了起來,出現了大量的開源和商業產品,時序資料庫就是存放時序資料的資料庫,並且需要支援時序資料的快速寫入、持久化、多緯度的彙總查詢等準系統。時序資料庫其實主要是即時資料庫的資料存放區部分,但是,由於它採用了新的技術,極大地擴充了資料的容量,除了資料點和時間戳記之外,還提供標籤和內容等對資料的描述,並且提供各種彙總查詢,彌補了即時庫的缺陷。
但是,時序資料庫不提供工業介面、下行控制等功能,這些都需要開發人員自行開發,或者將原有的介面與時序庫對接。
當然,不管是即時資料庫還是時序資料庫,都在飛速發展中,雙方一定會互相借鑒,互相學習,會提供更好、更多的產品供工業大資料使用。
【轉載】工業大資料漫談12:即時資料庫與時序資料庫