本實用新型涉及工業(yè)實時數(shù)據(jù)庫,基于Redis服務器的工業(yè)實施數(shù)據(jù)系統(tǒng)。
背景技術:
隨著工業(yè)控制系統(tǒng)不斷發(fā)展,傳感器節(jié)點的增加,對數(shù)據(jù)實時性要求更高,常規(guī)存儲方案有:
1、MySql、SqlServer等關系型數(shù)據(jù)庫,由于關系型數(shù)據(jù)庫需要經(jīng)過Sql層解析,在高并發(fā)讀寫時性能低下,無法滿足工業(yè)實時數(shù)據(jù)庫對性能的要求。
2、直接在軟件內(nèi)部聲明變量或者鏈表進行存儲,無法支持多進程或者多機器可以共同使用,且未經(jīng)過嚴格測試,容易出現(xiàn)內(nèi)存泄露,數(shù)據(jù)持久化異常問題。
技術實現(xiàn)要素:
本實用新型的目的是針對上述背景技術存在的缺陷,提供一種工業(yè)實時數(shù)據(jù)系統(tǒng)及其數(shù)據(jù)處理方法。
為實現(xiàn)上述目的,本實用新型一種工業(yè)實時數(shù)據(jù)系統(tǒng),該工業(yè)實時數(shù)據(jù)系統(tǒng)基于Redis緩存服務器進行構建,該系統(tǒng)包括第一層級,由若干組采集模塊組組成,每一采集模塊組由采集來自同一類別的節(jié)點數(shù)據(jù)的若干采集模塊組成;第二層級,由至少一Redis緩存服務器,用于獲取來自各個采集模塊組采集的節(jié)點數(shù)據(jù);第三層級,由若干個處于同一層級的上位機控制系統(tǒng),用于獲取來自Redis服務器的實時緩存數(shù)據(jù);及第四層級,若干與上位機控制系統(tǒng)一一對應的可對Redis緩存服務器中的中的節(jié)點數(shù)據(jù)進行持久化保存的關系型數(shù)據(jù)庫。
進一步地,第二層級的Redis緩存服務器與處于第三層級的上位機控制系統(tǒng)呈一對多的形式,即一個Redis緩存服務器對應處于第三層級的多個上位機控制系統(tǒng)。
進一步地,第二層級的Redis緩存服務器與處于第三層級的上位機控制系統(tǒng)呈一對一的形式,即一個Redis緩存服務器對應處于第三層級的一個上位機控制系統(tǒng)。
進一步地,第三層級的上位機控制系統(tǒng)至少包括SCADA系統(tǒng)、風機狀態(tài)監(jiān)測系統(tǒng)、集中控制系統(tǒng)、PPM系統(tǒng)、電網(wǎng)調(diào)度系統(tǒng)。
進一步地,第四層級的關系型數(shù)據(jù)庫至少包括MySql、SqlServer、Oracle。
綜上所述,本實用新型提供的一種基于Redis緩存服務器的工業(yè)實時數(shù)據(jù)系統(tǒng)通過使用Redis緩存層有效解決高密度數(shù)據(jù)讀取性能問題,緩解關系型數(shù)據(jù)庫壓力;為上位機各系統(tǒng)提供統(tǒng)一數(shù)據(jù)讀取接口,避免各上位機系統(tǒng)數(shù)據(jù)源不統(tǒng)一,后期擴展麻煩等弊端。
附圖說明
圖1為本實用新型一種工業(yè)實時數(shù)據(jù)系統(tǒng)的其中一較佳實施例的結構示意圖。
具體實施方式
為詳細說明本實用新型的技術內(nèi)容、構造特征、所達成目的及效果,以下茲結合附圖詳予說明。
請參閱圖1,本實用新型一種工業(yè)實時數(shù)據(jù)系統(tǒng)該系統(tǒng)包括:
第一層級,由若干組采集模塊組組成,每一采集模塊組由采集來自同一類別的節(jié)點數(shù)據(jù)的若干采集模塊組成;
第二層級,由至少一Redis緩存服務器,用于獲取來自各個采集模塊組采集的節(jié)點數(shù)據(jù);
第三層級,由若干個處于同一層級的上位機控制系統(tǒng),用于獲取來自Redis服務器的實時緩存數(shù)據(jù);
第四層級,若干與上位機控制系統(tǒng)一一對應的可對Redis緩存服務器中的中的節(jié)點數(shù)據(jù)進行持久化保存的關系型數(shù)據(jù)庫。
在第一較佳實施例中,第二層級的Redis緩存服務器與處于第三層級的上位機控制系統(tǒng)呈一對多的形式,即一個Redis緩存服務器對應處于第三層級的多個上位機控制系統(tǒng)。
在第二較佳實施例中,第二層級的Redis緩存服務器與處于第三層級的上位機控制系統(tǒng)呈一對一的形式,即一個Redis緩存服務器對應處于第三層級的一個上位機控制系統(tǒng)。
第三層級的上位機控制系統(tǒng)包括但不限于SCADA系統(tǒng)、狀態(tài)監(jiān)測系統(tǒng)、集中控制系統(tǒng)、PPM系統(tǒng)、電網(wǎng)調(diào)度系統(tǒng)等。
第四層級的關系型數(shù)據(jù)庫包括但不限于MySql、SqlServer、Oracle等關系型數(shù)據(jù)庫。
一種工業(yè)實時數(shù)據(jù)處理方法,該方法應用于基于Redis緩存服務器的工業(yè)實時數(shù)據(jù)系統(tǒng),其包括:
步驟S1,即將采集同一類別的節(jié)點數(shù)據(jù)的采集模塊歸入同一采集模塊組,采集模塊組各采集模塊對采集的數(shù)據(jù)通過Redis Set方法保存到Redis緩存服務器中,Redis Set方法利用參數(shù)Key及Value實現(xiàn)數(shù)據(jù)的保存更新,其中Key對應采集模塊Id及節(jié)點,Value為對應采集模塊下需要采集的節(jié)點數(shù)據(jù);
步驟S2,即Redis緩存服務器識別同一采集模塊的Key,并獲取對應Value下的節(jié)點數(shù)據(jù);
例如在具體實施例中,采集模塊的Key命名規(guī)則為C1_B1,其中,C1表示采集模塊Id,下劃線表示分隔符,B1表示節(jié)點下待采集節(jié)點數(shù)據(jù)的點表名稱;
步驟S3,即上位機控制系統(tǒng)通過上位機程序獲取Redis緩存服務器中的節(jié)點數(shù)據(jù),上位機程序利用Redis Get方法,并提供參數(shù)Key實時獲取Redis緩存服務器中指定Key節(jié)點存儲的實時數(shù)據(jù);
步驟S4,即上位機程序可根據(jù)數(shù)據(jù)存儲需求,將已存儲到數(shù)據(jù)存儲模塊中的節(jié)點數(shù)據(jù)進行持久化處理,以做為歷史數(shù)據(jù)調(diào)用;
步驟S5,即Redis緩存服務器通過Redis Set方法對指定節(jié)點數(shù)據(jù)進行實時刷新賦值操作;
步驟S6,重復步驟S1、步驟S2、步驟S3、步驟S4、步驟S5。
通過關系型數(shù)據(jù)庫對節(jié)點數(shù)據(jù)進行持久化存儲。
綜上所述,本實用新型提供的一種基于Redis緩存服務器的工業(yè)實時數(shù)據(jù)系統(tǒng)通過使用Redis緩存層有效解決高密度數(shù)據(jù)讀取性能問題,緩解關系型數(shù)據(jù)庫壓力;為上位機各系統(tǒng)提供統(tǒng)一數(shù)據(jù)讀取接口,避免各上位機系統(tǒng)數(shù)據(jù)源不統(tǒng)一,后期擴展麻煩等弊端。
以上所述的技術方案僅為本實用新型一種工業(yè)實時數(shù)據(jù)系統(tǒng)的較佳實施例,任何在本實用新型一種工業(yè)實時數(shù)據(jù)系統(tǒng)及其基礎上所作的等效變換或替換都包含在本次專利申請的保護范圍之內(nèi)。