电力ERP系统基于X86架构的分布式数据库技术研究

时间:2021-06-06 14:51:05 浏览量:

吴斗 蒋何 金鑫 李海

摘要:本文首先阐述了电力ERP分布式分布式数据库的基本结构和特性,对于其分布机制以及特点进行了分析,在此基础上阐述了分布式分布式数据库关键技术等相关内容以及具体应用情况,希望能够对相关专业人士有所帮助。

关键词:电力ERP系统;X86架构;分布式数据库;IB网络

1 引言

虽然多年的发展出现了很多新型能源,但是电力能源还是最主要的能源之一。随着信息技术的快速发展,电力系统的自动化水平有了飞速发展,特别是电力企业资源管理系统(以下简称“ERP”)对于确保电力系统运行的安全稳定性具有越来越重要的作用。对于电力系统来说,为了更好的满足用户需求就要建立起更为先进的系统,在其中融入分布式数据库技术已经成为关鍵内容之一。分布式数据库作为数据库技术的关键分支之一有了多年发展,特别是近些年Infiniband(以下简称“IB”)网络技术发展为分布式数据库技术提供了有效支撑,将其应用到电力系统中能够满足现代工程的需要,具有非常实用的价值。

2 分布式数据库的特点介绍

2.1 传统关系型数据库特点

对于电力ERP系统数据库来说,不但要满足数据库的基础要求,同时也要满足一体化系统(SCADA/EMSIDTS)应用要求。其具有如下特点:

(1)可以快速进行数据访问,符合实时性要求,并且能够实现数据恢复以及重载;

(2)符合电力系统网络分析要求,能够保证数据的实时性,并且可以实现数据的分布式存储以及访问;

(3)能够实现多个项目数据库并存运行,不同数据库之间可以实现便捷的数据切换,以此来提升项目管理效率;

(4)能够实现数据库镜象功能,可以实现不同应用之间的数据切换,同时数据库之间的接口采用标准形式,能够保证数据的安全性:

(5)具有较好的开放性,可以实现不同系统数据之间的交换和共享。

2.2 分布式数据库特点

分布式数据库系统并非只是将集中数据库实现分散,其主要包括两方面内容,一方面为存储要具有分散性,就是指要将数据库中数据信息存储在不同计算机设备当中,另一方面数据要具有整体性,就是指存储在每一个计算机当中的数据在逻辑方面要具有较强的关联性,要构建成整体。总的来说其具有如下几方面特点:

(1)其采取的是自治和集中结合的控制结构,对于分布式数据库来说,其最主要的内容就是数据的重复以及合理分配;

(2)分布式分布式数据库要具有整体性,同时要具有可串行性,并且能够有效恢复;

(3) 一定程度上提升数据的冗余度,就是指为了确保数据的安全性,在分布式数据库系统中要设定相应的数据冗余,需要在不同区域存储数据的不同副本;

(4)具有透明性,用户无需注意数据物理位置分布以及逻辑分片情况。

现阶段有关分布式数据库技术方面的研究更多关注的是服务器技术内容,分布式数据库采取的是多X86服务器模式,不同数据存储在不同服务器当中,不同客户能够对多个数据库数据实时共享,并且不同服务器之间能够协同工作,可以实现数据的透明性访问。

2.3 IB网络技术特点

IB是一种计算机网络连接标准,主要用于节点间需要有大量数据传输需求的HPC高性能计算,随着技术发展和新业务场景出现,使用领域变得越来越广泛。整个IB网络由主机上的HCA (HostChannel Adapter)卡,IB交换机和IB线缆组成,IB网络能够保证在低延时情况( 200ns)通过4倍聚合通道(4X aggregate links)的单个物理接口支持最高lOOGb的带宽。

IB网络相比较于传统的光纤传输技术,具有高带宽、低延迟的优势,与以太网及光纤网络的技术参数对比如表1。

IB技术与以太网万兆技术的对比说明:

(1)主流设备性能对比。目前IB交换机主流为100G产品,100G已经推出并且进入市场;以太网络目前依然以10G为主。

(2)性价比。目前每GB的的费用IB的综合成本为以太网络的一半,25G、100G以太网络价格很高,大规模商用成本很高,IB的100G商用市场价格成熟。

(3)性能。TCP的性能开销远高于IB的RDMA开销。

(4)通用性。以太的兼容性非常好,适用场景广泛,目前以太网络也能支持RoCE(RDMA over以太)但是支持的设备非常少,支持的软件就更少了,成熟度也不高。

3 电力ERP分布式数据库结构设计构

分布式分布式数据库系统融合了实时、分布式数据库的优势,以内存数据库为基础满足网络情况下控制系统的实时性要求,能够推动电力系统的进一步发展和应用。以此理念为基础并最大程度利用Infiniband网络系统带宽,能够实现负载之间的均衡以及双机备用,其中较为典型的ERP系统运行结构如图1所示。

从图1能够得知ERP系统中存在着多种类型的服务器,不同应用服务器中都设置有差异化的内存数据库以及服务进程,并且不同类型服务器之间也可以实时进行数据的共享和交换,以此来确保数据的同步性以及一致性。在充分考虑电力系统运行数据访问要求的基础上可以将数据氛围“动态数据”、“静态数据”、“统计计算数据”等类型,对于这些不同类型数据来说需要采取“提取频繁访问动态数据”以及“计算数据和部分必要静态属性信息”等数据存储要求。

在分布式数据库系统组织结构设计过程中,为了确保实现数据共享可以采用现行操作系统所具有的共享内存机制,在初始化过程中就可以将整个内存数据库映像文件载入到共享内存区当中,在实际运行时将完整的数据库或者其中某一部分映射到相应的虚拟地址空间中来进行访问。可以通过指针的方式来应对关系以及索引数据存储在内存中的情况,在实际应用时利用指针或者数据库偏移量访问数据来快速实现。因为指针具有固定的长度,所以能够有效处理变长字段方面的问题。除此之外,如果数据库中多次出现较大的数据对象,那么只要在内存中存储以此即可,其他的地方就可以利用指针对其进行引用。

分布式分布式数据库结构主要包括“数据库模式信息区”、“数据段索引区”、“数据段信息区”以及“数据区”等相互独立的共享内存区,一般情况下数据段信息区和数据区都是共同应用的,能够对电力系统数据库中不同数据关系进行映射。另外,对于某些较为常用的数据表来说,可以增设一个内存区域,可以通过哈希函数直接查询到对应的数据记录,从而提升访问速度。对于数据区当中的每一个属性来说,都是通过数据结构来指定的,所以为了进一步提升访问速度可以将某些常用信息实时冗余配置。同时,电力系统中某些应用软件会通过连续内存实施数据处理,能够进一步增强系统实时性,所以在镜像内存映像过程中,每个关系表数据空间都要实施连续内存分配。分布式数据库系统内存组织结构如图2所示。

4 分布式数据库机制的实现

4.1 分布式数据库的部署设计

通过部署计算节点和存储节点的硬件分布设置,从ERP系统运行结构图中能够得知,关键服务节点都采取的是多副本的模式,这样能够确保内存数据库的实时复制备份,并且也可以实现负载之间的均衡性。例如对于三台计算节点来说,正常运行过程中每个服务器都负责直属下级网络采集终端(RTU)数据报文传输以及解析,能够实现数据流以及访问服务均衡负载。一旦某些服务器出现故障,另外的服务器就会立即接管服务而保证无缝连接。故障服务器恢复之后每个服务器重新回到正常状态,实现网络和访问的均衡性处理。

内存数据库文件分布式设置。通过内存结构示意图能够得知,电力ERP系统具有前置数据采集通信服务、SCADA服务、PAS应用服务和DTS应用服务等多个关键的数据处理服务。每种类型的服务模式对于数据的要求也有所差异,因此需要按照部署服务节点的差异而形成不同内存数据库映像文件,在对数据映像进行访问过程中分别实时加载就可以对数据进行访问。

对于分布式数据库来说,可以根据客户/服务器模式进行建设,对于分布式数据库来说,整个数据库内只有一个节点数据库作为参考,而其他节点数据库参照此节点实现数据的统一性,所以将设置在主机上的内存数据称之为参考库,而将设置在备用机上的内存数据称之为复制库。

4.2 实现分布部署的关键技术分析

数据库自动复制技术(DAR)分析,通过有效的数据库自动复制技术能够实现以上所述“参考库”以及“复制库”之间数据的统一性。按照数据更新的差异,数据库自动复制技术可以实现数据更新以及下载等方面的内容。数据库自动复制技术总的来说可以分成三种技术类型:

(1)非优化更新/下载技术。此技术主要应用在数据库规模相对较小的情况下,并不适合规模较大且完全下载持续时间的数据库,尤其是在数据库只是某些部分需要修改,而复制库节点请求下载的情况下;

(2)基本更新/下载技术。此技术能够选择性的进行复制库请求以及出现变化表的下载,利用mod count字段进行表的修改计数,在实际运行中若是数据库更新器对于表实施修改,那么modcount字段就会自动增加并且此字段新值被传播给全部复制数据库,这样全部数据库能够得到及时更新。若是所复制数据库需要主动下载,那么其会先向参数数据库下载服务器发送mod count,在满足条件的情况下下载相应表。

(3)增强更新/下载技术。此技术可以实现和复制库请求表中被修改记录的下载,为了能够实现对修改的检测,此技术要设置更改计数表来放置基本表项的更改次数。但是在实施时具有额外的内存开销,所以此技术比较适合用在更改基本项的超大表中。

4.3 心跳报文广播服务

虽然多机具有同样的优先级,但是在多机设置时会在某一时间点存在一台作为主机服务,其他的作为备机。先要按照服务进程配置参数设定某台当做主服务器,提供其相对较高的优先级,而其他机器的服务级别相对较低。那么先要通过最高级别的服务器作为主机进行使用,主机和备机利用广播的心跳报文确保通信的同步以及服务的监控和切换。

心跳报文广播具有比较高的效率,主要通过UDP协议进行通信,更适合应用在网络拓扑结构未知的情况下,但是其可靠性相对较低,若是系统发生连续性报文广播,那么其报文丢失率接近1/5。通过对以往具体情况分析得知,报文丢失更多出现在接收端,造成此问题的主要原因在于网卡中断的处理效率相对较低,接收线程无法对连续报文进行处理,从而造成接收报文队列溢出的问题。为了能够有效提升其可靠性,可以对小报文进行缓存合并,每个报文发送之间采取一定间歇及采取双收策略,实际应用表明这样可基本消除报文丢失现象。

5 结束语

本文主要对电力ERP系统分布式数据库特点和设计难点进行了分析,同时对于分布式数据库的关键性计数实施了较为详尽的阐述。通过分布式数据库技术的应用能够有效增加系统开发的效率、降低开发费用,具有非常使用的应用价值,对于进一步推动电力系统发展具有现实意义。

以某省公司电力ERP系统经过分布式改造为例,在ERP系统资产余额查询、人资普查报表、合同信息查询、项目采购清单显示和工单查询统计报表等100余项核心功能进行对比测试,使用基于X86的分布式數据库系统与传统小型机系统相比,响应时间缩短3-20倍,系统整体性能提升超10倍,1/0读写能力提升超100倍,计算能力提升达15倍,大数据业务查询提升8-30倍,系统更加稳定高效。

参考文献

[1]黄宜林.分布式数据库设计在电网调度系统中的应用[J].集成电路应用,2019 (08):45-47.

[2]焦冬冬,张晨,房志奇,康卫,基于云技术的分布式分布式数据库系统的设计与实现[J].电子技术应用,2017 (11):88-91.

[3]武君胜,吴德州.面向电力系统的分布式分布式数据库关键技术及应用[J].中国科技论文在线,2008 (02):88-91.

[4]吴德州,武君胜.面向电力系统的分布式分布式数据库设计[J].科学技术与工程,2008 (02):15-17.

作者简介

吴斗(1989-),男,四川省资阳市人。硕士研究生,工程师。主要从事信息化建设、运维管理工作,研究方向为运维自动化、数据挖掘、人工智能。

蒋何(1992-),男,四川省遂宁市人。硕士研究生,助理工程师。主要从事信息系统运维工作。

金鑫(1990-),男,四川省成都市人。大学本科学历,助理工程师。主要从事信息系统运维工作。

李海(1982-),男,四川省绵阳市人。大学本科学历,工程师,主要从事数据库运维工作及数据库架构优化工作。

推荐访问:分布式 技术研究 架构

《电力ERP系统基于X86架构的分布式数据库技术研究.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:

文档为doc格式

一键复制全文 下载 投诉