999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于道集流的地震數據并行輸入輸出方法

2014-12-11 08:43:00劉永江
東北石油大學學報 2014年6期
關鍵詞:進程數據庫作業

劉永江,邵 慶

(1.中海油研究總院 技術研發中心 北京100027; 2.東北石油大學 計算機與信息技術學院,黑龍江 大慶 163318)

0 引言

隨著地球物理勘探技術的發展,地震數據的采集密度越來越高、采集容量越來越大,一個三維地震的數據文件通常達到1012b級.針對高精度的三維地震數據,人們研究各種地震資料處理算法,大多以道集為單元進行數據處理[1-2].道集指在地震資料處理中,根據計算需要從地震數據體中抽取滿足某種條件的一組地震道數據,如具有同一中心點的道數據組成的共CDP道集,其他還有共偏移距道集、共檢波點道集等[3-4].

傳統的地震資料處理軟件是以地震道為單元進行計算的,一次為處理模塊提供一個道數據或一組連續的道數據,無法集成復雜的道集處理模塊[5].為了支持對道集處理模塊的集成,文必龍等開發基于道集流的地震資料處理系統MPS(Marine Process System)[6].在地震資料處理作業流中,道集流模塊之間以道集作為數據輸入、輸出單元進行數據傳遞.道集流方式為深海高精度復雜地震資料處理算法提供方便的數據輸入、輸出方法,但對數據I/O提出更高的需求,需要對數據按道集進行分選、拆分、收集和存儲[7].在完成復雜數據操作的同時保證數據I/O速度,是基于道集流的地震資料處理平臺需要解決的關鍵問題之一.文獻[7-10]研究道集流的數據I/O功能和效率,通過虛擬內存映射[7]、統一數據存取[8-9]和數據存取流程優化[10]等技術提高道集的數據I/O效率;這些技術主要是通過數據函數接口提供數據存取,只是在局部對數據操作進行優化設計,沒有形成系統化的機制,難以滿足大規模地震資料處理在效率上的需求.

在分析三維地震道集流特點和集群環境存儲設備特點的基礎上,筆者提出一種多道集流并行數據服務架構,優化地震資料處理系統的并行數據存取效率,并在MPS上進行測試和集成.

1 地震資料處理數據服務

常規地震資料處理作業流程由數據輸入模塊、若干處理方法模塊和數據輸出模塊,按執行順序排列組成(見圖1).從輸入模塊到輸出模塊的運行是在一個作業進程中通過循環完成的,每循環一次完成一個道數據的處理.在作業流程內部,輸入模塊、方法模塊和輸出模塊以串行方式運行.在作業運行時,前一個模塊的輸出作為下一個模塊的輸入,構成地震數據流.地震資料處理的基本單元是地震道數據,處理方法模塊從數據流中收集道數據,當道數滿足處理方法模塊的輸入條件時,對數據進行計算并把數據返回數據流緩沖區.如此不斷循環,完成數據處理任務.

為了在多節點的集群系統中進行并行計算,地震資料處理系統需要為各節點分配計算任務,將數據分為若干組,各計算節點或進程按照作業流程計算分配的數據組.在道集流模式下,如果只將數據輸入、輸出單元由單道改為道集,難以滿足數據處理的要求,主要存在問題:

(1)道集數據輸入慢.由于一個道集的數據在地震數據體中不一定是連續存放的,需要進行數據篩選,因此輸入模塊必須從地震數據體中收集道數據并構成道集.當地震數據體很大時,數據收集速度變慢.

(2)道集數據輸出慢.由于各進程、各節點間的作業流是并行執行的,在數據文件并行讀方面不存在問題,但在數據輸出時易產生寫沖突.在單道數據輸出時,由于數據輸出量小,操作系統內部利用緩沖和事務處理功能可以解決寫沖突;但是在道集輸出時,一個道集數據就很大,系統的寫沖突機制協調的結果是各節點排隊寫數據,導致并行計算的結果以串行方式輸出,產生數據輸出瓶頸.

(3)難以處理多個道集.復雜的處理算法需要同時對多個道集進行計算,流程更加復雜,傳統的作業流控制模式無法處理這種復雜的數據流.

因此,提出基于索引數據庫的并行數據輸入、輸出架構,道集流并行數據流處理作業流程見圖2.該架構具有特點:

圖1 常規地震資料處理作業流程Fig.1 Job flow in general seismic data process

圖2 道集流并行數據流處理作業流程Fig.2 Parallel data flow for trace gathers flow processing

(1)建立道頭字索引數據庫.道頭字是抽道集的依據.索引數據庫將道地震數據文件的道頭字保存在數據表中,通過條件篩選和排序,得到道集中每一道的排序及其在地震數據文件中的道號.

(2)建立獨立的數據輸入、輸出進程.數據輸入、輸出進程與作業進程并行運行,作業進程的輸入、輸出模塊直接對數據緩沖區讀寫數據.由于在節點內實現并行數據輸入、輸出,能夠大幅提高數據I/O效率,可以適應多道集的處理.

(3)設置獨立的數據庫節點.在集群環境中專門設置數據庫節點,保證各并行節點共享索引數據庫服務.由于每一個節點有多個核,可以支持集群環境中大規模并行訪問數據庫.

(4)設置專門的地震數據存儲系統.在集群環境中建立磁盤陣列,用萬兆級光纖網聯接計算節點與磁盤陣列,保證節點并行存取速度.

2 索引數據庫

地震數據存儲通常由文件頭、道數據和文件尾部分組成:SEGD、SEGY格式數據由文件頭和道數據部分[11-12]組成,DHT格式數據由文件頭、道數據和文件尾部分[13-14]組成.文件頭描述地震數據采集參數,包括采樣間隔、采集方式、數據編碼格式和采集設備等全局性信息.文件尾包含一些與處理過程相關的信息.數據的主體是道數據,由若干地震道數據按一定順序排列構成.每個道數據由一個道頭字表和多個地震特性數據構成.道頭字表由多個道頭字構成,每個道頭字表示道數據的一個特性,如道號、炮號、共深度點、疊加次數、炮檢距、面元序號和三維inline號等.其中,道號是道在道數據集中序號,按1、2、3……進行編號.

道集流的基礎是抽道集,即從地震數據文件中將符合條件的道數據提取出來,并按一定順序排列.每個道集用三元組表示:

其中:

·where為道集篩選條件.where一般用1個或多個格式為“道頭字 比較符 數值”的邏輯表達式進行

描述,如:“炮號=4”的道,“共深度點>5and共深度點<10”的道.

·order為道集排列方式.由一個或多個道頭字組成,表示排序關鍵字.

·IDs為道集中所有道的道號集.

一個道集包含若干個道,各道在地震數據體中不一定是連續存存儲的,其分布與輸入數據的存儲順序及道集抽取方式有關.如當輸入數據是炮序的,即按炮號為主關鍵排序(原始地震數據是按炮序排列的);如果按偏移距抽道集,道集中任何一個道都跨越所有的炮的道集,數據分布幾乎跨越整個地震數據文件.每抽一個道集都要遍歷一遍整個數據體文件,速度非常慢.

圖3 道頭字索引數據庫ER主體結構Fig.3 Primary part of ER chart for database of trace head indexing

為了快速定位道集數據,設計道頭字索引數據庫,利用數據庫的檢索功能,快速篩選滿足where條件道集信息,并按order條件進行排序,產生道集的道號集合IDs,輸入、輸出模塊根據IDs條件直接在地震數據文件中定位讀取數據.道頭字索引數據庫存儲與地震工區相關的地震數據文件基本信息,以及每個地震數據文件的道頭信息,其ER(Entity Relationship,實體關系)主體結構見圖3.

工區表(Project)定義地震工區相關的信息.

地震數據文件表(SeismicDataFile)定義一個地震數據文件的相關信息,包括文件的路徑和文件頭中的主要信息.

道頭信息表(TraceHead)定義道頭字信息,道頭字中的每一個關鍵字都對應一個TraceHead字段,每一道對應一條TraceHead記錄.一個三維地震數據體包含的地震道多達千萬條,為了提高數據檢索效率,將不同工區地震數據的TraceHead分開建表,減少一個TraceHead表的數據記錄數量.

通常情況下,在處理數據時一個工區只有一個地震數據文件.在地震數據采集過程中,有時將一炮或幾炮的數據保存在一個文件里,在地震資料處理前需要將這些文件合并為一個大文件,不僅花費時間,占用很大的磁盤存儲空間,而且對人工的分工操作和數據管理等也不方便.

提出虛擬地震數據文件的概念,在將多個實際的地震數據文件組織成一個新的地震數據文件時,并不生成新的數據文件體,只是在表SeismicDataFile中建立一條記錄,在表TraceHead中增加一個文件號,記錄每一道在哪個文件中的道號是多少;同時設計一張文件合并信息表MergeInfo,描述虛擬文件與各組成文件之間的組合關系.由于采用虛擬地震數據文件,避免人工合并文件,既可對單個文件進行處理,也可對整個文件進行處理.

地震資料處理系統首次加載地震數據文件時,通過對地震數據文件進行一遍掃描獲取道對信息,在索引數據庫中建立索引數據表;此外,在處理作業輸出數據時也創建索引數據表.為了提高數據庫操作效率和適應并行數據操作,采取策略:

(1)按常用關鍵字對表TraceHead建立索引,每個關鍵字對應一個索引.

(2)采用事務鎖機制,保證數據操作的一致性.在數據處理過程中,各節點同時進行創建、插入和查詢同一條記錄的概率高,對一些特定的操作采用事務鎖可以保持數據的一致性.

(3)利用數據庫連接池和批量加載技術,減少進程與數據服務器的通訊次數.在數據處理過程中打開和關閉數據庫時,在數據庫服務器和客戶端交換數據庫管理信息,連接池只在客戶端首次連接數據庫時打開數據庫,中間再有打開和關閉數據庫時只返回連接信息,不再進行實際連接.向數據庫中插入一條記錄時,也有客戶端與服務器之間的多次通訊,雖然每次操作的時間很短,但上千萬次數據操作累積起來占用的時間很多;因此將向數據庫中插入的數據先緩存在本地磁盤文件中,在完成數據處理后一次性向服務器進行批量加載,可大幅提高數據庫操作速度.

3 并行數據輸入輸出

3.1 節點間

在地震資料處理系統啟動各節點的分控程序時,向分控程序傳遞該節點要計算的道集范圍,并啟動數據輸入、輸出進程(見圖2).因此,節點間的數據并行操作主要體現在數據庫查詢、數據讀和數據寫的并行方面.

各節點同時查詢或寫數據庫時,數據庫服務器本身具有多用戶并發操作控制機制,為每個節點派發一個線程處理相應的數據請求;在各節點抽道集時,操作系統和磁盤陣列可以很好地處理并行只讀操作,以避免產生沖突.

在各節點輸出數據時將產生寫沖突問題,因為磁盤系統對同一個數據塊一次只允許有一個寫操作,提出3種并行輸出方式:

(1)文件鎖方式.一個節點在寫數據時,將數據文件加上鎖,其他節點的進程要寫數據時將被阻塞,在該節點寫完數據時直接釋放鎖.文件鎖方式本質上是一種串行寫操作,效率很低.只有在數據量不大或用戶在調試模式下工作時,才用文件鎖方式.

(2)隨機寫方式.根據已知的輸出道數和道長字節數,預先生成一個足夠大的空文件,各節點只針對本節點寫入的數據塊進行操作.由于磁盤系統允許隨機并行寫操作,因此不產生沖突.隨機寫方式只適合輸出道集可預先計算的情況.

(3)獨立輸出文件方式.各節點輸出各自的文件,相互不干擾,利用提出的虛擬地震數據文件的概念,將獨立的文件組織成一個虛擬地震數據文件,數據文件共享一個TraceHead表.這種方式輸出效率最高,并且適合各種情況.

3.2 節點內

在一個計算節點中只有一個數據輸入進程和一個數據輸出進程,負責該節點多個作業進程的統一輸入、輸出.節點內的數據輸入、輸出并行指輸入進程、輸出進程和作業進程同時運行.

在數據輸入進程與作業進程之間通過數據輸入緩沖區進行數據協同.數據輸入進程為根據任務清單進行抽道集,將道集數據放入數據輸入緩沖區;作業進程由數據輸入模塊從緩沖區中按順序讀取道集,交給計算模塊處理.當節點中有多個作業進程并行運行時,各進程從緩沖區的道集隊列中獲取道集,并行數據輸入流程見圖4.

在輸入進程與作業進程并行運行過程中,需要協同控制緩沖區.數據輸入進程不斷地往緩沖區中存入道集,當緩沖區滿時,需要等待緩沖中的道集被作業進程讀出;當向緩沖區存入一個道集時,需要通知正在等待的作業進程.作業進程的輸入模塊不斷從緩沖區中讀入道集,當緩沖區空閑時,需要等待緩沖的道集被數據輸入進程存入道集;當從緩沖區讀出一個道集時,需要通知正在等待緩沖區的數據輸入進程.由于可能有多個進程同時從緩沖區讀道集,因此需要對道集緩沖進行全局性控制.

圖4 并行數據輸入流程Fig.4 Work flow for parallel data input

采用信號量控制緩沖區和道集數據,給出統一的信號量、初始化、P操作和V操作定義,實現數據輸入進程與作業進程間的控制通訊.數據輸出流程與數據輸入流程相似.

并行數據輸入、輸出機制能夠適應多道集處理的需要.一般情況下,作業流程一次循環只處理一個道集,但在復雜的地震資料處理算法中,一次計算需要用到多個道集流的數據,需要啟動多個輸入進程.

通過數據并行輸入、輸出機制,能夠提高地震資料處理效率(見圖5).假設輸入一個道集的時間為T1,執行一次處理流程所用時間為T2,輸出一個道集的時間為T3,共有n個道集需要處理.

在串行模式下,完成全部資料處理的時間Ts為

在并行模式下,在完成一個道集的輸入后才能啟動作業流,在完成一次作業流后才有輸出,在完成所有處理后還要完成最后一次處理的輸出.在不考慮多個作業流并行及數據緩沖區等待的前提下,在并行模式下完成全部資料處理的時間為

式中:T4為輸入、作業和輸出迭加執行的時間,即各迭加部分最長部分的時間.一般情況下作業計算占用的時間明顯多于輸入、輸出占用的,因此T4取為(n-1)T2.

為了提高并行速度,即減少Tp,最直接的方式是減少T4的開銷.因此,在同一節點內,采用多核并行執行作業進程的核數越多,每一個核的循環次數就越少,T4越小.如果作業流程的處理模塊很少、處理開銷小于數據輸出的時間時,T4的開銷變為輸出道集的時間.為了提高作業處理效率,可以減少作業流并行數,增加輸出進程的并行數.通過調整不同進程的并行數,保持作業執行時間與數據輸出時間的平衡,以實現處理效率的最優化.

圖5 地震資料處理時間序列Fig.5 Time series in seismic data process

4 測試

文中基于道集流的地震數據并行輸入、輸出方法在中國海洋石油總公司開發的海上地震資料處理系統MPS中得到應用,與商業地震資料處理軟件Foucs在同一集群環境中進行對比,MPS的應用效果優于Focus的.MPS和Focus的測試數據I/O速度結果見表1,其中測試序號1~3分別表示3種測試情況:1表示有數據輸入,同時加載一個處理方法模塊;2表示有數據輸入和數據輸出,同時加載一個處理方法模塊;3表示只有數據輸入和數據輸出,不加載任何處理方法模塊.

在相同條件下,MPS的處理速度要快于Focus的.當計算節點數增加時,MPS的速度提高幅度比Focus的明顯,主要原因是MPS在數據I/O上采用多文件輸出,避免并行數增加時數據輸出競爭的現象.

表1 MPS與Focus的效率測試結果Table 1 Comparison of data I/O efficiency in MPS and Focus

此外,測試MPS在采用不同CPU核數進行地震資料處理時的輸入﹑輸出效率,結果見表2.在有輸入﹑輸出和處理方法模塊時,平均數據處理速度近150Mb/s.當并行CPU核數達到40左右時,即使再增加CPU核數,也不能提高數據處理速度.這是因為隨著并行數提高,進程對磁盤I/O、網絡帶寬開始形成競爭,再提高速度需要通過硬件升級提高網絡帶寬和磁盤I/O并發效率.測試序號1的速度隨核數增加提高得明顯,表明磁盤陣列能夠很好地處理數據的并行輸入,影響數據I/O效率的重點是數據的并行輸出.

表2 不同核數時MPS并行處理性能測試結果Table 2 Test result for MPS Parallel processing performance with difference core

5 結束語

基于道集流的地震數據并行輸入﹑輸出方法集成數據庫技術、進程并行控制技術、海量數據文件存取技術,能夠有效地適應基于道集流的地震資料處理,對海量三維地震資料處理有較高的數據存取效率;由于采用獨立數據輸入、輸出進程,在數據存取方面具有較好的可擴展性,可支持多道集流的處理模式,以及不同處理作業流程下的優化配置.

(References):

[1]Brahim Abbad,Bjorn Ursin,Didier Rappin.Automatic nonhyperbolic velocity analysis[J].Geophysics,2009,74(2):1-12.

[2]Fu Liyun.Wavefield interpolation in the Fourier wavefield extrapolation[J].Geophysics,2004,69(1):257-264.

[3]Pang Tinghua,Lu Wenkai,Ma Yongjun.Adaptive multiple subtraction using a constrained L1-norm method with lateral continuity[J].Applied Geophysics,2009,6(3):241-247.

[4]陳生昌,王漢闖,陳林.三維 VSP數據高效偏移成像的超道集方法[J].地球物理學報,2012,55(1):232-237.Chen Shengchang,Wang Hanchuang,Chen Lin.A hight efficient super-gather migration method for 3DVSP data[J].Chinese Journal of Geophysics,2012,55(1):232-237.

[5]胡學慶.集群環境下海量數據存儲管理技術的研究[D].大慶:東北石油大學,2010.Hu Xueqing.Research of massive data storage and management in cluster environment[D].Daqing:Northeast Petroleum University,2010.

[6]文必龍,胡學慶,劉永江.海量數據跨盤存儲機制的設計與實現[J].鄭州輕工業學院學報:自然科學版,2010,25(3):46-48.Wen Bilong,Hu Xueqing,Liu Yongjiang.Design and implementation of massive data across storage devices[J].Journal of Zhengzhou University of Light Industry:Natural Science Edition,2010,25(3):46-48.

[7]文必龍,宗文棟.海量并行處理系統的大數據讀寫接口優化研究[J].鄭州輕工業學院學報:自然科學版,2012,27(3):28-31.Wen Bilong,Zong Wendong.Research on interface optimization for reading and writing large data of massive parallel processing system [J].Journal of Zhengzhou University of Light Industry:Natural Science Edition,2012,27(3):28-31.

[8]Xiao Bo,Wen Bilong.Unified format definition for bulk data[C]//Proceedings of 2011International Conference on Electronic and Mechanical Engineering and Information Technology.EMEIT 2011:2571-2575.

[9]Liu Yongjiang,Wen Bilong.Unified format definition for seismic data[C]//Proceedings of 2011International Conference on System Design and Data Processing.ICSDDP 2011:205-208.

[10]文必龍,趙滿,劉永江.虛擬地震數據文件并行訪問策略[J].計算機系統應用,2013,22(4):211-15.Wen Bilong,Zhao Man,Liu Yongjiang.Parallel access virtual seismic data file[J].Computer System Application,2013,22(4):211-115.

[11]SEG Technical Standards Committee,SEG-D,Rev 3.0,SEG Field Tape Standards[S].Society of Exploration Geophysicist,2012.

[12]SEG Technical Standards Committee,SEG Y rev 1Data Exchange[S].Society of Exploration Geophysicist,2002.

[13]馮翔.基于hadoop的地震數據分布式存儲策略的研究[D].大慶:東北石油大學,2013.Feng Xiang.The research of seismic data distributed storage strategy based on Hadoop[D].Daqing:Northeast Petroleum University,2013.

[14]趙滿.地震數據并行訪問策略的研究[D].大慶:東北石油大學,2012.Zhao Man.The research of parallel accessing strategies for seismic data[D].Daqing:Northeast Petroleum University,2012.

猜你喜歡
進程數據庫作業
快來寫作業
債券市場對外開放的進程與展望
中國外匯(2019年20期)2019-11-25 09:54:58
數據庫
財經(2017年2期)2017-03-10 14:35:35
作業
故事大王(2016年7期)2016-09-22 17:30:08
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
社會進程中的新聞學探尋
民主與科學(2014年3期)2014-02-28 11:23:03
我國高等教育改革進程與反思
教育與職業(2014年7期)2014-01-21 02:35:04
我想要自由
主站蜘蛛池模板: 一本久道久久综合多人| 日韩在线欧美在线| 国产视频一二三区| 免费av一区二区三区在线| 国产欧美视频在线| 亚洲天堂精品在线| 成人免费视频一区二区三区| 亚洲专区一区二区在线观看| 国产97公开成人免费视频| 亚洲小视频网站| 秘书高跟黑色丝袜国产91在线| 国产日韩欧美成人| 无码精品一区二区久久久| 亚洲自偷自拍另类小说| AV无码无在线观看免费| 伊人无码视屏| 在线观看国产网址你懂的| 亚洲欧洲日产国码无码av喷潮| 国产91丝袜在线观看| 久久青草精品一区二区三区| 宅男噜噜噜66国产在线观看| 欧美精品啪啪| 国产成人精品在线1区| 国产丝袜丝视频在线观看| 亚洲无码免费黄色网址| 亚洲精品午夜无码电影网| 精品久久人人爽人人玩人人妻| 99久久亚洲精品影院| 国产网站一区二区三区| 成人免费午间影院在线观看| 久久久久人妻一区精品| 国产91熟女高潮一区二区| 成年A级毛片| 国产内射在线观看| 国产呦精品一区二区三区下载| 麻豆精选在线| 啪啪啪亚洲无码| 操国产美女| 欧美日本激情| 亚洲成a人片在线观看88| 欧美国产综合视频| 五月天天天色| 国产成人高清精品免费5388| 亚洲第一视频网站| 国产亚洲视频中文字幕视频| 香蕉网久久| 欧美日韩中文国产va另类| 国产不卡一级毛片视频| 国产白浆视频| 欧美亚洲一区二区三区导航 | 免费国产高清视频| 欧美福利在线观看| 色老二精品视频在线观看| 老司机久久精品视频| 国产99视频在线| 精品少妇人妻一区二区| 国产毛片高清一级国语| 亚洲国产午夜精华无码福利| 看国产毛片| 国产自无码视频在线观看| 91po国产在线精品免费观看| 久久公开视频| 国产精品成| 国产一区二区三区免费| 超清无码熟妇人妻AV在线绿巨人 | 啪啪啪亚洲无码| 欧美激情第一区| 久久久久青草大香线综合精品| 婷婷99视频精品全部在线观看| 在线观看欧美精品二区| a级毛片免费在线观看| 欧美乱妇高清无乱码免费| 一本二本三本不卡无码| 成AV人片一区二区三区久久| 亚洲精品动漫| 国产精品视频系列专区| 一级毛片免费观看久| 国产黄色视频综合| 亚洲婷婷六月| 亚洲 欧美 日韩综合一区| 亚洲国产精品无码AV| 无码aaa视频|