一种叠前深度偏移计算方法及系统技术方案

技术编号:20916934 阅读:39 留言:0更新日期:2019-04-20 09:46
公开了一种叠前深度偏移计算方法及系统。该方法包括:1)根据偏移距范围对输入地震数据进行分选,使一个输入地震数据切片只输出一个偏移距成像空间;2)调用Map函数,读取地震数据切片,根据炮检点坐标获取旅行时数据,再对地震数据进行逐道偏移成像计算,获得偏移剖面;3)调用Reduce函数,对中间数据文件进行拼接、排序和建立索引,生成成像道集数据。根据本发明专利技术的叠前深度偏移计算方法与系统,在Hadoop环境下实现了Kirchhoff叠前深度偏移计算。该方法和系统在作业运行过程中负载自动均衡,CPU利用率接近100%,并行加速比基本呈线性增长,非常适合大规模计算。相比于使用MPI编程模型,其计算性能提高近1倍。

A Method and System for Pre-stack Depth Migration

A method and system for calculating prestack depth migration are disclosed. The method includes: 1) sorting the input seismic data according to the offset range, so that only one offset imaging space can be output from an input seismic data slice; 2) calling Map function to read seismic data slices, obtaining travel time data according to the coordinates of gun checkpoints, then calculating seismic data by migration imaging, obtaining migration profile; 3) calling Reduce function to obtain the intermediate number; The image gather data are generated by splicing, sorting and indexing the files. According to the calculation method and system of prestack depth migration according to the present invention, Kirchhoff prestack depth migration calculation is realized in Hadoop environment. This method and system can automatically balance the load in the process of operation. The utilization of CPU is close to 100%, and the parallel acceleration ratio increases linearly. It is very suitable for large-scale computing. Compared with using MPI programming model, the computational performance of MPI programming model is nearly doubled.

【技术实现步骤摘要】
一种叠前深度偏移计算方法及系统
本专利技术涉及油气勘探地球物理领域,更具体地,涉及一种叠前深度偏移计算方法及系统。
技术介绍
Hadoop是由Apache基金会发起开发,能对大量数据进行分布式处理的基础软件框架,其核心内容包括Hadoop分布式文件系统(简称:HDFS)和MapReduce并行计算编程模型,其中HDFS为海量数据提供存储,则MapReduce为海量数据提供计算。HDFS将大数据集分割成小数据集存储在不同的计算机上,通过MapReduce编程模型尽可能的进行本地处理,从而实现并行化。由于目标运行环境是低廉硬件,所以HDFS必然具有有高容错性和高可靠性等特点。并且它提供了高吞吐量访问应用程序的数据,适合那些有着超大数据集的应用程序,具备高扩展性。同时,HDFS放宽了POSIX的要求,可以以流的形式访问文件系统中的数据,具有高效性。MapReduce是一种基于Hadoop分布式并行框架的编程模式,由Google公司率先开发,是互联网时代进行大数据处理和机器学习的先进技术。它提供了一种在大规模计算机集群上对大数据进行分布式处理的方法,即将复杂并行计算过程高度的抽象到了两个函数,Map和Reduce。对于数据,MapReduce将其看作一系列的〈key,value〉对,对数据处理过程则简化成Map映射和Reduce规约两个阶段。在Hadoop框架下,HDFS往往将一个作业的输入数据集分成若干个独立的小数据集,由Map并行处理,将一组〈key,value〉对映射成一组新的〈key,value〉对,作为Reduce的输入,执行相关操作。MapReduce的计算流程如图1所示,由输入、Map任务、Reduce任务、输出四部分构成。MapReduce属于一种较为高级的计算模型,开发人员只需要关注Map、Reduce的操作即可,Hadoop框架承担了容错、负载均衡等功能,降低了编程复杂度,提高了程序的可靠性。而高性能计算领域广泛应用的另一种编程模型是基于消息传递的MPI。在MPI编程中,开发人员必须显式地实现消息传递和数据交换。并且,要在一个稳定性差的大规模异构集群实现复杂算法程序的资源调度、负载均衡和高效运行,必须搭建一个非常复杂的并行计算框架,这对于开发人员仍然是一项挑战。因此,得益于其自身在数据提取、变形和加载方面上的天然优势,Hadoop最先在互联网网页搜索方面大受欢迎,并迅速在大数据分析应用中广泛应用,包括地震数据处理。目前,随着勘探规模的不断扩大,地震数据处理,特别是叠前偏移处理环节,数据量大、计算量大、计算周期长,对软件和硬件设备的稳定性和性能提出了越来越严苛的需求,导致处理成本急剧上升。因此,有必要提出一种降低对硬件设备的要求,并且能够扩大计算规模的叠前深度偏移计算方法及系统。公开于本专利技术
技术介绍
部分的信息仅仅旨在加深对本专利技术的一般
技术介绍
的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。
技术实现思路
为了解决现有技术中Kirchhoff叠前深度偏移计算效率低,不适应大规模计算的问题,本专利技术提出了一种基于Hadoop的叠前深度偏移计算方法与系统。具有高可靠性和扩展性的Hadoop技术为大规模地震数据处理提供了新的解决方案。基于Hadoop技术的叠前偏移程序的可靠性降低了对硬件设备的要求,计算规模可扩展到数千上万个计算节点,利用低成本的硬件设备可以实现大规模的高效计算,从而降低了地震数据处理的成本,提高经济效益。根据本专利技术的一方面,提出一种叠前深度偏移计算方法。该方法包括:1)根据偏移距范围对输入地震数据进行分选,使一个输入地震数据切片只输出一个偏移距成像空间;2)调用Map函数,读取地震数据切片,根据炮检点坐标获取旅行时数据,再对地震数据进行逐道偏移成像计算,获得偏移剖面;3)调用Reduce函数,对中间数据文件进行拼接、排序和建立索引,生成成像道集数据。优选地,步骤1)包括:1.1)将共中心点道集数据重新排序成共偏移距道集数据;1.2)基于所述共偏移距道集数据的偏移距大小对其进行分组;1.3)根据Hadoop设定的数据块大小和每个地震道长度,对步骤1.2)得到的共偏移距道集数据进行二次分组。优选地,在步骤1.2)中,分组总数NumOff通过公式(1)计算,当前道对应的偏移距分组组号Numt通过公式(2)计算:在公式(1)、(2)中,NumOff表示偏移距分组总组数Offmax表示输出最大偏移距值,Offmin表示输出最小偏移距值,ΔOff表示输出偏移距间隔,Offi表示当前道的偏移距值,Numt表示当前道对应的偏移距分组组号,OffCal_max表示输入最大偏移距值。优选地,在步骤1.3)包括:根据Hadoop设定的数据块大小和每个地震道长度,计算一个数据块能够包含的地震道数;求取每个偏移距分组道集能够划分的数据块数;根据偏移距分组号、道号和数据块顺序号,建立数据块索引表,确立数据块顺序号、数据存储节点名、数据块存储起始地址、数据块长度的对应关系,实现共偏移距道集数据的切分。优选地,通过以公式计算一个数据块能够包含的地震道数:其中,Mblk为一个数据块的占用磁盘大小,M1tra为一个道数据的占用磁盘大小,Numtra_blk为一个数据块包含的道数。优选地,通过以下公式计算每个偏移距分组道集能够划分的数据块数:其中,Numtra为一个偏移距分组道集的总道数,Numblk为一个偏移距分组道集能够划分的总块数。优选地,在步骤2)中,通过以下方式读取所述地震数据切片:C/C++应用程序向Hadoop数据平台提出读取数据请求,Hadoop数据平台的JavaAPI读取所申请数据块的描述信息,通过JNI传递给C/C++应用程序,再由C/C++应用程序的API接口根据描述信息直接到指定磁盘位置读取数据,其中,所述申请数据块的描述信息包括数据块的起始地址、数据块长度优选地,在步骤2)中,对各个地震道进行并行计算。优选地,在步骤2)中,通过操作同一共享文件实现同一偏移距分组的多个Map进程计算结果实现叠加。根据本专利技术的另一方面,提出一种叠前深度偏移计算系统。该系统包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现以下步骤:1)根据偏移距范围对输入地震数据进行分选,使一个输入地震数据切片只输出一个偏移距成像空间;2)调用Map函数,读取地震数据切片,根据炮检点坐标获取旅行时数据,再对地震数据进行逐道偏移成像计算,获得偏移剖面;3)调用Reduce函数,对中间数据文件进行拼接、排序和建立索引,生成成像道集数据。根据本专利技术的叠前深度偏移计算方法与系统,在Hadoop环境下实现了Kirchhoff叠前深度偏移计算。该方法和系统在作业运行过程中负载自动均衡,CPU利用率接近100%,并行加速比基本呈线性增长,非常适合大规模计算。相比于使用MPI编程模型,其计算性能提高近1倍。本专利技术的方法和装置具有其它的特性和优点,这些特性和优点从并入本文中的附图和随后的具体实施例中将是显而易见的,或者将在并入本文中的附图和随后的具体实施例中进行详细陈述,这些附图和具体实施例共同用于解释本专利技术的特定原理。附图说明通过结合附图对本专利技术示例性本文档来自技高网
...

【技术保护点】
1.一种叠前深度偏移计算方法,其特征在于,包括:1)根据偏移距范围对输入地震数据进行分选,使一个输入地震数据切片只输出一个偏移距成像空间;2)调用Map函数,读取地震数据切片,根据炮检点坐标获取旅行时数据,再对地震数据进行逐道偏移成像计算,获得偏移剖面;3)调用Reduce函数,对中间数据文件进行拼接和排序,生成成像道集数据。

【技术特征摘要】
1.一种叠前深度偏移计算方法,其特征在于,包括:1)根据偏移距范围对输入地震数据进行分选,使一个输入地震数据切片只输出一个偏移距成像空间;2)调用Map函数,读取地震数据切片,根据炮检点坐标获取旅行时数据,再对地震数据进行逐道偏移成像计算,获得偏移剖面;3)调用Reduce函数,对中间数据文件进行拼接和排序,生成成像道集数据。2.根据权利要求1所述的叠前深度偏移计算方法,其中,步骤1)包括:1.1)将共中心点道集数据重新排序成共偏移距道集数据;1.2)基于所述共偏移距道集数据的偏移距大小对其进行分组;1.3)根据Hadoop设定的数据块大小和每个地震道长度,对步骤1.2)得到的共偏移距道集数据进行二次分组。3.根据权利要求2所述的叠前深度偏移计算方法,其中,在步骤1.2)中,分组总数NumOff通过公式(1)计算,当前道对应的偏移距分组组号Numt通过公式(2)计算:在公式(1)、(2)中,NumOff表示偏移距分组总组数Offmax表示输出最大偏移距值,Offmin表示输出最小偏移距值,ΔOff表示输出偏移距间隔,Offi表示当前道的偏移距值,Numt表示当前道对应的偏移距分组组号,OffCal_max表示输入最大偏移距值。4.根据权利要求2所述的叠前深度偏移计算方法,其中,在步骤1.3)包括:根据Hadoop设定的数据块大小和每个地震道长度,计算一个数据块能够包含的地震道数;求取每个偏移距分组道集能够划分的数据块数;根据偏移距分组号、道号和数据块顺序号,建立数据块索引表,确立数据块顺序号、数据存储节点名、数据块存储起始地址、数据块长度的对应关系,实现共偏移距道集数据的切分。5.根据权利要求4所述的叠前深度偏移计算方法,其中,通...

【专利技术属性】
技术研发人员:杨祥森魏嘉庞世明亢永敢杨尚琴
申请(专利权)人:中国石油化工股份有限公司中国石油化工股份有限公司石油物探技术研究院
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1