面向海上平台机械电气设备的数据共享平台的设计与实现
2016-05-18武鹏李文倚庞长才刘小白
武鹏++李文倚++庞长才++刘小白
摘要:基于.NET平台,应用Spread组件进行二次开发,结合数据库技术设计并实现了面向海上平台机械电气设备的数据共享平台。该数据共享平台实现了批量数据采集、数据协同共享和综合查询计算比选功能,有效解决了平台机械电气设备相关数据难以汇总、集成、共享和计算比选的问题。
关键词:海上平台;机械电气;批量采集;数据共享
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)09-0029-02
1 背景
海洋石油领域在多年积累的基础上逐步形成了建立在各类设计数据之上的海上平台机械电气设备的设计理念与方法。但随着海洋石油事业的快速发展,已建和在建海上生产平台快速增加,海上平台机械电气设备的设计和管理逐渐面临一些新的挑战,主要表现为:1)海上平台机械电气设备数据还未能有效汇总,导致相关设计人员在实际工作中不能快速地利用积累的设计数据;2)各类设备参数、设计数据、成熟的设计成果无法及时共享和比选;3)难以快速有序地开展前期研究电气相关计算工作。目前面向海上平台机械电气设备的数据共享还缺乏成熟的解决方案与应用。
为了解决上述问题,为海上平台机械电气设备标准化设计提供数据与信息支持,提升专业设计人员的业务能力和技术水平,提高工作质量和工作效率。有必要建立数据共享平台以完成平台机械设备参数、电气设备信息数据和设计资料的收集整理工作[1],并掌握各类型各阶段设备参数的变化情况,实现数据的综合检索查阅及设备比选,规范常用电气计算方法。
本文面向海上平台机械电气设备设计领域,基于.NET平台,应用Spread组件进行二次开发,结合数据库技术,实现了批量数据采集、数据协同共享和综合查询计算比选功能,形成了面向海上平台机械电气设备的数据共享平台,解决了实际问题。
2 数据共享平台总体逻辑结构
数据共享平台总体逻辑结构如下图1所示:
主要包含三个部分:数据采集接口、数据管理系统和综合查询计算比选系统。其中数据采集接口完成平台机械电气设备数据的批量采集,包括五个构件:1)数据有效性检查器:对数据进行有效性检查;2)数据转换器:将不同类型的数据依据不同管理需求转换成满足条件的待存储的数据;3)数据预览器:对待存储的数据进行在线预览;4)内置计算器:对数据进行简单的处理和计算;5)数据转储器:实现数据的批量存储。其中数据管理系统对平台机械电气设备数据进行管理,包括三个组成部分:1)数据访问权限控制器:对所有数据按权限进行存取等访问控制;2)基本信息管理:主要对油气田、平台和水下井口三类数据对象的基本信息进行管理,形成分层分类型的管理方式;3)具体数据对象管理:包括平台和水下井口两大类相关若干小类的数据管理。数据管理实现了不同数据访问主体对相应数据对象的在线查看、编辑、导出、下载等操作,形成数据共享和协同工作模式。其中综合查询计算比选系统从数据管理系统中抽取数据,按需查询满足条件的设计方案并进行相关数据的计算和比选,包括六个组成部分:1)数据抽取器:从数据管理系统中提取数据;2)数据检查器:对从数据管理系统中提取的数据进行有效性检查;3)结果显示器:根据不同的显示需要组织数据进行显示;4)数据处理器:对数据进行标准化处理;5)计算统计器:对数据进行计算和统计;6)比选器:对满足一定条件的设计数据进行对比以供选择。
3 数据共享平台的设计与实现
本文设计实现了面向平台机械电气设备的数据共享平台,整个平台采用B/S架构[2]。数据采集接口对于结构化数据和非结构化数据分别使用了ADO.NET和基于FTP协议的ActiveX技术。结构化数据通过Spread for Web Forms组件技术,以类似Excel电子表格的形式实现数据的多sheet批量导入。非结构化数据以文件系统的形式通过FTP进行物理存储,同时以油气田ID、平台ID、水下井口ID为辨识与相应存储于数据库表的结构化数据进行映射。数据采集接口功能主要由PlatformSubseaWellheadDataImport类来实现,部分类方法如下图2所示:
数据管理系统的实现基于经典的三层Web架构[3]:表现层、业务逻辑层和数据访问层。本文分别对基本信息和具体数据对象进行逐项分解,进行了数据库逻辑设计与物理设计形成了相应数据库表。其中基本信息管理是整个数据管理的基础,主要涉及如下数据库表:油气田基本信息表[RgisterFields]、海上平台基本信息表[RegisterPlatform]、水下井口基本信息[RegisterSubseaWellhead]。其中油气田基本信息表与海上平台基本信息表、水下井口基本信息表构成主外键关系,海上平台和水下井口基本信息表又与各类具体数据对象表构成主外键关系。部分数据库表关系如下图3所示:
基本信息维护界面和相关后台逻辑主要由RegisterFieldsInfo、RegisterPlatform、RegisterSubseaWellhead类实现,数据管理系统中使用Microsoft SQL Server的PIVOT 关系运算符将表达式某一列中的唯一值转换为输出中的多个列来旋转表值表达式变为新的表,通过灵活使用数据库表行列转换技术,实现数据表按行存储按列显示,即表现层数据绑定使用了经过行列转换后的结构,即记录变成了字段。如果客户端需要新增分类显示,只需要在数据表中生成一条新的数据记录,客户端将自动显示新增分类列,即将字段的处理转换成记录的处理,不需要修改数据库表的设计结构,有效地提高了数据管理模块的可扩展性和灵活性。表现层的实现使用了Spread for Web Forms组件技术,对其进行二次开发,结合ADO.NET与数据源进行交互,实现了数据的批量操作、多sheet模式、单元格精确控制等。
综合查询计算比选系统的实现主要是实现数据提取器、数据检查器、结果显示器的过程。核心功能包括:数据处理、计算统计和比选,在命名空间QueryStatistic中分别进行实现,例如结果显示器类ArchiveCommonShow部分方法如下图4所示:
总体上数据共享平台实现了三大功能,分别是数据采集接口、数据管理功能、综合查询计算比选功能,为数据汇总、集成、共享、处理和应用提供了全套解决方案。
4 应用案例
截至目前已通过本系统分别采集了67个平台和水下井口29类平台机械电气设备数据,某平台数据管理界面示例如下图5所示:
设计人员通过数据管理界面对各类数据进行批量处理和
管理,还可以直接链接定位到对应文件系统形式存在的设计资料,例如.dwg设计图,实现平台机械电气设备数据Web形式的共享和统一管理。
5 结束语
本文设计并实现了面向海上平台机械电气设备的数据集成接口,数据管理系统和综合查询计算比选系统,构成了数据共享平台,可以有效汇总相关数据,实现数据共享,为全面快速统一使用平台机械电气设备数据提供支持,便于设计人员对同类设计情况进行对标分析,提升设计工作的合理性和便捷性,提高工作效率与质量。在下一步工作中,可以进一步引入非关系型数据库或者结合大数据技术支持多层次、灵活的数据分析功能[4]。
参考文献:
[1] 史伟. 信息化技术在机械电气设备管理的应用[J]. 机械管理开发, 2015, 30(6): 101-103.
[2] 孟小峰. Web数据管理研究综述[J]. 计算机研究与发展, 2001, 38(4): 385-395.
[3] 王晖, 彭智勇, 李蓉蓉, 等. Web数据管理研究进展[J]. 小型微型计算机系统, 2011, 32(1): 1-8.
[4] 覃雄派, 王会举, 李芙蓉, 等. 数据管理技术的新格局[J]. 软件学报, 2013(2): 175-197.