物联网系统实时数据与关系数据交互的技术研究与应用

2020-02-10 06:38吴军黄寅王金和邵妍婷杨磊
中国管理信息化 2020年1期
关键词:关系数据库

吴军 黄寅 王金和 邵妍婷 杨磊

[摘    要] 实时数据库和关系数据库是截然不同的两种数据库,随着信息化水平的不断进步,在实际的过程控制系统和信息管理系统中,往往将两种数据库结合使用。数据交换服务为不同数据库之间的互联互通提供加载、转换、传输和存储等功能。本文主要以采油二厂油气生产物联网系统数据建设为例,描述了2种数据交换服务的设计与实现过程,介绍了实时数据库与关系数据库相互通讯时用到的数据转换和存储的方法。

[关键词] 实时数据库;关系数据库;数据交换存储

doi : 10 . 3969 / j . issn . 1673 - 0194 . 2020. 01. 042

[中图分类号] F270.7;TP315    [文献标识码]  A      [文章编号]  1673 - 0194(2020)01- 0100- 03

1      引    言

物联网时代下的现代工业,其特性是要求生产全过程的实时监控,高速的实时数据处理,长期的历史数据存储以及生产信息的集成与共享。在工业生产过程中,自控技术已经普及,先进控制和计算机技术的结合,更好地解决了生产工艺日益复杂,控制质量要求越来越高的问题。在实际工业生产自动化控制过程中,大量数据处理,数据变化速度快,同时存在大量非结构化数据、半结构化数据。实时数据库的优点在于不需人工干预,可实时处理大量并发数据信息;关系数据库则非常简便地实现对象信息的定義和存储。基于生产管理需求和两种数据库的各自优势,产生了实时数据库与关系数据库的相互通讯、结合使用。

2      数据交换服务基本框架

2.1   数据交换服务概念

实时数据库是数据库技术结合实时处理技术产生的,适用于处理快速变化的数据及具有时间限制的事务;是开发实时控制系统、数据采集系统等的重要核心,具有很高的I/O吞吐量、高效数据压缩技术,可以实现实时、高效、可靠的数据存储和查询。实时数据库主要应用于工业自动化监控,存储着生产工艺过程采集到的海量数据。

数据交换服务,用于管理不同来源、不同属性的海量数据,提供快捷方便的服务。数据交换服务为不同数据库之间的互联互通提供了包含加载、转换、传输和存储等操作,有效解决数据及时、高效地上传下达,在安全、快捷进行数据交换的同时,保证数据的一致性和准确性,实现数据的一次采集、多次分析使用,为各种应用和决策支持提供良好的数据环境。

2.2   数据交换服务设计研究路线

基于采油二厂物联网系统建设,研究实时数据库与关系数据库的交换服务技术,研发了生产实时数据转日生产数据系统,主要采用实时库数据接口访问、数据读写、实时数据转存关系数据、数据入库、发布的研发流程路线,实现了实时数据提取、发布、与基于EPDM的油气水井生产数据管理系统(A2)系统、单井问题诊断、功图分析系统等各类生产应用和管理系统的共享应用。

系统采用Web Service与数据库交互,建立多层次、功能全面的平台。使用VS.NET中的C#作为主要开发工具,提高开发进度,增强系统兼容性及稳定性;充分利用数据库中现有的数据,建立相应的视图或同义词;对库中不存在的数据采用编写存储过程处理的方法,最大限度的提高系统的性能。采用B/S架构开发实现解决不同的问题,方便使用、扩展、定制各种模块。而这些模块可以不受任何开发工具或者开发模式限制,只要符合框架要求的接口定义就可以插入系统。

使用链表可以方便有层次地进行管理和扩展,链表中的每个结点包括数据域和指针域,其中数据域存储数据元素的信息,指针域中存储结点直接后继的存储位置。在数据交换服务中采用三层链表结构如图2所示,将连接connection作为第一级链表,每个连接下的表格table挂接到二级链表上,绑定bind则作为第三级链表。

3      数据交换服务的设计与实现

3.1   实时数据读取存储

实时数据采集主要通过编写实时数据库中间件接口,同步数据标签和同步实时数据两大功能,实现海量实时数据(200万+条/天,5 000万条左右/月),数据标签(10 881个)在10分钟内读取。通过额外功能对收集数据进行配置,可以方便地根据需求变化进行数据收集的灵活调整,节约处理时间和存储空间。系统实现了数据从实时库写入关系库,实现非结构化数据(多条记录形成1口井的完整信息)与结构化数据(1条记录为1口井完整信息)转换处理及同步实时库的数据标签列表和值到Oracle库。

3.2   实时数据转换关系数据

实时数据处理成关系数据,主要是将从实时数据库读出来数据,存入关系数据库之前先把数据转换成变体类型,再将变体类型存入关系数据库。存入关系数据库的数据类型和从数据库取出的变体类型是有确定的对应关系的。通过RealTimeExtractionData接口,按设计时间,同步完数据之后,添加处理逻辑调用处理过程,处理数据。通过代码控制,更加灵活且实效性好,速度快;异常控制更强大。系统实现自动和手动生成关系数据日报2种方式。

3.3   关系数据转换实时数据

从关系数据库取出变体类型的数据,进行数据类型转换,再存入实时数据库。在类型转换时,同样需要进行严格的类型匹配检查以及合法转换的数值范围检查。Int的数据范围是-32 768~32 767,unsigned int的数据范围是0~65 535。因此当需要转换的数值处于[-32 768,0)时,服务会报错提示转换非法。

数据类型转换的分支很多,分支总个数是实时数据库数据类型的个数与关系数据库数据类型个数的笛卡尔积,而在每个分支中的类型匹配检查个数以及合法转换数值范围检查个数则更为庞大,十分复杂。

4      结    语

数据交换服务是物联网系统技术发展的一个重要组成部分,它快速准确地提供实时数据库和关系数据库之间数据的加载、转换、传输和存储服务,建立高效稳定的实时库数据提取和关系库数据同步机制,在解决数据共享、数据资源整合、发掘数据资源的潜在价值上发挥着重要作用,满足不同业务的协同需求。

主要参考文献

[1]李亮举,刘孟祎.实时数据库与关系数据库数据交换服务的设计与实现[J].自动化博览,2013(4).

猜你喜欢
关系数据库
关系数据库在高炉数据采集系统中的应用
关系数据库技术在计算机网络设计中的应用
XML与关系数据库之间的转换
关系数据库与非关系数据库
实体的动态属性在数据库设计中的解决方案
计算机网络设计中关系数据库技术的应用
掌游西塘APP设计与实现
探讨关系数据库设计中范式理论的教学方法
基于索引结构的关系数据库关键词检索
一种基于数据图划分的关系数据库关键词检索方法