任静思
(中国石油西南油气田公司勘探与生产数据中心)
生产数据校验加载方法研究与实践
任静思
(中国石油西南油气田公司勘探与生产数据中心)
对于海量生产数据的校验与加载,由于数据量庞大和获取数据的途径不同,其内容、格式、质量参差不齐,经常会遇到数据格式不能转换或格式转换后信息丢失等棘手问题,并且数据质量难以控制,人工校验费时、费力且准确率低。故以西南油气田A2系统历史数据加载为实例,研讨数据校验加载流程,阐述如何开发数据质控平台,并利用该平台和数据内在的逻辑规则,对生产数据进行高效准确的校验和加载。图12表3参2
数据校验 数据加载 质控平台 SSIS迁移工具 MSChart图形控件
油气水井生产数据管理系统(简称A2系统),是中石油信息技术总体规划中的一个重要项目,主要以油气生产动态和管理数据为核心,集开发生产管理信息采集、传输、存储、处理、分析、发布、管理和应用于一体的油田生产管理信息应用系统。
自A2系统2007年在西南油气田正式上线运行以来,2000年后的油气生产数据都已经实现完整纳入A2系统管理,新增数据也都实现动态正常化入库管理,但是2000年前的历史数据未能加载入库,严重阻碍了数据库的应用深度和使用范围,尤其是近年来大力开展老气田稳产和挖潜等综合研究工作,更是需要使用完整的生产数据进行产量综合递减分析、开发调整方案编制。因此,在A2数据库中加载西南油气田公司2000年前的所有油气生产数据,实现数据的完整化管理十分重要。
对石油行业而言,衡量生产数据正确性的重要指标包括:数据的唯一性、完整性、连续性、继承性和准确性。对于海量数据加载而言,由于数据量庞大和获取数据的途径不同,数据质量参差不齐,经常会遇到数据格式不能转换或格式转换后信息丢失等棘手问题,且人工校验费时、费力、准确率低。因此加载前数据校验的方法和步骤是数据加载的重点和难点。
1.1 开发数据质控平台
为高效准确地校验加载生产数据,可将开发数据质控平台作为数据校验加载的辅助工具。数据质控平台具有两大功能:数据迁移功能和数据图形展示功能。
(1)数据质控平台数据迁移功能的开发
根据实际业务和数据情况,采用了Microsoft公司的SSIS作为数据迁移工具,并利用.Net开发程序进行整合,实现数据质量控制。SSIS是Microsoft公司推出的一个流程化、可视化的ETL工具,可以和Studio开发程序完全融合,最大化满足各类系统的资源整合与服务重用的需求(图1、图2)。
图1 数据迁移之数据加载流程图
(2)数据质控平台数据图形展示的开发
采用微软MS chart图形控件开发校验工具,直观地对数据进行图形展示(图3)。
1.2 设计数据校验加载总体架构
利用质控平台对生产单位提交的数据进行校验、校验完毕后加载到临时应用数据库的临时表中。通过对临时应用数据库的基础信息进行校验、汇总,利用质控平台加载进临时应用数据库的正式表,数据准确无误后再统一加进A2主库,通过TWS平台进行查询、应用(图4)。
图2 数据迁移之基本信息校验流程图
图3 数据图形展示图
图4 数据校验加载总体架构示意图
虽然是同一套数据,临时数据库中的临时表与生产单位提交的数据结构一致,而临时数据库的正式表与A2系统的数据结构是一致的。
1.3 制定数据校验加载流程
对产量数据而言,及时性、完整性、唯一性、连续性、继承性、准确性十分重要。在历史数据的加载过程中,必须对数据的完整性、唯一性、连续性、继承性、准确性进行校验,才能确保数据的入库质量(图5)。
图5 数据校验加载流程图
其中应包括的校验工作有:
(1)基础信息完整性校验:井、气藏、气田的基本信息在A2系统中是否存在;
(2)数据完整性校验:井号、气藏、气田、气矿、生产年月是否填写完整;
(3)数据唯一性校验:同一口井、同一个层位某月是否存在冗余数据;
(4)数据连续性校验:单井的生产数据是否连续;
(5)数据继承性校验:单井某个层位封闭报废后产量是否继承截至当前;
(6)数据准确性校验:生产数据在逻辑上是有规则的,加载的数据是否符合规则。
1.4 设定加载校验步骤
(1)对接收数据进行初步审核及数据格式规范化整理
在收集的数据中,最主要的数据问题是年月项的不规范性,有些使用的是数值型,有些使用的是日期型,有些使用的是文本型,导致数据入库后,部分年月项数据丢失。
此步骤主要是规范生产单位提交数据的年月数据项。采用Access、excel、UltraEdit与记事本相结合的方式对数据进行手动修改。
(2)利用质控平台对数据进行高效自动加载,并反复校验
将整理好的气井历史数据放在对应文件路径下,利用质控平台执行图6所示步骤,将原始数据加载进临时数据库的临时表,对重复数据以及不完整数据则返回数据源单位进行修改后再重新整理加载。
食品安全管理对企业食品管理工作的影响。在日常生活中,一些菜市场及超市的食品安全、卫生问题日益严峻,给企业的综合竞争力造成较大影响,同时还有可能影响企业的食品安全性,因此,应该创建科学有效的食品安全管理系统和食品安全信用系统,进一步提升企业的市场竞争力,进一步推动我国食品监管工作的革新。
(3)利用质控平台对基本信息进行校验,确保和A2系统保持一致
图6 临时表气井原始数据加载校验流程图
图7 正式表气井原始数据加载校验流程图
图8 不连续井的生产数据展示图
原始数据加载进临时表后,执行图7所示步骤,将临时表的数据与A2主库里面的基础信息进行匹配并连接查询,基础信息不为空的数据将加栽进临时数据库的正式表里,此正式表的结构与A2主库里面的表结构是一致的。对基础信息为空的数据进行相应的修改后再重复执行图7的步骤。
1.5 利用质控平台对数据进行连续性、继承性校验
(1)数据连续性校验
通过函数MONTHS_BETWEEN统计出单井的理论连续月份条数,和库中存在的单井实际月份条数做对比。理论连续月份条数和实际月份条数有如下规则:
理论连续月份统计=实际月份统计
若实际月份条数小于理论连续月份条数,说明该井数据存在不连续的情况,将这口井的生产数据通过质控平台图形展示出来,把产量为0的月份提取出来,反馈给数据源单位审核(表1、图8)。表1理论连续月份条数和实际月份条数统计表
表1 理论连续月份条数和实际月份条数统计表
表2 查找单井最大月份
(2)数据继承性校验
通过函数MAX查询单井最大月份是否等于当前月份。若未继承到当前,则通过人工手动补齐(表2)。
1.6 利用数据逻辑规则对数据进行准确性校验
对接收数据进行上述校验加载后,为了保证数据正确性,进一步利用生产数据的逻辑规则对数据进行准确性校验。数据算法规则如下:
·当月累产=上月累产+当月月产;
·一月年产=一月月产;
·当月年产=上月年产+当月月产(一月除外)。
对不符合算法规则的异常数据利用质控平台展示出来,并反馈给生产单位核查(图9图10)。
图9 西南油气田1980年01月至1999年12月总井数曲线
图10 西南油气田1970年01月至1999年12月累积产水量曲线
2.1 质控平台的开发成果
(1)利用SSIS数据迁移工具,完成数据质控平台对气井、气藏、气田、气矿4级数据的加载及校验的开发、测试;
(2)利用MSChart图形控件,完成数据质控平台对图形展示的开发、测试。
2.2 生产数据校验加载效果
通过上述生产数据的校验加载方法,完成了A2系统生产数据的校验和加载,取得良好效果(表3):
对生产数据校验加载而言,制定一套行之有效的校验加载方法,并开发数据质控平台显得尤为重要。通过质控平台的使用,实现了数据校验、加载的可视化及流程化,极大地提高了数据校验、加载的效率,实现了数据快速、批量、准确加载。
通过对A2系统生产数据校验加载的初步应用实践,取得了显著成效,证明了利用生产数据校验加载方法和质控平台技术手段开展数据加载工作,比人工校验更高效、准确且更切实可行。推而广之,这套数据校验加载方法和质控工具将为今后类似的数据加载工作提供技术保障。
表3 生产数据校验加载效果表
1 胡百敬.SQL Server 2008 SSIS整合服务[M].台湾:悦知文化出版社,2008.
2 朱健.MSChart在气象数据图形化显示中的应用[J].浙江气象,2009,(1):24-27.
(修改回稿日期 2013-07-18 编辑 陈玲)
任静思,男,1981年出生,工程师;2004年毕业于成都信息工程学院计算机科学与技术专业,近几年主要致力于A2运维工作。地址:(610041)四川省成都市天府大道北段12号石油科技大厦1409室。电话:(028)86015102。E-mail:renjingsi@petrochina.com.cn