RTDB 實時數據庫RTDB(Real-Time Data Base)基礎 原

實時數據庫RTDB(Real-Time Data Base)是數據和事務都有定時特性或顯示的定時限制的數據庫。它適用於處理不斷更新的快速變化的數據及具有時間限制的事務處理。RTDB的本質特徵就是定時限制,定時限制可以歸納爲兩類:一類是與事務相聯的定時限制,典型的就是“截止時間”;另一類爲與數據相聯的“時間一致性”。時間一致性則是作爲過去的限制的一個時間窗口,它是由於要求數據庫中數據的狀態與外部環境中對應實體的實際狀態要隨時一致,以及由事務存取的各數據狀態在時間上要一致而引起的。
實時數據庫子系統是SCADA(Supervisory Control And Data Acquisition,即數據採集與監視控制系統。)系統的核心之一。
實時數據庫,它們用在要求非常嚴格、數據量非常大的生產工控中。
實時數據庫誕生於美國,主要是因爲現代工業製造流程及大規模工業自動化的發展,導致大量的測量數據需要集成和存儲,而採用關係數據庫難以滿足速度和容量的要求,因此在80年代中期,開始誕生了適用於工業監控領域的實時數據庫。
實時數據庫其實並不單單只是一個數據庫,而是一個系統,包括對各類工業接口的數據採集,海量監測數據的壓縮、存儲及檢索,基於監測數據的反饋及控制功能等。

廣泛使用的實時數據庫只有三個產品:
a. 美國OSI公司的 PI ( Plant Information System )
b. 美國HONEYWELL公司的 PHD ( Process History Database )
c. 美國AspenTech公司的 IP21 ( InfoPlus .21 )

1. PI
採用了旋轉門壓縮專利技術和獨到的二次過濾技術,使進入到PI數據庫的數據經過了最有效的壓縮,極大地節省了硬盤空間。據計算,每秒1萬點數據存儲一年,僅需要4G的空間,即一隻普通硬盤也可存貯五到十年的數據。是效率最高,使用最簡單,使用最廣泛的實時數據庫,因爲其傑出的性能,PI已經多次提高了它的價格,確實不墜OSI的名號,而且PI在其文檔中公開了她的各種算法,比如上面提到的旋轉門壓縮和二次過濾。

2. PHD
HONEYWELL佔據了DCS(DCS,全稱:Distributed Control System)大部分份額,因此PHD使用得也比較廣泛,PHD在內部其實使用了Oracle關係數據庫,因此購買PHD就必須先購買Oracle。因爲 PHD內部使用Oracle簡化了開發量 和 Oracle的性能限制比較嚴重,所以 PHD 的價格在這三種數據庫最低,算不上正宗的實時數據庫。但不要以爲PHD內部使用Oracle就認爲Oracle很強,如果直接使用Oracle,只要兩三秒的時間,巨大的數據量就會令它崩潰。HONEYWELL其志不在實時數據庫這一塊,而是她的DCS。

3. IP21
IP21是我見過的最差的關係數據庫,也是我見過的最差的一個軟件。

實時數據庫的訪問方式
a. 使用自己的API,這種方式效率最高,其實也最簡單。
b. 使用ODBC,這種方式其實沒有多大作用,因爲實時數據庫不同於關係數據庫,ODBC沒有太大的用武之地,所以在使用ODBC時有非常多的限制,大部分功能並不支持ODBC方式。
c. 使用OPC方式(OLE for Process Control)
因爲太多的數據庫和DCS使用自己的API方式存取數據,無法做到算法的通用,因爲提出了一個標準的存取接口就是OPC,現在的OPC基本上也脫離了當初制定的目標。

1、海量數據的實時讀寫操作
實時數據庫通過轉爲快速讀寫設計的時標型數據結構、高頻緩存等技術,可以實現海量數據的實時讀寫操作。
2、大容量數據的存儲
實時數據庫採用了專門的壓縮算法,包括哈佛曼算法、旋轉門算法以及一些二次壓縮算法,壓縮比普遍能夠達到30:1左右,再加上對於時間及索引的特殊處理,存儲量能夠縮小到關係庫的1/40。
3、集成了工業接口的數據採集
實時庫一般都集成了大量的工業協議接口,可以對各種類型的工業協議進行解析和傳輸。
4、集成控制功能,可實現實時控制
實時數據庫一般都提供下行控制接口,並且是高速寫出。寫的效率嚴重依賴於接口通訊效率和執行機構。因此,實時數據庫大都是從工控軟件廠商發展而來的,他們就有豐富的工業控制寫入的經驗。即便如此,畢竟工業系統對時序有嚴格的要求,而數據庫從讀到寫,會出現時滯,因此,實時數據庫一般不適宜對快速開關量的控制。

在雲計算的時代,實時數據庫的一些缺點就慢慢的顯露出來了。
首先,由於實時數據庫是基於時標進行處理的,就導致它只能簡單的使用時間段進行查詢和檢索,當然,各大廠商也開發了許多工具,但無論如何檢索的豐富性不能和關係庫比擬。
其次,由於實時庫都是出售給大型工業企業的,因此價格昂貴,在物聯網時代,對於中小工業企業來說,是個不小的成本。
再次,傳統實時庫在部署時不夠方便靈活,傳輸也更多的考慮工業網絡,甚少考慮互聯網的情況,不太適應當下雲計算環境的部署。

這個時候,新興的時序數據庫就出現了。時序數據庫在2017年火了起來,出現了大量的開源和商業產品,時序數據庫就是存放時序數據的數據庫,並且需要支持時序數據的快速寫入、持久化、多緯度的聚合查詢等基本功能。時序數據庫其實主要是實時數據庫的數據存儲部分,但是,由於它採用了新的技術,極大地擴展了數據的容量,除了數據點和時間戳之外,還提供標籤和內容等對數據的描述,並且提供各種聚合查詢,彌補了實時庫的缺陷。
但是,時序數據庫不提供工業接口、下行控制等功能,這些都需要開發人員自行開發,或者將原有的接口與時序庫對接。
當然,不管是實時數據庫還是時序數據庫,都在飛速發展中,雙方一定會互相借鑑,互相學習,會提供更好、更多的產品供工業大數據使用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章