李 真, 彭运星, 吴彬彬
(1.武汉理工大学资源与环境工程学院, 湖北 武汉 430000;2.深圳鹏锐信息技术股份有限公司, 湖北 武汉 430000)
在油田勘探开发作业现代化、信息化的过程中,各种数据与日俱增,怎样更高效地对这些数据进行管理、应用,并且以这些数据为依托构建有应用价值的参考模型,更好地服务于企业决策、产能分析以及故障诊断,是目前石油勘探开发云平台建设的紧迫任务。具体来说,油田的勘探开发过程中,所积累的数据信息包括各种图件、办公文档、方案文档以及地震等数据。怎样更好地存储和管理这些数据,以及高效地进行应用,对油田企业的可持续发展意义重大。
该系统起到系统与用户联系的作用。能够向用户提供良好的界面、图形,用户既可以借助登录合理定制各种细粒度业务,也可以对更多输出结果进行查看或者保存。包括如下模块功能:第一,该模块为用户管理功能,对用户身份进行识别,并进行权限的设置,同时管理用户登录以及注销等常规业务;第二,业务展示模块:针对用户提交的各种业务,进行结果查看、保存和分析,向用户交付系统返回的结果。
该模块可以实现诸多业务逻辑以及控制和调度不同的业务流程。具体的模块功能包括以下两个层面。第一,用户界面:用户利用并不复杂的操作工具,处理和储存大量的数据。第二,业务响应模块:利用相应的上层业务模块,有效调用、管理实现业务需要的子业务,业务的完全可以调用底层模块。
在应用层的数据挖掘阶段,业务流需要不同的模块,数据处理层可以进行较细粒度模块的提供。该层面是全部系统的核心,可以进行各种任务实现工程中算法的并行化,并向Hadoop 分布计算层提交任务并进行计算,然后将运算结果返回业务应用层。该层面包括以下的模块。第一,系统管理模块:可以分布式管理系统;管理内容涵盖系统远程部署、负载平衡、对象实务、系统日志等。第二,数据加载模块:注册挖掘需要的数据,并在HDFS 文件系统内储存。第三,数据存储模块:可以并行加载、处理和存储大量的数据;在HDFS 系统导入其他外设的数据;而并行ETL 模块能够处理HDFS 中的原始数据;将处理后的数据存储到并行存储模块。第四,并行查询模块:并行查询海量数据以及处理用户的自定义事务等。第五,备份恢复模块:可以有效备份系统存储的数据。第六,模式评估模块:Hadoop 系统本身提供了HDFS,包括自动管理、运算环境以及MapReduce 运行模式。
集群的存储和计算都是靠Hadoop 框架来实现。Hadoop 同时涵盖并行运行模式和分布式文件系统,并有效管理分布式系统。任务提交的Server 在此基础之上实现[1]。
云服务WMCS 是在Hadoop 基础上形成的新一代数据分析和挖掘平台,是诸多Hadoop 的数据挖掘算法的集成,可以为诸多行业领域进行数据挖掘,尤其是在石油企业勘探开发中的应用效果尤为显著。从本质上讲,Hadoop 实际就是能够开展可靠且稳定的接口及数据服务有效平台,能够进行MAP/Reduce 运算,同时可以将文本分割成诸多单元,且是能够重复执行的单元。在平台的结构中,分布式存储数据库HBase、分布式文件系统HDFS 以及MAP/Reduce 算法,一直贯穿其中。通过这些数据结构和算法,平台海量数据的访问实现了高传输率,并且可以利用分流的形式访问文本数据。
通过分析云计算的存储技术、并行计算、分布式计算、虚拟技术等,充分考虑到油田勘探开发的数据存储业务特点,本文构建海量数据存储模式以Hadoop 为基础,如图1 所示。
图1 基于Hadoop 的油田勘探开发海量数据存储模型
在该模型中,HDFS 的工作是借助NameNode 和DataNodes 协同实现的,Master 的构成包括JobTracker和NameNode.MapReduce 的工作借助TaskTrackers 和JobTracker 协同实现。其作业流程为:服务控制集群SCC 接收用户的应用请求,并对用户的请求进行应答;存储节点集群SNC 则是数据资源存取的相关处理;其他计算机上的TaskTracker 的管理和调度由JobTracke 完成[3]。
针对油田勘探开发中会产生大量的数据的特征,本设计以Hadoop 框架为基础,编程模式为MapReduce,让油田数据存储模型的设计和应用变成现实。
3.2.1 系统结构设计
该系统是由油田系统管理层、用户层、油田数据存储层、油田基础设施层构成。用户层可以按照本身的业务特点,通过客户端在线向云储存系统发送请求,系统会根据平台的资源状况和客户的请求,利用相应的任务进行算法调度,向用户客户端反馈资源配置结果。系统管理层本质就是应用协同层,主要是进行底层数据与应用程序的连接,对用户的申请进行在线采集,同时把用户需要的结果数据传送到客户端。具体管理的内容包括目录管理、资源管理和用户管理等。Hadoo 集群的工作层等同于数据存储层,进行数据管理和资源任务的分配,以及合理应用虚拟计算、分布式计算等的有效指定数据额的物理位置以及数据存储,具体的技术成分有MapReduce 和HDFS。物理基础硬件是基础设施的核心部位,主要包括内存、交换机、服务器、磁盘、磁鼓、负载均衡、网关等全部的存储系统必不可少的硬件。
3.2.2 系统功能设计
油田勘探开发是众多业务和生产部门组成,不同部门使用的数据也不同。通过三大模块构成的系统为:平台管理、管理员管理、用户管理。该设计的优势是更利于资源和人员的管理。用户功能主要包括用户登录验证、地质文件、用户密码修改、查看文件目录、子用户的创建和控制、上传、下载和删除自己的油藏数据文件和地质文件等。管理员功能涵盖用户的删除和修改、目录文件的浏览、普通用户创建等。平台管理功能主要是管理和维护整个云计算平台,具体包括故障监控和预警、数据的备灾管理、服务器资源配置管理等。
3.3.1 布置环境
Hadoop 系统可以不限版本地实施应用,PC 机的数量是7 台,具体的工作角色为:集群的主节点(Master):171.118.1.1master。从节点(NameNodeSlave6):171.118.1.2-7slave。
3.3.2 集群部署步骤
第一步,将SSH 利用集群进行配置,以此可以无密码进行机器间的登录。第二步,在每台机器上安置JDK,以此配置Java 环境变量。第三步,进行Hadoop的配置安装。文件配置主要是hadoop env.sh 文件,有效设计JBAVA 与Hadoop-Home 的变量;配置mapred site.xml、hdfs site.xm、core site.xml 文件;配置slaves 以及masters 文件。第四步,将hadoop 的服务打开。第五步,通过eclipse6.0 软件搭建需要的开发环境。
3.3.3 主要模块的技术应用实现
该系统功能得以实现的主要模块:数据上传、数据下载和数据删除。最终的系统功能实现主要是利用调用Hadoop 的API 接口[4]。
利用统一的账号,技术人员实施登录后在云平台上调用专业的软件完成系统工作,利用接入的云端的方式可以随处访问,工作人员不再受机房和专业工作站的限制,可以随时随地进行日常操作和阶段汇报。通过大数据的应用,本研究有效打破了不同数据库间的数据孤岛现象,解决了低效率的数据查询、分析等问题。以6 个月内多口注入井产生的数据记载的分析为依据,从原有的5 min 数据查询时间缩短为3 s,真正实现了监测与分析的按日、月、季度、年进行,对应用状况和相关问题进行详细掌握。对日注液、自然递减?日注气、综合递减等指标进行分析,并合理预判生产趋势,以此可以对生产异常进行早发现早处理,如表1 所示。
表1 生产趋势预判分析
本文依托Hadoop 的云平台,构建了油田勘探开发数据存储模型,通过海量数据的高效处理,充分满足了油田企业在勘探开发中分析、处理、应用海量数据的需求,数据包括油藏建模的数据、地质建模数据以及地质开发数据,该模型的应用表现出三大优势。第一,极高的安全可靠性。系统可以在不同的服务器中保存多个副本形式的文件,确保了数据的完整性和安全性。第二,极快的数据处理速度。传输量不大,又具备MabReduce 的计算模式,大幅度提升了数据处理速度。第三,良好的拓展性。应用的并行计算模式,可以按照生产需要和用户的需求,进行集群模式和存储容量的及时扩展。