本站小编为你精心准备了成果与水利工程数据库对接技术探讨参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。
摘要:如何更好利用水利普查数据,并与现有水利数据进行整合,一直是水利数据库建设中的难点,数据来源、结果不一致导致数据整合效率不高,无法对现有水利普查数据进行有效利用。文章提出一种水利普查成果与辽宁省水利工程数据库对接技术,实现水利普查基础数据与辽宁省水利工程数据库的无缝整合,有效提高辽宁省水利工程数据库的完整性、时效性,同时避免了大量数据处理中人工处理质量差、合格率低、效率慢的缺点,对已建水利信息管理系统进行大量数据更新整合具有一定的借鉴价值。
关键词:水利普查;数据库对接技术;数据整合;辽宁省
辽宁省水利工程数据库是辽宁省水利信息化建设中最重要的内容之一,包括辽宁省绝大多数水利工程信息如河道、水库、控制站、堤防、海堤、水闸、跨河工程、城市防洪、险点险段、农村水利等,是辽宁省水利工程数据的基础,为全省所有水利部门服务。《辽宁省第一次水利普查公报》的标志着水利普查工作任务完成,水利普查取得的成果具有涵盖信息广、涉及水利业务全、数据可靠规范等特点[1]。此次普查获取了海量的水利信息数据,这些数据成果是迄今为止最全面、完整、规范及权威的水利基础数据。如何有效利用转化这些水利基础数据,将普查的水利信息数据转化整合到辽宁省水利工程数据库,丰富并统一辽宁省的水利基础信息,保证辽宁省水利工程数据库数据的完整性、准确性和时效性是十分必要的。水利普查数据与辽宁省水利工程数据库对接技术实现水利普查数据在辽宁省水利工程数据库方面的转化应用。为了完善辽宁省水利工程数据库,保持与水利普查数据同步、一致,需要将水利普查获取的海量数据整合到辽宁省水利工程数据库中。如果采用人工手动录入数据,工作量繁重,费时、费力,而且质量差、合格率低、效率慢;而利用计算机技术实现水利普查成果与辽宁省水利工程数据库自动对接,既可以避免人工录入的弊端,又可缩短处理时间,达到高效、简洁地完成数据整合。
1对接技术
ADO.NET是ADO(ActiveXDataObjects)最新发展的产物,是微软.NET框架的一部分,成功实现了在“断开”的概念下对服务器上数据库的访问[4-5]。ADO.NET由.NET数据提供程序和DataSet(数据集)两部分组成,.NET数据提供服务负责与物理数据源的连接以及检索、操作、更新数据源,DataSet负责实现独立于任何数据源的数据访问。ADO.NET对象模型如图1所示。SqlDataAdapter对象是DataSet与SQLSERVER之间的桥接器。Sql-DataAdapter通过对数据源使用适当的Transact-SQL语句填充DataSet中的数据以匹配数据源中的数据和更改数据源中的数据以匹配DataSet中的数据来提供这一桥接。SqlCommand类是用于对数据库进行操作的类,利用此类可以对SQLSERVER数据库进行插入、修改、删除等操作。
2对接技术实现过程
2.1分析比对
分析比对是分析水利普查数据与辽宁省水利工程数据库数据之间的对应关系,是实现对接技术的基础。通过充分分析辽宁省水利工程数据库库表结构、各表及表中指标字段的意义和水利普查数据,找出辽宁省水利工程数据库库表字段与水利普查数据相对应的字段,建立两者之间的对应关系,以利于两者进行数据整合。水利普查对象为中华人民共和国(台湾省、香港和澳门特别行政区除外)境内所有江河湖泊、水利工程、水利机构及重点社会经济取用水户等,共33类水利普查对象[6]。辽宁省水利工程数据库包括河道、水库、水闸等类工程。水利普查数据一类工程信息由一张数据表表示,辽宁省水利工程数据库一类工程信息由一张或多张数据表表示。经分析比对,水利普查数据有8类工程与辽宁省水利工程数据库6类工程相对应,共涉及辽宁省水利工程数据库中包括河道、水库、堤防、海堤、水闸、农村水利6类工程张数据表,个数据字段,构成了一对多或多对一的关系,对应关系图如图1所示。以水电站普查表与水库对应关系为例,辽宁省水利工程数据库与水利普查数据表字段对应见表1。其中需要注意辽宁省水利工程数据库的总装机容量单位是兆瓦,水利普查数据表的装机容量单位是千瓦,对接时需要转换单位。
2.2读取水利普查数据
运用MicrosoftSQLSERVER5软件构建水利普查成果数据库,每个工程类别对应一张数据表。因为水利普查数据对象编码方式与辽宁省水利工程数据库对象编码方式不同,需要建立水利普查与水利工程数据库对象编码对照表,利用SqlDataAdapt-er对象读取编码对照表中对象的水利普查数据,填充到不依赖于数据库的独立数据集合DataSet,将DataSet中的数据表DataTable绑定到数据网格控件DataGridView实现水利普查数据读取。
2.3整合数据
分析比对水利普查数据与辽宁省水利工程数据库数据将存在两种情况:一种是水利普查数据中的工程对象不存在于辽宁省水利工程数据库中,另一种是水利普查数据中的工程对象已存在于水利工程数据库中。针对上述两种情况,数据整合方式有两种,一种是针对辽宁省水利工程数据库中没有的工程,对于这类工程,按照辽宁省水利工程数据库中库表字段选取对应于普查数据的字段,将该普查数据直接导入辽宁省水利工程数据库,另一种是针对辽宁省水利工程数据库中已存在的工程,对于这类工程,根据水利普查与辽宁省水利工程数据库对象编码对照表进行更新,更新思路是将这类工程最后一次修改的内容复制,更新对应字段的水利普查数据,将复制并更新了普查数据的记录作为最新的记录导入辽宁省水利工程数据库。对于两种整合方式,每张数据表均通过资料截止日期字段记录整合时间,作为水利普查成果整合的标识,利于整合出现错误后及时方便地处理。整合的实现是通过逐行读取数据网格控件DataGrid-View中的数据行DataRow,然后利用SqlCommand对象逐行插入或更新到辽宁省水利工程数据库。
3数据对接匹配度检测结果
实现水利普查数据与辽宁省水利工程数据库对接后,需要对整合后的辽宁省水利工程数据库进行数据匹配检测,确保整合后的数据质量。根据水利普查数据字段与辽宁省水利工程数据库字段的对比分析结果,针对工程名称以及相应的指标字段,结合第一次全国水利普查数据处理上报系统,针对本文方法和传统数据对接方法分别采用查全率和查准率对整合数据的正确性、完整性进行序列匹配度的检测,并采用聚类分析、协议分析以及信任值分析方法对比两种方法数据匹配的优越性,分析结果见表2。从匹配测试结果可看出,本文提出的水利普查数据与水利工程数据库对接及时经过序列匹配度测试,数据序列匹配度的查全率和查准率均高于5%,且明显高于传统逐一数据库字段对应方式下的序列匹配度。从聚类分析、协议分析、信任值分析下的数据序列查全率和查准率来看,本文的方法都要明显好于传统方法,优越程度高于传统数据库对接技术。相比于传统对应数据库字段的方式,本文提出的水利普查与辽宁省水利工程数据库对接方法可避免人工处理数据的弊端,减少工作量,提高工作效率。
4结论
(1)水利普查与水利工程数据库对接指标由于编制时间、用途以及参与专家有所差异,在进行数据库对接名录分析时,对于同一个工程对象属性表述可能存在不一致的情况。对于这类情况建议在对接目录分析时,需要对应指标参考解释说明采用人工判定方式进行指标对应。
(2)在进行数据库指标关联对接,对接指标只需要和主关键工程代码进行关联对接时,该指标适用于所有的关联对象,而对接指标除和主关键工程代码关联外,和其他指标进行主关键关联时,这类指标不能进行数据对接。
(3)本文提出的数据库对接技术对于已建信息管理系统与水利普查成果数据进行整合以及大数据量更新有一定的推广和借鉴价值,但与其他水利数据对接的适用性和序列匹配程度还需要进一步探讨。
作者:雷明 单位:辽宁省水利水电科学研究院有限责任公司沈阳分公司