APP下载

TB级海量地震数据三维显示系统的设计与实现

2012-09-25郭林周东红沈东义胡元凌

中国海上油气 2012年1期
关键词:数据服务工区海量

郭林 周东红 沈东义 胡元凌

(中海石油(中国)有限公司天津分公司渤海油田勘探开发研究院)

TB级海量地震数据三维显示系统的设计与实现

郭林 周东红 沈东义 胡元凌

(中海石油(中国)有限公司天津分公司渤海油田勘探开发研究院)

随着渤海海域油气勘探开发的不断发展,地震数据体的数据量在不断增加,可达到几百GB甚至TB级,而现有软件无法完成跨工区、跨软件的海量地震数据调用和显示。自主研发了TB级海量地震数据三维显示系统,通过建立网络数据服务对多个现有专业软件数据库、多个工区的地震数据统一调配,以形成一个庞大的数据集并提供统一的数据访问接口,最终在客户端实现海量地震数据的实时高速读取,并以各种方式(剖面、切片、三维体)显示地震数据及相关成果图。应用效果表明,该系统功能强大、方便快捷,不仅可以在工作站上调入总量达到TB级的多个地震工区数据,同时还可以在PC机上快速浏览数据量达到几十GB的地震体,从而为渤海海域区域地质研究提供有力的技术支持。

TB级海量地震数据三维显示系统设计实时读取

地震数据三维可视化显示对石油企业提高勘探开发效率,加强数据采集、分析、处理能力,减少决策失误,降低企业风险起到了重要作用。随着渤海油田的高速发展和工作需求,科研人员对大范围多工区数据的连片研究需求也在不断增加。然而,随着地震数据体总量以及单个地震体数据量的不断增加,单个工区地震数据量可达几十GB,个别处理后的连片地震数据体甚至达到了200GB,多个地震工区数据总量达到了TB级。渤海油田所采用的解释系统为Openworks和Geoframe,其三维显示软件分别为Geoprobe和GeoViz,2个系统在进行大范围多工区的海量地震数据显示时仍存在一些问题,主要表现在:Geoprobe不能跨工区显示地震体,GeoViz虽然可以跨工区显示,但彼此之间无法直接进行数据共享;而三维地震数据往往分布在不同的软件系统中,其拥有各自的项目数据库和磁盘文件存放方法,在进行大范围多地震工区研究时往往需要在不同软件之间进行数据格式转换;同时,相关三维软件在绘制数据前,往往需要将硬盘上的地震体数据全部加载或部分预加载入内存进行处理转换后再显示,在总数据量达到数百GB甚至TB级时,占用的内存空间不容小视,如果不进行预加载而直接读取硬盘,则需要事先进行数据格式转换并在磁盘上形成相应缓存文件,以磁盘空间换取内存空间。在上述数据加载和处理的过程中,往往需要较长的等待时间而导致工作效率降低。

实践表明,虽然可以通过采购高端配置工作站并配备大容量内存解决数据预加载,并采购大容量磁盘保存转换后的冗余文件以实现海量数据的显示,但仍无法解决数据加载和转换所带来的效率问题,同时也明显增加了企业的硬件成本。因此,在不大量增加硬件成本的情况下,研发新的软件以实现海量地震数据三维显示并满足科研工作需求,这对石油企业具有重要现实意义。鉴于此,我们自主研发了海量地震数据三维显示系统,该系统通过建立网络数据服务,实现了对多个专业软件、不同工区数据库的统一调配,以形成一个庞大的数据集并提供统一的数据访问接口,客户端可通过该接口直读数据并实时绘制和显示各种图形;该系统不仅解决了不同解释系统、不同工区之间数据共享问题,同时避免了数据转换和过多的内存及磁盘占用,可在普通工作站和PC机上同时载入并显示多个地震工区,显示的海量地震数据总量达到了TB级。

1系统总体设计

从最初的需求分析来看,TB级海量地震数据三维显示系统应为数据浏览系统,用于解决已有软件在超大数据量显示时所遇到的问题,通过对已有软件的功能补充为管理人员和科研人员提供方便的数据浏览和成图功能,不需要替代原有软件较为成熟的功能(例如解释功能),亦不需要对原始数据和工作成果进行处理和修改,只需要实现跨软件、多工区的任意数据浏览,并保证实时性和运行效率,使其能够在工作站上实现全区域的海量数据浏览以及在配置相对较低的普通PC机上方便地浏览和查看多个工区的数据与解释成果。因此,本系统应主要解决两大问题:

(1)同时获取Openworks和Geoframe两个软件底层数据库的数据,实现数据共享,同时不形成冗余文件——研制数据服务系统实现此功能。

(2)在现有硬件条件下实现多个地震工区数据的实时显示——开发客户端海量地震三维显示系统实现此功能。

为实现更高效的数据共享访问,我们将数据服务系统分为前端应用和后台数据服务平台两部分,分别研发相应软件。TB级海量地震数据三维显示系统整体架构设计如图1所示。

图1 TB级海量地震数据三维显示系统整体架构设计

对于数据服务平台,该系统通过对Geoframe和Landmark底层数据库格式进行解剖,自主研发相关的底层数据库读取软件,提供相应的数据调用接口,并将各自底层数据库数据实时转换成统一格式;同时,通过研发数据总调度软件对底层多个数据读取软件进行统一调配和管理,使得后台数据形成一个庞大的数据集,并提供可供客户端访问的统一软件接口。通过该服务平台不但可以直接读取上述2个软件所对应Oracle数据库中相关数据,而且可以同时直读磁盘阵列上的地震数据体。

对于客户端海量地震三维显示软件,需要在同一场景中载入并绘制几个甚至几十个工区的地震数据和多种专业数据,并在显示环境中任意定位浏览地震剖面。为将加载时间和内存消耗降至最低,客户端采用数据直读实时绘制方法,该方法利用数据服务平台提供的数据读取功能实时获取不同解释系统、多个工区底层数据库的地震数据,或磁盘阵列上的地震数据,实时绘制显示图形,无须进行预加载和转换。数据直读功能可以实时获得所有服务器中的地震数据体,包括不同软件、不同工区的数据,满足了海量数据显示的要求。虽然实时获取数据的速度不及全载并直读内存数据,会有一定延迟,但在高速千兆网的支持下,访问速度足以满足科研人员正常使用的要求。同时,由于数据实时获取而非一次性载入,只需占用少量内存空间就可以满足可视化的显示需求,大幅度降低了系统资源占用。TB级海量地震数据三维显示系统整体流程如图2所示。

图2 TB级海量地震数据三维显示系统整体流程

2数据服务平台的设计与实现

数据服务平台的关键功能是实现多个库的数据读取和统一调配,并提供统一的数据接口和数据格式,使所有数据成为一个庞大的数据集。地震解释系统的数据主要包括地震数据、解释成果数据和井数据,其中解释成果与井数据存于Geoframe和Landmark的Oracle数据库中,而数据量最大的地震数据则以文件形式按各自的格式存放在磁盘阵列上(除了一些索引等关键信息)。针对数据总量大、工区多,在多个服务器上建立多个数据库并对应多个磁盘阵列的现实情况,数据服务平台采用中间数据服务和数据直读两级结构。针对Openworks和Geo-frame数据库的库结构和数据存储格式编写相应的数据直读程序,并部署在相应服务器上,将读取后的数据实时转换为统一标准的数据格式。由于客户端需要后台数据服务形成一个庞大的数据集,而不是与各个服务器直接交互,因此需要在此之上再建立一级中间数据服务层,由中间数据服务层总调度软件统一调配服务器间的数据。

由于数据基于网络传输,因此本系统客户端与中间层以及中间层与底层服务之间的数据传输均采用基于TCP/IP的Socket编程,并采用Java来编写。

2.1 数据读取软件

需读取的数据主要包括地震数据体、层位、断层和井轨迹、测井曲线、合成记录等不同类型的数据,根据功能需求与库结构特点,建立相应的读取模块。由监听端口生成Java中的ServerSocket对象,接收并处理客户端命令消息[1],而后将数据返回客户端。整个软件执行流程如图3所示。

图3 数据读取软件流程

2.2 中间数据服务层总调度软件

中间数据服务层总调度软件(以下简称中间层软件)主要实现两大功能:一是与客户端以及后台服务之间的数据传输通讯;二是多数据库的统一调度。通过实时解析客户端的数据请求,并判断数据所在服务器位置,将客户端数据请求命令分发至后台数据读取服务器,并将获取后的数据转送回客户端。通过该软件对后台多个服务器上的数据读取软件进行统一调度与管理,使得所有数据库形成一个庞大的数据集,并具有实时获取数据的功能。

具体实现时,在网络数据传输方面同样采用基于TCP/IP的Socket编程。对于数据的调度与管理,在架设好底层数据读取服务软件后,每台服务器将具有数据列表和数据读取功能。中间层软件在挂载每台服务器时,需分别获取其各自的总数据列表,之后将多个软件数据库的数据汇总为数据总表,并在客户端请求数据列表时传回客户端。其中,较为关键的问题是数据列表中的每个数据虽然在数据库中有唯一的id编号,但由于系统跨软件获取数据,同时对于同一软件建立的数据库因存放于多个服务器上,可能存在数据冗余以及id号重复问题,因此中间层软件在获取各个服务器上数据列表后还需将其统一分配附加的唯一编号作为中间层与客户端和底层数据交互的唯一识别码。这种全局id号可采用字符串的方式,例如可采用类似如下方法进行分配:

全局id=服务器编号+软件类型编号+软件版本编号+数据类型编码+原数据id

整个中间层软件的执行流程如图4所示。

图4 中间数据服务层总调度软件流程

3海量地震数据三维显示客户端的研发

海量地震数据三维显示客户端基于Visual C++ 2005进行研发,运行于Windows系统上,是以地震体数据为主,多种数据综合显示的三维软件。由于该系统的重点是实现海量地震数据的三维显示,因此本文仅重点论述地震体的绘制方法。

地震剖面数据由多个地震道构成,每道上有多个采样点。地震体的三维绘制需要根据剖面上的每个采样点的振幅值大小标记不同的颜色。作为独立的填充对象,每一个采样点对应于一个原地震数据体的振幅值和一个RGB色彩值。一个地震道最终被转换成一个像素道[2]。该系统将色表划分为256阶,前128阶与后128阶分别对应负振幅值与正振幅值。在取色的过程中,系统会根据振幅值范围来确定某一振幅值所在的具体区间,将会按照比例被对应划入相应的色阶中,且振幅值越大的采样点对应的色阶越高。采样点与色表对应关系如图5所示。

图5 地震道取色

在具体绘制地震体剖面时,该系统选择OpenGL作为程序开发所用图形库。程序实现时基于Open-GL中的纹理绘制功能,将每个采样点依次取色并生成二维纹理,绘制时只需绘制剖面4个顶点所构成的四边形,并用纹理进行填充。纹理绘制的优点在于拥有极快的绘制速度,通过纹理的各项异性过滤可以得到较为满意的绘制效果[3]。当在三维空间中移动并将剖面放大到一定程度时,剖面的清晰度将会有较明显降低,这时可以通过线性插值算法对剖面数据进行插值而生成更高精度的纹理,以满足要求。

对于海量地震数据,即使使用纹理绘制,纹理的数据量也是很可观的。对于超过100GB的超大地震数据体,单张剖面的数据量甚至可能达到百兆以上。因此,提高纹理的生成速度也是十分必要的,在此可以采用PBO技术提高纹理的生成速度。PBO (Pixel Buffer Object)是在OpenGL2.1中新增加的缓冲对象,它是通过扩展GL_ARB_pixel_buffer_object来实现快速的像素数据传递。PBO中的对象通过DMA(Direct Memory Access)传递到FrameBuffer,无须CPU介入,而且这种DMA是异步的[4],可有效减少纹理对象生成过程中产生的主线程延迟。

4系统功能

目前,自主研发的TB级海量地震数据三维显示系统客户端软件可在装有Windows系统的工作站上进行渤海全区域的地震数据显示,同时可在普通办公用PC机上为管理人员和科研人员提供方便的数据浏览和成图功能。软件运行后的主界面如图6所示。

图6 TB级海量地震数据三维显示系统运行效果

4.1 数据加载功能

软件以树形列表的方式为用户提供数据加载功能,在拥有最高权限的情况下用户可从列表看到Openworks和Geoframe的所有工区,无须关心数据来自哪个数据库,均为相同的加载方式。树形列表中每个工区下面分为井和地震两大类数据,井数据包括井轨迹、测井曲线、时深标定等数据;地震数据包含Survey以及其下对应的地震体和所有解释成果数据。加载时只需选中列表中的单选框即可,加载列表如图7所示。

图7 树形列表局部截图

用户每次对数据的加载以及设置可保存成记录文件,下次重新运行软件时可选择打开记录文件,快速调入数据并恢复成上次加载时的场景,避免了重复点选数据列表而带来的时间损耗。通过实测,将软件运行在Windows XP 64位版操作系统上,硬件采用惠普Z800工作站,具体配置为Intel Xeon X5650 CPU以及16G内存和2.5G显存的Quadro 5000显卡,可以在3分钟内调入总数据量高达500G的多个地震工区数据;通过不断加载数据,最终可任意操作总数据量达2TB以上的海量数据体。同时,数据操作的实时读取延迟被有效控制在2 s以下的可接受范围内。

4.2 绘制功能

软件可对地震体、解释成果、井轨迹、测井曲线等主要数据进行三维显示,并可显示渤海三维版勘探形势图,每个数据对象均有其独立的设置界面,包括色表和其他显示参数。客户端三维显示效果如图8所示。

图8 客户端三维显示效果图

4.3 其他功能

该系统还提供了其他必要的实用操作功能,主要包括:

(1)方便快捷的场景漫游鼠标操作,并配有键盘快捷键。鼠标移动过程中,可实时计算其所指向区域的真实三维坐标;并配有全局快速定位,即在全渤海范围内双击鼠标可瞬间拾取定位到三维场景中所要观察的点。

(2)主界面上方快捷功能键提供切割任意线等快捷功能。

(3)全局设置功能。当加载多个地震体进行连片显示时,可对所有对象同时进行色表调节、切时间切片、显示比例调整等。

(4)全局数据管理功能。通过软件提供的全局对象管理器,方便地查看已加载的所有对象并可调用其设置界面,也可对多个对象进行删除管理。

(5)立体显示功能。该功能可配合三维可视化中心相关设备,实现三维立体显示。

(6)高精度快速成图。使用户在可预览的情况下输出所见即所得的效果图,通过显卡直接渲染,可得到分辨率超过8 000×8 000的高精度图片。

5应用效果

目前,自主研发的TB级海量地震数据三维显示系统已在渤海海域地质勘探研究中推广应用,并显示出诸多优点。

(1)为区域地质研究提供了极大的便利。渤海海域勘探面积4.4×104km2,三维地震分块分批采集处理,尚未实现全区连片处理,且不同工区的数据存放于不同的数据服务平台(Geoframe和Landmark)。不论是Geoframe还是Landmark,原有软件都不能同时显示全海域或某一较大区域的地震数据体;而对于区域地质研究,这种大区域地震数据体的同时显示是十分必要的。自主研发的TB级海量地震数据三维显示系统完全解决了这一问题,该系统在可视化中心和主流工作站上投入使用后,可以直接加载任意工区的数据,实现全海域各种地震数据体(如地震方差数据体)及解释成果(约2 TB,仅覆盖一次)的超海量显示(图9),同时可以在三维环境中抽取任意线剖面并加载三维勘探形势图,为区域地质研究提供了极大的便利。

(2)应用于郯庐断裂带研究。郯庐断裂带是贯穿渤海湾盆地的大断裂,控制了该盆地的沉积和构造发育,与油气聚集成藏关系密切,对于区域地质研究也具有重要意义[5-7],是渤海湾盆地地质勘探研究的一个热点问题[8-10]。渤海油田三维地震数据已经全覆盖渤海海域郯庐断裂带,具备郯庐断裂带研究的资料条件。但是,覆盖郯庐断裂带的三维地震资料由41块独立的工区组成,共计2.29×104km2,最大采集面积2 400 km2,最大处理面积约1×104km2,此前由于三维可视化中心和工作站配备的商业软件无法实现全区域三维地震资料的整体显示,对郯庐断裂带的整体解剖造成了极大的困难。TB级海量地震数据三维显示系统的应用为郯庐断裂带的整体研究提供了有力工具,如图9所示的三维地震相干切片,清晰地显示了郯庐断裂带的位置、走向及其与沉积凹陷、次一级断层的关系。使在断裂带的平面展布及时空演化等有争议的科学问题的认识上取得了较大的进展,为断裂带内油气富集规律的认识及目标优选提供了有力的技术支持。

图9 渤海海域多工区连片效果(三维地震相干切片)

6结束语

TB级海量地震数据三维显示系统通过搭建数据服务平台,直接解析并读取Openworks和Geoframe库中数据与磁盘文件,无须重新建库和数据格式转换,避免了数据冗余。同时,基于实时绘制方法实现了TB级海量数据的三维显示,弥补了原有地震解释软件的不足。在地质勘探实际应用中,该系统为区域地质研究、勘探形势分析与决策,以及勘探项目管理提供了方便快捷、功能强大的软件工具;同时与现有成熟的商业软件相配合可为局部目标的精细研究提供保障。

当然,该系统目前还有一些待解决的问题,比如Openworks和Geoframe彼此之间的数据共享问题,多工区显示时重合区域的拼接处理问题等,尚待进一步完善与发展。

[1]HORSTMANN G S,CORNELL G,陈昊鹏,等.JAVA核心技术卷II:高级特性[M].8版.北京:机械工业出版社,2008:154-161.

[2]马仁安,张二华,杨静宇.三维地震数据场的快速体绘制方法[J].计算机辅助设计与图形学学报,2005,17(5):1008-1012.

[3]SHREINER D,WOO M,NEIDER J,et al.OpenGL编程指南[M].北京:机械工业出版社,2006:256-263.

[4]WRIGHT R S,LIPCHAK B,HAEMEL N.OpenGL SuperBible[M].4版.北京:人民邮电出版社,2007:601-608.

[5]XU JW,ZHU G,TONGW X,et al.Formation and evolution of the Tancheng-Lujiang wrench fault system:a major shear system to the northern of the Pacific Ocean[J].Tectonophysics,1987,134:273-310.

[6]UCHIMURA H,TSUNAKAWA M K H,KIMURA G,et al.Paleomagnetism of late Mesozoic rocks from northeastern China:the role of the Tan-Lu fault in the North China Block[J].Tectonophysics,262:301-319.

[7]YIN A.Cenozoic tectonic evolution of Asia:a preliminary synthesis[J].Tectonophysics,2010,488:293-325.

[8]HSIAO L Y,GRAHAM S A,TILANDER N.Seismic reflection imaging of a major strike-slip fault zone in a rift system:Paleogene structure and evolution of the Tan-Lu fault system,Liaodong Bay,Bohai,offshore China[J].AAPG Bull,2004,88:71-97.

[9]GONG Z S,ZHUW L,CHEN P P H.Revitalization of a mature oil-bearing basin by a paradigm shift in the exploration concept:a case history of Bohai Bay,Offshore China[J].Marine and Petroleum Geology,2010,27:1-17.

[10]黄雷,王应斌,武强,等.渤海湾盆地莱州湾凹陷新生代盆地演化[J].地质学报,2012,86(6):867-876.

(编辑:周雯雯)

Designing and realizing a 3D display system of themass seism ic data w ith a TB level

Guo Lin Zhou Donghong Shen Dongyi Hu Yuanling
(BohaiOilfield Exploration and Development Research Institute,Tianjin Branch of CNOOC Ltd.,Tianjin,300452)

With the continuous hydrocarbon exploration and development in Bohai water,the seismic data volume is expanding continuously and may be up to a level of several hundred GB or even TB.However,the existing softwares cannot call and display the mass seismic data from various work areas and softwares.A 3D display system of the mass seismic data with a TB level has been independently researched and developed,in which the multiple existing databases of special software and the seismic data from multiple work areas are allocated in a unified way by creating the service of network data,in order to form a huge data set and provide a unified data access interface,to achieve a real time and high-speed access to the mass seismic data at a client end and finally to display the seismic data and their related figures in various ways(section,slice and triaxiality).Its applications have shown that this system is powerful in functions and easy and fast in exploitation,and can not only call seismic data up to a TB level from several work areas at a workstation,but also view quickly the seismic bodies with data up to several ten GB at a PC.Therefore,the system may provide powerful supports for studying regional geology in Bohai water.

TB level;mass seismic data;3D display; system design;real-time access

郭林,男,工程师,2006年毕业于中国石油大学(华东)计算机科学与技术专业,主要从事软件研发工作。地址:天津市塘沽区609信箱(邮编:300452)。

2012-07-17改回日期:2012-08-28

猜你喜欢

数据服务工区海量
地理空间大数据服务自然资源调查监测的方向分析
一种傅里叶域海量数据高速谱聚类方法
关于铁路编组站减速顶工区标准化建设研究
海量快递垃圾正在“围城”——“绿色快递”势在必行
精确发现溢流研究及在西北工区现场应用
铁路隧道定额工区长度和通风管线路工程量计算规则探讨
耀眼的橘红色——河南省焦作市公路局养护工区养护机械队速写
如何运用税收大数据服务供给侧结构性改革
一个图形所蕴含的“海量”巧题
基于频繁子图挖掘的数据服务Mashup推荐