高建章 吳志鋒 孫嘯 劉昊 李怡
摘 ?要: 針對傳統(tǒng)油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)數(shù)據(jù)映射性能較差的問題,提出一種基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)。系統(tǒng)硬件配置為調(diào)度模塊,由FIFO調(diào)度器、計算能力調(diào)度器、公平調(diào)度器、I/O調(diào)度器、TaskTracker、JobTracker構(gòu)成。系統(tǒng)軟件包括數(shù)據(jù)轉(zhuǎn)換模塊、數(shù)據(jù)動態(tài)遷移模塊,其中,數(shù)據(jù)轉(zhuǎn)換模塊主要利用XML映射規(guī)則獲取XML映射數(shù)據(jù),并將其嫁接在目的數(shù)據(jù)庫與源數(shù)據(jù)庫之間,以實現(xiàn)油氣管道數(shù)據(jù)的數(shù)據(jù)類型轉(zhuǎn)換與數(shù)據(jù)備份;數(shù)據(jù)動態(tài)遷移模塊主要通過數(shù)據(jù)遷移程序發(fā)出的數(shù)據(jù)遷移命令來遷移XML 配置文件。該系統(tǒng)通過硬件與軟件相結(jié)合實現(xiàn)了油氣管道數(shù)據(jù)的動態(tài)遷移。為了驗證該系統(tǒng)的數(shù)據(jù)映射性能,將該系統(tǒng)與幾種傳統(tǒng)油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)對比,共同進行油氣管道數(shù)據(jù)動態(tài)遷移的對比實驗。實驗結(jié)果證明,基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)的數(shù)據(jù)映射性能更強并且更穩(wěn)定,說明該系統(tǒng)更適用于油氣管道數(shù)據(jù)的動態(tài)遷移。
關(guān)鍵詞: 油氣管道; 數(shù)據(jù)動態(tài)遷移; XML映射規(guī)則; 數(shù)據(jù)嫁接; 數(shù)據(jù)類型轉(zhuǎn)換; 任務(wù)調(diào)度
中圖分類號: TN02?34; TP311 ? ? ? ? ? ? ? ? ? ? 文獻標識碼: A ? ? ? ? ? ? ? ? ? ? 文章編號: 1004?373X(2020)07?0155?04
Design of oil?gas pipeline data dynamic migration system based on XML mapping rules
GAO Jianzhang1, 2, WU Zhifeng2, SUN Xiao2, LIU Hao2, LI Yi3
(1. Beijing University of Posts and Telecommunications, Beijing 100876, China; 2. PetroChina Southwest Pipeline Company, Chengdu 610037, China;
3. Chengdu Aerospace Science & Industry Big Data Institute Ltd., Chengdu 610000, China)
Abstract: An oil?gas pipeline data dynamic migration system based on XML mapping rules is proposed to improve the performance of data mapping in traditional oil?gas pipeline data dynamic migration system. The hardware configuration of the system includes a scheduling module, which consists of FIFO dispatcher, computing power dispatcher, fair dispatcher, I/O dispatcher, TaskTracker and JobTracker. The system software includes data conversion module and data dynamic migration module. The data conversion module is used to obtain XML mapping data mainly by means of XML mapping rules, and graft it between the target database and the source database in order to realize data type transformation and data backup of oil?gas pipeline data. The data dynamic migration module is used to migrate XML configuration file according to the data migration command issued by the data migration program. The dynamic migration of oil?gas pipeline data is realized by the combination of hardware and software in the system. In order to verify the data mapping performance of the system, the system is compared with several traditional oil?gas pipeline data dynamic migration systems, and a contrast experiment of oil?gas pipeline data dynamic migration was carried out. The experimental results prove that the oil?gas pipeline data dynamic migration system based on XML mapping rules has stronger data mapping performance and is more stable, which shows that the system is more suitable for the dynamic migration of oil?gas pipeline data.
Keywords: oil?gas pipeline; data dynamic migration; XML mapping rule; data grafting; data type transformation; task scheduling
0 ?引 ?言
在轉(zhuǎn)移存儲的電子文獻、升級網(wǎng)絡(luò)、更換存儲設(shè)備、遷移分系統(tǒng)數(shù)據(jù)至新建的綜合數(shù)據(jù)管理中心時,都需要解決數(shù)據(jù)更新問題與數(shù)據(jù)遷移問題,特別是處于異構(gòu)環(huán)境下時,數(shù)據(jù)的高度復(fù)雜使遷移數(shù)據(jù)時面臨著巨大的壓力[1]。對于油氣企業(yè),油氣管道數(shù)據(jù)多種數(shù)據(jù)庫、多種方式的數(shù)據(jù)存儲問題已經(jīng)成為企業(yè)數(shù)據(jù)應(yīng)用中難以解決的問題。非結(jié)構(gòu)化文檔和圖形、結(jié)構(gòu)化數(shù)據(jù)、數(shù)據(jù)體大型文件等,石油行業(yè)不同于其他行業(yè),具備海量數(shù)據(jù)并且數(shù)據(jù)結(jié)構(gòu)十分復(fù)雜,由于多個數(shù)據(jù)庫存在存儲方式等方面的差異,使用戶在訪問數(shù)據(jù)庫時非常不便[2]。
在數(shù)據(jù)庫的開發(fā)與管理中,最常用的功能就是數(shù)據(jù)遷移。數(shù)據(jù)遷移指的是對數(shù)據(jù)進行數(shù)據(jù)環(huán)境轉(zhuǎn)移,從而實現(xiàn)精確而徹底的數(shù)據(jù)轉(zhuǎn)換,適用于將數(shù)據(jù)從原本的舊系統(tǒng)轉(zhuǎn)移至新系統(tǒng)中,從多個舊系統(tǒng)統(tǒng)一轉(zhuǎn)移至一個新系統(tǒng)中,從多個小系統(tǒng)統(tǒng)一融匯至一個大系統(tǒng)中,需要將分系統(tǒng)中結(jié)構(gòu)各異的數(shù)據(jù)與舊系統(tǒng)中各種歷史數(shù)據(jù)轉(zhuǎn)移至新系統(tǒng)、新環(huán)境中[3]。遷移不同數(shù)據(jù)庫中的數(shù)據(jù)時,需要遵循下列步驟:源數(shù)據(jù)識別、數(shù)據(jù)集成轉(zhuǎn)換具體規(guī)則確定以及轉(zhuǎn)換規(guī)則代碼開發(fā)。目前,數(shù)據(jù)遷移是數(shù)據(jù)管理領(lǐng)域、勘探數(shù)據(jù)采集領(lǐng)域的核心工作[4]。由于石油行業(yè)整體業(yè)務(wù)的復(fù)雜性,對油氣管道數(shù)據(jù)遷移系統(tǒng)提出了越來越高的要求,因此,基于XML映射規(guī)則開發(fā)了一套高性能、高穩(wěn)定性并且滿足目前石油行業(yè)數(shù)據(jù)勘探、管理現(xiàn)狀的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)。
1 ?設(shè)計基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)
1.1 ?硬件設(shè)計
基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)的硬件配置為調(diào)度模塊,調(diào)度模塊中包含多種調(diào)度器,包括FIFO調(diào)度器、計算能力調(diào)度器、公平調(diào)度器以及I/O調(diào)度器[5]。各個調(diào)度器的具體調(diào)度配置如表1所示。
在調(diào)度模塊中,通過JobTracker來采集、管理油氣管道數(shù)據(jù),TaskTracker與JobTracker會定期交互信息,每隔一段時間,TaskTracker會利用心跳信息向FIFO調(diào)度器、計算能力調(diào)度器、公平調(diào)度器以及I/O調(diào)度器進行數(shù)據(jù)匯報,包括系統(tǒng)剩余內(nèi)存空間、內(nèi)存使用狀況、運行任務(wù)數(shù)量、slot數(shù)量等[6]。而各個調(diào)度器則根據(jù)Heartbeat信息進行油氣管道數(shù)據(jù)調(diào)度與任務(wù)調(diào)度,以確保系統(tǒng)能夠進行油氣管道數(shù)據(jù)動態(tài)遷移[7]。各個調(diào)度器還會根據(jù)TaskTracker的網(wǎng)絡(luò)、磁盤使用狀況來判斷系統(tǒng)的資源使用狀況以合理分配遷移作業(yè)[8]。分配遷移作業(yè)時,需要通過I/O調(diào)度器判斷各個模塊的I/O負載情況,當I/O負載過重時,則停止對該模塊的作業(yè)分配,這樣遷移油氣管道數(shù)據(jù)的過程中能夠整體遷移效率[9]。
1.2 ?設(shè)計軟件
基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)的軟件包括數(shù)據(jù)轉(zhuǎn)換模塊、數(shù)據(jù)動態(tài)遷移模塊[10]。
1.2.1 ?設(shè)計數(shù)據(jù)轉(zhuǎn)換模塊
基于XML映射規(guī)則設(shè)計數(shù)據(jù)轉(zhuǎn)換模塊,數(shù)據(jù)轉(zhuǎn)換模塊主要利用XML映射規(guī)則獲取XML映射數(shù)據(jù),并將其嫁接在目的數(shù)據(jù)庫與源數(shù)據(jù)庫之間,以實現(xiàn)油氣管道數(shù)據(jù)的數(shù)據(jù)類型轉(zhuǎn)換與數(shù)據(jù)備份,具體映射原理如圖2所示[11]。
通過XML映射規(guī)則獲取的XML映射數(shù)據(jù)包括日期類型、大對象類型、字符類型、數(shù)值類型,具體如表2~表5所示[12]。
1.2.2 ?設(shè)計數(shù)據(jù)動態(tài)遷移模塊
數(shù)據(jù)動態(tài)遷移模塊主要通過數(shù)據(jù)遷移程序發(fā)出的數(shù)據(jù)遷移命令來遷移XML 配置文件,具體動態(tài)遷移流程如圖3所示[13]。
圖3中,Transformer指的是傳輸對象包;Permanence指的是持久化包;DBAccess指的是數(shù)據(jù)訪問包;DataReader指的是數(shù)據(jù)對象包;Tansform指的是數(shù)據(jù)傳輸處理包;QC指的是質(zhì)量控制包[14]。
在油氣管道數(shù)據(jù)的動態(tài)遷移過程中,數(shù)據(jù)遷移率的計算公式如下:
[T=QWi=1le2i] (1)
式中:[T]代表油氣管道數(shù)據(jù)的遷移率;[Q]代表油氣管道數(shù)據(jù)的形式轉(zhuǎn)換速率;[W]代表油氣管道數(shù)據(jù)加工時間;[ei]代表目標信息對比速率[15]。
2 ?實驗分析
2.1 ?實驗方法
為了檢測本文設(shè)計的基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)的性能,通過對比實驗驗證。隨機選取一些油氣管道數(shù)據(jù),基于XML映射規(guī)則轉(zhuǎn)換其數(shù)據(jù)形式,將其轉(zhuǎn)換成XML映射數(shù)據(jù)。利用基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)對XML映射數(shù)據(jù)進行動態(tài)遷移,將油氣管道數(shù)據(jù)遷移至新系統(tǒng)中。首先需要部署基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)的運行環(huán)境,包括硬件環(huán)境與軟件環(huán)境,具體如表6所示。
完成系統(tǒng)運行環(huán)境的部署后,利用系統(tǒng)進行油氣管道數(shù)據(jù)的動態(tài)遷移。為了保證本次實驗的有效性,使用基于數(shù)據(jù)總體優(yōu)化策略的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)、基于源數(shù)據(jù)清洗的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)、基于增量數(shù)據(jù)處理的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)、基于源數(shù)據(jù)整合的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)與本文提出的基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)進行比較。觀察實驗結(jié)果,比較各個油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)的數(shù)據(jù)映射性能,也就是系統(tǒng)的數(shù)據(jù)轉(zhuǎn)換能力,通常數(shù)據(jù)映射性能可以分為1~8級,級數(shù)越高代表系統(tǒng)的數(shù)據(jù)轉(zhuǎn)換能力越強、數(shù)據(jù)轉(zhuǎn)換速率越高。
2.2 ?實驗結(jié)果
利用基于數(shù)據(jù)總體優(yōu)化策略的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)、基于源數(shù)據(jù)清洗的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)、基于增量數(shù)據(jù)處理的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)、基于源數(shù)據(jù)整合的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)、基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)進行選取油氣管道數(shù)據(jù)的動態(tài)遷移,其數(shù)據(jù)映射性能對比如圖4所示。
根據(jù)圖4的數(shù)據(jù)映射性能對比結(jié)果可知:基于數(shù)據(jù)總體優(yōu)化策略的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)、基于源數(shù)據(jù)清洗的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)、基于增量數(shù)據(jù)處理的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)、基于源數(shù)據(jù)整合的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)等傳統(tǒng)系統(tǒng)在數(shù)據(jù)遷移次數(shù)成倍增加的狀態(tài)下,均存在數(shù)據(jù)映射性能級別不斷降低的現(xiàn)象;而基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)則不同于傳統(tǒng)油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng),在數(shù)據(jù)遷移次數(shù)成倍增加的狀態(tài)下仍然可以將數(shù)據(jù)映射性能保持在7級,即基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)的數(shù)據(jù)映射性能優(yōu)于其余幾種傳統(tǒng)油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)。
3 ?結(jié) ?語
基于XML映射規(guī)則的油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng)在實現(xiàn)油氣管道數(shù)據(jù)安全遷移的同時,也實現(xiàn)了數(shù)據(jù)映射性能的提升,并且相對于傳統(tǒng)油氣管道數(shù)據(jù)動態(tài)遷移系統(tǒng),對于未上線系統(tǒng)而言,該系統(tǒng)的兼容性更強,對石油行業(yè)的數(shù)據(jù)共享具有重要意義。
參考文獻
[1] 朱杰,游雄,夏青.基于任務(wù)驅(qū)動的戰(zhàn)場環(huán)境分析數(shù)據(jù)映射模型設(shè)計與實現(xiàn)[J].地理信息世界,2017,24(4):80?85.
[2] 趙軍富,譚躍生,王猛.基于Active XML動態(tài)自適應(yīng)工作流引擎的設(shè)計與實現(xiàn)[J].現(xiàn)代電子技術(shù),2017,40(22):75?77.
[3] 王美琴.基于.NET的通用數(shù)據(jù)庫轉(zhuǎn)換系統(tǒng)的設(shè)計與實現(xiàn)[J].中國非金屬礦工業(yè)導(dǎo)刊,2017,21(4):50?53.
[4] 吳玥,王建強,夏開建.基于動態(tài)密鑰分發(fā)機制的XML電子病歷共享方案研究與設(shè)計[J].中國數(shù)字醫(yī)學(xué),2017,12(10):26?28.
[5] 臧昊,趙強,卞水榮.基于XML的電子病歷隱私數(shù)據(jù)脫敏技術(shù)的研究與設(shè)計[J].信息技術(shù)與信息化,2017,22(3):111?114.
[6] 王義,于書媛,李亞龍,等.基于XML和ASP技術(shù)Flash地震圖文動態(tài)展示[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2017,11(2):68?69.
[7] 陳明.分布式網(wǎng)絡(luò)數(shù)據(jù)包優(yōu)先級傳輸模型研究仿真[J].電子設(shè)計工程,2016,24(12):5?8.
[8] 丁小勇.基于ASP+FLASH+XML架構(gòu)的珍珠電子相冊的設(shè)計與實現(xiàn)[J].通訊世界,2018,17(8):242?243.
[9] 趙軍富,李禹睿,彭亞云,等.基于Active XML動態(tài)自適應(yīng)工作流任務(wù)分配研究[J].內(nèi)蒙古科技大學(xué)學(xué)報,2017,36(1):55?58.
[10] 王忠波,羅喜伶,齊鳴,等.基于UML和XSD的航班信息交換模型研究與實現(xiàn)[J].計算機技術(shù)與發(fā)展,2017,27(4):139?144.
[11] 杜震洪,黃祥志,姜斌之,等.一種動態(tài)實時的遙感專題應(yīng)用系統(tǒng)定制框架[J].浙江大學(xué)學(xué)報(理學(xué)版),2018,45(6):758?764.
[12] 朱勇,徐中偉,萬勇兵.CBTC仿真測試系統(tǒng)線路數(shù)據(jù)可視化生成的設(shè)計與實現(xiàn)[J].鐵路計算機應(yīng)用,2018,27(4):54?58.
[13] 劉東洪,鄢萍.基于插件和優(yōu)先級FCFS的機床數(shù)據(jù)采集方案設(shè)計[J].現(xiàn)代制造工程,2017,21(3):51?56.
[14] HUANG S T, HUANG C C, HUANG W L, et al. Tanshinone IIA induces intrinsic apoptosis in osteosarcoma cells both in vivo and in vitro associated with mitochondrial dysfunction [J]. Scientific reports, 2017, 27(31): 40382?40398.
[15] SINGH L P, ISSENMANN B, CAUPIN F. Pressure dependence of viscosity in supercooled water and a unified approach for thermodynamic and dynamic anomalies of water [J]. Proceedings of the national academy of sciences, 2017, 114(117): 4312?4317.