• 图纸下载
  • 专业文献
  • 行业资料
  • 教育专区
  • 应用文书
  • 生活休闲
  • 杂文文章
  • 范文大全
  • 作文大全
  • 达达文库
  • 文档下载
  • 音乐视听
  • 创业致富
  • 体裁范文
  • 当前位置: 达达文档网 > 专业文献 > 正文

    基于GeoEast系统的超大数据处理资源优化技术研究与应用

    时间:2021-01-14 08:00:38 来源:达达文档网 本文已影响 达达文档网手机站

    张洁 赵玉梅 史哲 翟修齐 陈翔 张红杰

    摘  要:
    近年来,随着野外地震勘探力度的不断增加,单步地震处理数据量已高达到PB级,地震资料处理项目对高性能集群软硬件的要求也越来越高。研究基于GeoEast系统超大数据处理的资源优化配置技术,重点从集群的本地盘、CPU测试与优化、高性能并行存储的优化以及GeoEast系统数据库参数优化等几个方面对超大数据处理系统进行优化配置,从而提高超大数据处理系统的整体性能,并为超大数据处理系统的软硬件资源配置提供一定的理论参考。

    关键词:
    大数据处理; 高性能并行存储; GeoEast; NFS; Oracle数据库

    中图分类号:TP311.5          文献标识码:A     文章编号:1006-8228(2020)04-01-04

    Research and application of the resource optimization technology for

    big data processing based on GeoEast system

    Zhang Jie, Zhao Yumei, Shi Zhe, Zhai Xiuqi, Chen Xiang, Zhang Hongjie

    (BGP, CNPC, Zhuozhou, Hebei 072750, China)

    Abstract:
    In recent years, with the increasing intensity of field seismic exploration, the amount of single-step seismic processing data has reached PB level, and seismic data processing projects have higher requirements for HPC cluster hardware and software. This paper focuses on optimizing the configuration of big data processing system from the aspects of cluster local disk, CPU test and optimization, high performance parallel storage optimization and GeoEast system database parameter optimization, to improve the overall performance of the big data processing system, so as to provide certain theoretical reference for the hardware and software resource allocation of the big data processing system.

    Key words:
    big data processing; high performance parallel storage; GeoEast; NFS; Oracle database

    0 引言

    随着地震勘探精度不断提高,野外勘探数据量逐年增大,GeoEast系统[1]中运行的项目数据量由以前的TB级增长到现在的PB级,同时随着处理技术的快速发展,地震数据处理计算越来越复杂,计算量也逐渐增大,给PC集群的软硬件资源带来了巨大的挑战,存在处理集群运行效率低、大型PB级项目无法运行等许多問题。本文主要介绍如何从集群、存储以及软件三方面对大数据处理资源进行优化配置,解决超大数据项目运行过程中出现的一系列问题,以满足GeoEast系统运行超大数据地震处理项目的需求。

    1 集群资源优化技术

    1.1 本地盘的测试与优化

    GeoEast系统一般会使用集群节点的本地盘做临时工作目录。本地盘的性能会直接影响一些作业的运行效率,如输入输出、分选、深度偏移,四维去噪等。本地盘IO性能差,会导致数据无法及时与内存交换,造成计算资源的浪费与利用率低。针对本地盘分别就不同的文件系统类型、RAID级别、磁盘数量、缓存策略以及条带深度等进行测试,发现采用4块机械盘的RAID0做成EXT4文件系统时效率最高,且不同缓存策略以及条带深度情况下,读写效率差别较大,测试结果如表1所示。

    当采用Cached模式时,所有读写操作都会使用RAID卡的缓存保存数据,相对于Direct的直接读写模式,本地盘的读写性能是原有的2倍以上。而条带深度如果设置太小,就很有可能出现一个IO横跨多个分条单元的情况,随着分条深度的增大,一个IO跨盘的几率逐渐减小,因此随着分条深度的增加,大IO读写性能会逐渐增加[2]。在大数据处理的场景下,缺省分条深度64K无法让本地盘性能发挥最优,推荐设置为512K。本地盘的优化解决了大数据处理项目中本地盘的IO性能低的瓶颈问题,尤其是对于提高叠前深度偏移作业的运行效率有着明显的作用。

    1.2 不同CPU架构下作业测试

    在GeoEast系统中有很多需要耗费大量CPU资源的应用模块,CPU资源的性能直接影响到大数据处理的效率,为了寻找最优的CPU型号,分别对于WildAmpAtten、CPU版叠前深度偏移以及CPU版叠前时间偏移模块在不同CPU集群环境中进行对比测试,如图1、图2和图3所示。

    在WildAmpAtten模块测试中,考虑主频因素使用Gold 6132 V5的集群表现最佳。

    在叠前深度偏移模块测试中,使用GOLD 6132 V5的集群深度偏移速度是使用E5 2680 V4的1.49倍。而在叠前时间偏移模块测试中,使用Gold 6132 V5的集群偏移效率是另一组集群的1.9倍。

    2 高性能存储优化技术

    2.1 OceanStor9000存储优化

    在华为OceanStor9000并行存储中,所有的存储节点既是数据节点同时也是元数据节点,不同的元数据节点管理不同的目录[3]。而在地震处理过程中,同一工区的数据往往会集中存储到同一个目录下,导致同一目录下的文件可能达到上万个或更多。由于这些文件在相同目录下,所以只能由一个元数据服务器管理,从而会引发数据访问有延迟的情况,无法发挥分布式存储多节点的优势。针对这种情况,进行了两种场景的对比测试。场景一:工区作业数据集中在一个数据目录下,进行处理作业。场景二:工区作业数据拆分分成了4个目录,进行处理作业,可以看出后者的读写延迟更小,如图4所示。

    在GeoEast系统工区目录结构基础上,增加附盘可以把地震数据和速度文件的读写分散到多个元数据节点上。建议同一项目下建多个工区可以有效地减少单个list、LOG、datatable目录下的文件数量,同时增加交互读写等操作响应较快的其他存储作为主盘,以改善小文件的读写性能,大数据读写性能好的OceanStor9000存储设置成附盘,并定义只使用附盘存放地震数据,通过这种方式可以大大提高作业运行速度[4]。

    2.2 NFS参数优化

    目前生产中使用的高性能存储绝大多数都是通过nfs协议进行共享的,使用nfs挂载存储的时候如果用默认参数,数据传输速度就无法达到最理想值。在nfs中rsize和wsize两个参数分别指定了server端和client端读写数据的块大小[5]。这两个参数若设置过小就会有更多的包在网络上发送数据,增加了网络的通信量,同时在服务器和存储端上都增加了CPU的开销。在大数据处理的现状下,NFS读写的数据块都很大,将rsize和wsize调高到1M,可以提高NFS文件系统的读写性能。

    3 Oracle数据库参数优化

    3.1 数据库连接数调优

    在GeoEast系统中一些过期却没有正常退出的进程往往占用了大量的数据库进程。这一类型的进程如果大量存在不仅会造成软件报错,还会导致数据库服务器性能下降。在运行作业数量非常大的情况下,可以通过修改数据库参数适当的增加数据库的连接数,提高作业的运行效率,同时定期清理死作业死进程以释放数据库可用连接数,并及时关闭不用的交互如GeoSeismicView、jobeditor、GeoJobConsole,以释放占用数据库服务器的资源。

    3.2 cursor_sharing参数

    Oracle版的stapply 模块速度非常慢,并且占用大量的资源。该模块中,每一地震道应用一次就会产生一条SQL命令。海量数据的道数非常多,同时运行多个Stapply作业时,系统常出现假死甚至Oracle服务器死机的情况。将cursor_sharing的值由缺省的EXACT改为FORCE,可有效提高了SQL语句的解析效率。

    3.3 open_cursors参数

    该参数的缺省值为300。而在GeoEast中,PGeosortIn模块50节点每节点4个任务时作业就报错。如果数据大于80T的话,建议将该参数修改到3000,修改后不用重启数据库即可生效。

    SQL>alter system set open_cursors=3000;

    System altered.

    SQL> show parameter cursor

    NAME                    TYPE      VALUE

    ------------------------------------- ---------------- --------------------

    cursor_sharing             string      EXACT

    cursor_space_for_time      Boolean    FALSE

    open_cursors               integer     3000

    session_cached_cursors     integer      20

    3.4 消除单个项目同时运行作业数的限制

    超大数据处理中,单个项目需要同时运行成百上千个作业,在实际生产过程中由于受到数据库的限制,同一项目一旦发送作业数超过168个,超出部分的作业会自动退出,无法正常运行。通过修改数据库参数可消除该限制,从而提高软件的运行效率[6]。

    %sqlplusprojectname/projectname(projectname为工区名称)

    SQL> alter table ps_leveled_index drop constraint

    pk_ps_ leveled_index; (解除该工区的作业同时发送的个数限制)

    删除主键索引,只保留唯一键索引,使用这种方式测试工区同时运行作业数已突破800。

    4 结束语

    近年来,随着两宽一高处理工作量的增加及GeoEast软件的推广使用,随之而来的超大数据给处理資源带来的各种挑战和影响一直是运维工作的一个难点,本文通过对处理资源软硬件各方面的探索及优化配置,大大提高了GeoEast系统运行超大数据处理项目的效率。该技术适用于所有基于GeoEast的大数据项目,具有良好的推广应用前景。此外,在集群I/O性能提升以及GeoEast重点处理模块占用资源的特征分析、大数据处理系统应用软件的并行度及适用性等方面还需要进一步的探索研究,以便日后更好地满足PB级超大数据处理的需求,提高处理效率和机器的利用率。

    参考文献(References):

    [1] 徐少波,白雪莲,曾强,林茂春,黄燕,潘焕革.GeoEast地震数据处理解释一体化软件系统[J].石油工业计算机应用,2016.3(24):6-11

    [2] 王俊杰.通用磁盘阵列RAID性能分析及优化[D].西安工程大学,2015.

    [3] 宋振龙.面向超级计算的大规模并行存储系统关键技术研究[D].国防科学技术大学,2014.

    [4] 陈继红,赵书华,祝宽海,王仕检.优化系统配置提高GeoEast系统运行效率[J].物探装备,2010.20(4).

    [5] 曹立强,罗红兵,张晓霞.集群环境中影响NFS文件系统带宽的测试与分析[J].计算机工程,2007.33(19).

    [6] 龚莉,赵玉梅,张红杰,郑玉霞,刘宗祥.GeoEast海量数据处理资源优化配置技术研究与应用[J].计算机光盘软件与应用,2014.6:101-103

    相关热词搜索: 数据处理 技术研究 优化

    • 生活居家
    • 情感人生
    • 社会财经
    • 文化
    • 职场
    • 教育
    • 电脑上网