(1)實時數據庫簡介, http://blog.csdn.net/liqfyiyi/article/details/6862886html
(2)實時數據庫簡介和比較, http://www.cnblogs.com/zljini/archive/2006/05/17/402422.html算法
實時數據庫(RTDB-Real Time DataBase)是數據庫系統發展的一個分支,是數據庫技術結合實時處理技術產生的。實時數據庫是「對實時性要求高的時標型信息的數據庫管理系統」數據庫
實時數據庫雖是系統軟件,但更可能是一個應用平臺軟件,緣由是實時數據庫尚未一個像SQL同樣的標準,並且其功能太過綜合,各廠商推出的產品功能各有側重。安全
工業監控系統的定義很是大,全部須要對運行設備進行自動化監視、控制的系統均可以定義爲工業監控系統,這裏面就包括火電廠廠級監控系統(SIS),在這類應用領域中,數據庫應用有以下特色:服務器
測點數量多網絡
一個新建300WM的火電廠的SIS系統,須要處理的測點數超過了10000點,這些測點的變化週期一般在1秒鐘以內,也就是說,須要將超過10000點的數據在1秒鐘以內保存到數據庫中。架構
存儲量大併發
實時數據庫的核心就是對大量的實時信息進行處理,因爲成年累月的數據將佔據大量的硬盤空間。例如對於 1萬點的系統,每 1秒鐘存儲一次,每次單點佔用 8個字節,那麼保存 10年的數據量將有 10000*8*10*365*86400=25228800000000字節,也就是 23TGB。若用 80GB的硬盤存放,須要存放 293塊硬盤!性能
點評:可見,這種數據量徹底不是咱們的系統所能比的。
時效性強
每一個須要處理的測點的值都與時間相關,一秒鐘以後的數據與一秒鐘以前的數據可能就不同了,所以,在保存測點值的同時,必須經過某種方法將其對應的時間也紀錄起來。
關係型數據庫,較難處理工業控制領域的數據。主要緣由是:
插入速度慢
通常關係型數據庫是基於事務處理的,在處理失效後,還要回滾做業。因此至少要存放兩處,該機制使速度較慢;既使用今日的Intel P4 雙至強類CPU,在對2000 個測點進行插入時也用佔用10s 以上的時間。而工業監控系統須要面對的是數萬點的實時數據以秒級的間隔存放數據。
維護困難
商用數據庫爲了保證完整性,全部的內容每每放在一個文件內,這對海量數據的存放維護髮生困難。若是有一個200G 的數
據庫,徹底備份就可能要一天。備份文件中有一個錯誤就可能致使200G 的備份文件失效,因此不實用。
不能知足實時應用的需求
用數據庫存放實時數據據及查詢方式不能知足實時應用的須要。一個簡單的例子是假定以1 秒爲間隔存放好了數據,一週有數據604800 組,可是現要以60 秒爲間隔取出其中10080 組或者以等間隔原則取出8888 組,標準SQL 語法就較難實現。
所以,工業監控領域以及電廠SIS應用領域,必須尋找適合實時應用須要的實時數據庫系統。
實時數據庫系統的技術核心在於數據壓縮。須要將數據經壓縮後再存入硬盤,當須要用數據時再解壓縮硬盤上的數據。目前用於國內外實時數據庫上的壓縮算法一般分爲兩類:無損壓縮和有損壓縮。
大多數信息的表達都存在着必定的冗餘度,經過採用必定的模型和編碼方法,能夠下降這種冗餘度。Huffman編碼是無損壓縮中很是著名的算法之一。WinRar和WinZip等軟件都採用了相似Huffman編碼的壓縮方式。這些壓縮方法的共同特色是:壓縮和解壓過程當中,信息不會發生變化。
在實時數據庫中,也能夠採用這些無損壓縮技術,可是在實現時,必需要考慮壓縮和解壓縮的效率,若是某個壓縮算法的壓縮比很是高,可是其解壓的速度很是慢,則確定不能用於實時數據庫中,不然,人們在查詢數據時,會等待得失去耐心。
相對於無損壓縮,有縮壓縮確定會丟失一些信息,但必需要保證這些丟失的信息不能影響系統數據的精度。你們在其它領域中也遇到過有損壓縮的應用,好比:JPG圖像壓縮就是一種有損壓縮,MP3聲音壓縮也是一種有損壓縮。
在實時數據庫中,有損壓縮主要有兩種方法:死區壓縮和趨勢壓縮。
死區壓縮
所謂死區就是定義某一測點的值不變的範圍。採用死區壓縮就是記錄該點死區以外的數據值。例若有一測點 A,定義其死區爲 1%,上次記錄的測點值爲 110.00,那麼這次採集的測點值爲 111.00,那麼二者差值(111-110)/110<1%,那麼認爲這次測點值在該點的死區範圍內,則認爲不變化,即不記錄。若下一次測點值爲 120.00,那麼二者差值(120-110)/110>1%,那麼認爲這次測點值在該點的死區範圍外,則認爲變化,記錄。
趨勢壓縮
趨勢壓縮,是根據測點的階段性趨勢進行壓縮,原則上只記錄知足趨勢條件的起點和終點。PI的旋轉門壓縮技術是該類算法的典範。
通常的趨勢壓縮如上圖所示,T1到 T2時刻某測點的值保持者該趨勢,那麼在此趨勢上下的兩條容差線將是下一時刻點的死區範圍,若下一時刻 T3在此兩條兩條容差線之間,那麼不記錄此值,兩條容差線將適用於下一時刻,若下一時刻 T4在此兩條兩條容差線以外,則記錄該值,趨勢發生改變,兩條容差線將發生改變,下一時刻測點將按改變後的容差線來判斷。
使用實時數據庫提供的API
這種方式效率最高,也最簡單。
使用ODBC
大部分實時數據庫提供了標準的ODBC接口,也提供了SQL查詢語言,經過這些方法,用戶能夠將實時數據庫看成一個標準的數據庫來使用。但這種方法速度較慢,且不能體現實時數據的所有優點。
使用OPC方式(OLE for Process Control)
由於太多的數據庫和DCS使用本身的API方式存取數據,沒法作到算法的通用,由於工業監控領域提出了一個標準的存取接口,這就是OPC,現在有超過兩百家產商加入到OPC組織中,聲勢浩大。
實時數據庫技術是實時系統和數據庫技術相結合的產物,實時數據庫系統的主要內容包括:
實時數據庫模型;
實時事務調度:包括併發控制、衝突解決、死鎖等內容;
容錯性與錯誤恢復;
內存組織與管理;
訪問准入控制;
I/O與磁盤調度;
主內存數據庫系統;
不精確計算問題;
放鬆的可串行化問題;
實時SQL;
實時事務的可預測性;
PI 採用了旋轉門壓縮專利技術和獨到的二次過濾技術,使進入到PI數據庫的數據通過了最有效的壓縮,極大地節省了硬盤空間。據計算,每秒1萬點數據存儲一年,僅須要4G的空間,即一隻普通硬盤也可存貯五到十年的數據。
http://blog.csdn.net/liqfyiyi/article/details/6862886
每一個PI服務器可容納150萬點(高端服務器),在PI的高端產品服務器中能夠處理每秒鐘150萬點的數據。在客戶端軟件ProcessBook上,能夠在秒級時間內從2年或3年曆史中取到1000點數據。
參考OSI公司提供的數據:實時信息點的數據值1天的平均變化次數爲500,每一個信息點所佔的存儲空間爲3個字節,那1萬個點在線存儲1年所需的存儲空間是:
變化次數 × 單點存儲空間 × 信息點數 × 1年的天數 = 總空間要求
500 × 3 × 10000 × 365 = 5.475GB
以5000點數據庫和20客戶端應用爲例,幾個數據庫價格分別是:
PI----10萬美圓,每一個接口6000美圓,OPC接口收費;
InfoPlus.21----11萬美圓,每一個接口1萬美圓,OPC接口不收費;
Industrial SQL Server----6.5萬美圓,每一個IDAS1200美圓,OPC Link免費。
目前進入國內市場比較成熟的實時數據庫產品以下所列:
美國OSIsoft公司,PI;
美國Wonderware公司,IndustrialSQL Server,簡稱INSQL;
美國 GE,Intellution公司,iHistorian;
美國 InStep公司,eDNA;
美國HONEYWELL公司,Process History Database,簡稱PHD ;
美國AspenTech公司,InfoPlus;
總的來講,國外實時數據庫產品在工業監控行業佔壟斷地位。其中OSIsoft公司的PI採用了旋轉門壓縮專利技術和獨到的二次過濾技術,使進入到PI數據庫的數據通過了最有效的壓縮,極大地節省了硬盤空間,是效率最高,使用最簡單,使用最普遍的實時數據庫。由於其傑出的性能,PI已經屢次提升了它的價格。
這是Wonderware公司的產品,原名叫作Industrial sql server,從這個名字就能夠看出,他是基於SQL SERVER來實現的, 是一款基於關係數據庫的實時數據庫。最新的名字叫作 Wonderware Historian,Wonderwaer已經被施耐德收購了,估計是收購以後把名字也換了,我看網上能夠找到的關於InSQL的最新的版本大概就是2005年左右的9.0版。
http://global.wonderware.com/CN/Pages/WonderwareHistorian.aspx
Wonderware Historian歷史庫軟件 是工業企業的一種高性能實時數據庫,能提供無與倫比的可擴展性,支持多達 500,000 條標籤,與以往產品相比,具備更大的檢索吞吐量。Historian 能夠配置爲單一的數據收集和集合系統,也可做爲更大的、多層級架構系統的一部分。如局部設施具備高分辨率數據,它們須要詳細的故障診斷,企業決策者能夠經過集合數據來比較多個工廠的性能。
對於在地理位置上分散的工廠,Wonderware Historian 是最理想的選擇,由於它有能力在處理間斷、延遲或破碎的數據時維護數據的完整性。
許多工業企業須要7 天24 小時不間斷訪問流程數據,同時還要保持他們的管理網絡與商業網絡間彼此隔離。Wonderware Historian 爲上述兩個要求提供高成本效益的解決方案。咱們的冗餘歷史庫選項提供了一個簡單、低成本、高可用性的解決方案,同時在管理網絡與商業網絡之間實現極具成本效率的隔離。
擁有 Wonderware Historian 客戶端的新增功能和多功能性,您能夠迅速的看到您流程中有問題的地方,從而快速進行決策、故障排除和流程優化。所以,Historian 能夠 SQL 兼容大量能夠訪問您流程數據的其餘報告性解決方案。
新品登場!!!Wonderware Historian 如今以雲託管解決方案的形式提供給但願下降資本支出和 IT 負擔的企業。與 Microsoft 合做,藉助 Microsoft 的 Windows Azure 雲環境,以軟件即服務 (SaaS) 的形式提供此創新性軟件,爲關鍵流程數據的數據安全和高可用性提供保障。Wonderware Historian 在線版本可以收集和彙總其餘 Wonderware Historians 中的數據,還具備數據報告和分析客戶端,絕對是一款完備的運營信息管理解決方案。