油井設備機械化數據信息平臺的建設
高彥卿
南陽理工學院
油井設備機械化數據信息平臺(SSIS)所設計的電子數據庫(ETL)從形式上來講是一個個類似工作流的程序包,SSIS具有可視化的開發工具,它基于一種工作流的思想,主要分為控制流和數據流。控制流主要是做整個ETL過程的流程,而數據流則是對ETL業務也就是轉換的完成,是ETL處理的核心部分。油井設備機械化信息平臺的一個重要特點就是,它不是針對某一個類型的BI解決方案或者是某一個具體的項目,而是一種具有BI基本特性功能完善的ETL產品,只要通過一些配置改造,可以簡單地擴展到其他的BI系統上。
油井設備;機械化;數據信息;平臺設計
油井設備機械化數據信息平臺平臺有幾個非常特別的優點。
(1)SSIS與微軟的其他開發組件密切相關,而且秉承了微軟軟件開發工具一貫的特點,就是良好的可視化開發界面[1]。但其本質還是XML文件,所以容量也非常小,容易安裝部署。
(2)改良腳本中分別有控制流和數據流的腳本,可以用C#編寫,可以訪問.NET Framework,并且還能通過腳本任務執行更加復雜的動作。這是能夠讓電子數據庫完成復雜任務和利用已有的.NET資源的最佳途徑,它也是自己編寫部件代替系統的最佳途徑。
(3)對SSIS數據流緩沖器進行了改良。附加異步數據流組件將會很方便地在SSIS運行過程中提高性能,設計人員可以排除雜亂的性能設計。
由于SSIS有以上特點,ETL系統的主要工作就是通過自己編寫C#腳本來設計數據處理部件,完成強大的功能[2]。這是建立在SSIS程序包,特別是數據流自身可以進行非常好的線程安排和調用機制的基礎上才能完成的。
2.1SQL Server數據信息支撐平臺設計
這里所說的SQL Server是狹義的,特指SQL Server數據庫。本系統中用到的SQL Server,主要用作對油井設備機械化數據信息平臺進行搭建和維護。對于多維數據庫的設計,也不同于傳統的關系型數據庫,除了要滿足多維數據庫基本的多維度的分析要求,更要和SSIS、SSAS(系統安全性分析系統)合作,通過ETL將數據加載進入SSIS,最終建立多維數據集,進行多維分析。
SQL Server在商業智能(BI)解決方案中起著承上啟下的作用。本系統BI解決方案中,會用到油井設備機械化數據信息平臺的建模方式,在SQL Server中建立多個事實表和維度表組成的多維油井設備機械化數據信息平臺模型。另外,SQL Server的存儲過程也會在建立ETL過程中大量的使用,SSIS包本身也將包含在SQL Server的Job中運行。這些過程其實是SQL Server的普通功能,只是在多維設計這個基礎之上。
儀器的流量分為工況流量和刻度流量,工況流量即設備在使用環境下的實際流量,刻度流量,即標準狀態下的流量,有些儀器的刻度狀態是(0 ℃,101.325kPa),有些設備的刻度狀態為(20 ℃,101.325kPa),也有些其他特殊的狀態,具體以被檢設備為準。在測量重復性和穩定性時我們要讀取的數值為檢定點的工況流量,但在測量示值誤差時我們則需要讀取刻度狀態下的流量。采樣器的流量計上有些顯示的是工況流量,有些顯示的是刻度狀態下的流量,如果為工況流量,像安裝浮子流量計的采樣器,這時我們必須對流量示值加以換算,在氣路壓力為0kPa情況下測量的流量,具體過程按公式(1)進行計算。
2.2 數據流信息LPC模型算法設計
時間維度箭頭是單向的,表示事實數據中只能引用這些維度,而不能反作用這些維度。時間維度信息比較固定,沒有經常變動的主數據文件,比如一個企業的財年信息一般是不會變的。可以在系統建立初始化的時候加載到油井設備機械化數據信息平臺中。如果事實數據匹配不到時間維度,就認為主數據是有問題的[3]。特別是從信息系統抽取數據的時候,系統會用變量的方式傳遞抽取的時間,這個時間對設計是很重要的。用LPC分析參數實現波形最小均方誤差意義下的最佳估計。
機械化數據信息平臺在平穩信息流下也能運用,但是要疊代估計模型參數;而強大信息流情況下誤差大,計算量也大。
2.3 機械化數據信息平臺維度設計
國家維度和零售類型維度是單向的,同時他們也會影響商品和油井設備機械化數據信息平臺維度,也就是說,不同國家的油井設備機械化數據信息平臺可能使用相同編號,這就組成了維度層次上的一個雪花型的關系。
商品和油井設備機械化數據信息平臺維度是普通的維度,它們可以和事實數據相互影響。也就是說,當事實數據加載的過程中,映射不到相對應的維度信息,事實數據是可以去維度中自動生成初始化的主數據,保證邏輯鍵的正確,然后再等待真正事實數據到了以后對初始化數據進行更新[4]。對于這兩個維度,無論是主數據或者事實數據,維度信息都在其數據列中。
維度設計中對主數據的操作包括以下幾步:
(1)主數據導入。運行在中心機上,導入主數據(也就是一些所有用戶通用的數據,在BI中也可以稱維度信息),并把導入的過程記錄到特定信息中,對數據進行一些清理和排錯。
(2)主數據計算。運行在中心機上,將導入中心SSIS數據進行一些計算和業務邏輯的處理,以便滿足用戶特定的要求。
(3)主數據同步。主數據運行在中心機和擴展機之間,根據安裝信息,利用同步技術,將于擴展機相關的數據分布同步到不同的擴展機種。因為中心機中存儲的是一個混合的主數據,而每一個擴展機制需要拿到自己的數據便可,所以這個同步是一個有選擇的同步。記錄好同步信息。
多維數據集建立在擴展機上。也就是說,對于用戶而言,是不會知道中心機的存在,所以擴展機也是一個用戶的導向。從技術上來講,無論是中心機或者擴展機,在真正的物理服務器上都是以油井設備機械化數據信息平臺、多維數據集、電子數據庫程序等存在的。
依據油井機械設備用戶的需求,通常把一個擴展機分配給一個單獨的供應商和零售商的多維數據集,這樣的計算最純粹,沒有干擾。而中心機上往往存在著多個供應商和多個零售商的主數據。通過ETL系統中的主數據同步功能,可以把中心機上對應于特定擴展機的主數據同步到擴展機上。這說明了一個重要的概念:主數據的同步過程永遠都在中心機上,同樣事實數據的同步過程永遠都在擴展機上,而擴展機上所需要的主數據是通過主數據同步這個功能實現的[5]。這樣中心機和擴展機及相互獨立,又相互配合,保證了中心機和擴展機的獨立工作和相互配合。
正是通過這種中心機和擴展機的相互配合,在邏輯上和物理上都形成了分布式的結構。
油井設備機械化信息平臺的一個重要特點就是,它不是針對某一個類型的BI解決方案或者是某一個具體的項目,而是一種具有BI基本特性功能完善的ETL產品,只要通過一些配置改造,可以簡單地擴展到其他的BI系統上,此時,配置文件就是控制ETL系統運行的唯一接口。從長遠來講,
配置文件系統也將變成用戶使用ETL的核心和高級控制的方法。這種配置文件驅動主程序的方法其實已經將配置文件升華成為了一種元數據編程的工具,而不是簡單的只是為了程序做一些配置。本ETL系統所用的配置文件,基于XML,嚴格遵守XML的標準,從文檔結構上看,一個配置文件可以隨意擴展。由于ETL系統本身不能識別平面文件的格式和合法性,更不知道平面文件中的哪一列是油井設備機械化數據信息平臺鍵,每一列怎么跟油井設備機械化數據信息平臺中的列對應,這些都是由配置文件來處理的。
[1]吳勇軍.利用Winsock編程實現局域網上所有IP包的捕獲和分析[J].電腦編程技巧與維護,2003(10):18-19.
[2]朱正強,吳介一,孔競飛,等.基于VRML—Java的虛擬現實技術在可視化裝配中的應用[J].東南大學學報:自然科學版,2002(1):27-28.
[3]劉艷霞.JFreeChart在JSP開發中的應用心得[J].工程地質計算機應用,2005(1):30-31.
[4]鄭嘯,魏仰蘇.一種新的面向協議測試的包捕獲結構[J].華中科技大學學報:自然科學版,2004(7):36-37.
[5]李雪瑩,劉寶旭,許榕生.基于Win Pcap的網絡監控系統性能優化[J].計算機工程,2004(1):38-39.
(欄目主持 楊 軍)
10.3969/j.issn.1006-6896.2014.3.014