APP下载

图数据库技术在电力系统信息通信资产管理中的应用

2018-01-03吕旭明郑善奇曹丽娜栾敬钊

东北电力技术 2017年11期
关键词:可视化服务器建模

吕旭明,郑善奇,曹丽娜,栾敬钊,高 潇

(国网辽宁省电力有限公司,辽宁 沈阳 110006)

图数据库技术在电力系统信息通信资产管理中的应用

吕旭明,郑善奇,曹丽娜,栾敬钊,高 潇

(国网辽宁省电力有限公司,辽宁 沈阳 110006)

日益增多的信息通信设备在电力系统中投入使用,其发展趋势使电力系统信息通信资产管理成为电力系统发展亟待解决的困难与挑战。传统关系型数据库已不能满足日益复杂的实际发展需求。文中对通用流行的图数据库产品和信息通信资产管理的需求进行调研,详细介绍了用图数据库建模实现电力系统信息通信资产管理以及相应可视化方案,并选定新型的图数据库Neo4j存储、管理、查询电力系统信息通信资产数据。

图数据库;信息通信设备;资产管理;诊断

1 概述

电力系统中的信息通信资产设备的主要功能是实现电力系统高性能控制和自动化管理。随着智能电网技术的发展,大量新型电力设备投入使用,例如分布式能源、智能变电站、电动车充电站等。这些给电力系统信息通信资产管理带来严峻挑战。首先,管理这些电气设备需要安装更多的服务器、交换机和其他通信设备,传统的关系型数据库已不能满足发展的需求。其次,不同信息通信设备的关联关系更加复杂,直接查询一类特殊设备的影响范围十分困难。为了实现可靠控制和灵活管理,一种创新型的信息通信管理系统亟待开发。

图数据库被认为是一种有效存储、管理、分析复杂关联数据以及可视化方案的新型技术方案[1]。大量数据类应用可以被建模为图数据结构,例如社交网络、网页数据、生物结构、化工合成以及道路网络[2]。图数据库的数学基础是图论。图数据库的3类基本元素分别是节点、边和属性。节点通常用来定义实体和标记属性,例如人、城市和订单记录。图数据库中的节点近似于关系型数据库中的一列。边用来定义2个节点之间的关联关系。边可以是有向边,也可以是无向边,可赋予不同含义。边是图数据库中的重要元素,因为关联关系在其他类型数据库中并不能直接表示。关联关系可以允许数据直接相连,而且在大部分应用场景下都可以通过简单操作实现关联数据检索。属性代表节点的附属信息,例如在图数据中定义1个节点 “人”,用户可以定义节点的属性为性别、年龄或教育经历,取决于人的哪类信息在此特定数据库中考虑。

图结构提供一种自然表达关联关系的方式。在关系型数据库中,数据之间的联系存储在关系型数据库本身,对于此类数据的查询需要使用 “JOIN”操作。复杂关联关系数据的简单和快速在关系型数据库中难以实现,使用图数据库则能很好地支撑上述功能。

目前,图数据库还未在电力系统中广泛使用,但电力系统中的信息和通信系统可以建模为属性图。信息通信设备,例如服务器、存储设备和网关等可以建模为节点;传输线路以及逻辑业务连接可以建模成边;设备的配置,设备所属的电力信息系统,实际地址等可以建模为属性。这是首次应用图数据库建模电力系统信息通信管理系统。

本文通过调查对电力系统信息通信资产管理的实际应用需求完成建模,调查了市场上常见的图数据库产品:Neo4j、GraphFrame和GraphSQL,并完成电力系统信息通信资产拓扑网络建模,实现了信息通信资产管理的可视化功能。

2 针对图数据处理平台应用于电力网络的调研

随着图数据库平台的快速发展,一系列图数据库产品应运而生,满足存储大型图数据的市场需求。它们中的绝大多数系统通过一系列并不十分严谨公平的比较获取结论,例如,有些比较并未同时采用双方产品的最新版本,有些比较采用的是社区版本而不是商业版本。

大量不同图数据库的比较通过测试图数据载入、PageRank算法和最短路径算法等功能获取性能表现。在众多图数据库产品中,本文选择Neo4j、GraphFrame和GraphSQL作为设计电力系统信息通信资产管理系统的备选技术方案[3-10]。

a. Neo4j

Neo4j是Neo科技公司开发的一款图数据库管理系统,被认为是最流行的图数据库之一。第一个版本在2010年发布,最新版本3.0在2016年发布。Neo4j支持的图模型被称作属性图,属性图包括节点、边、属性。Neo4j采用Java语言写成,提供多个 API接口,并支持多类开发语言:Java、Python、 Ruby、 JavaScript、 PHP 和.NET, C 和 C++不在支持开发语言之列。Cypher是专为Neo4j设计的描述性数据遍历查询语言,类似于关系型数据库中的类SQL语言。数据库系统采用Blue-prints接口和自然Rest接口,扩展数据库的应用范围。Neo4j提供3个版本:社区版本、企业版本和政府版本。社区版本提供给开发者学习图数据库的基础知识,实现小型系统的开发,不支持大规模高性能系统的开发,且不包含专业支持和系统服务。企业版本提供更强功能和更灵活的开发范围,支持企业级别数据的存储、管理和分析能力,也提供具有竞争性的内部应用,例如主数据管理、网络和信息操作管理、系统和诈骗识别。

b.GraphFrame

GraphFrame是一个可管理图结构数据的数据库。它是在Spark平台上通过Spark SQL模块实现。数据结构基于 Spark Reslient分布式数据库(RDD)。GraphFrame的数据可以转换传输到Spark GraphX平台。GraphX是一种基于Apache Spark的分布式图数据处理框架。GraphX将ETL、探索式分析和遍历计算集中在1台计算机或服务器。数据可以表示成图或是集合。RDDs可有效支持图的转换和加成。开发者可以使用Pregel API设计客户需求的迭代式图算法。GraphX支撑一类图算法:PageRank、连通分支、SVD++、强连通分支和三角计数。因为GraphX是基于Spark实现的数据库,因此不需要针对Spark的基础功能进行修改。为实现超越其他图数据分析平台的性能,GraphX引入了mrTriplets等一系列优化技术。GraphX在处理大规模电网潮流计算具有极大的潜力。

c.GraphSQL

GraphSQL数据库以及配套的分析引擎被认为是一个完整的、分布式的、并行的、旨在解决网络级别大规模数据的实时分析平台。Map Reduce机制和并行图数据处理方法在GraphSQL平台上集成,加速大规模并行图算法。以节点为中心的、Map Reduce方式的API支持用户自定义函数。另外,GraphSQL用来提供图数据的ad-hoc式遍历和迭代式分析。GraphSQL采用独特的分布式计算机制实现大规模的图数据处理。基于上述技术,GraphSQL实现快速的数据载入重构原图,快速的并行图算法具备大规模数据处理能力和实时分析功能。

GraphSQL具有独特特征:实时处理流数据的加载和更新功能。通常意义下,GraphSQL平台具有3个关键功能组件:图引擎实时分析平台、企业级数据引擎以及客户智能解决方案。图引擎实时分析平台收集、存储、分析大量数据并形成属性图。企业级数据引擎支持图论算法的鲁棒式实现。客户智能解决方案集中支撑系统以及各类可视化工具,如支持Tableau。Neo4j、GraphX和GraphSQL的主要特征和区别见表1。

表1 Neo4j、GraphX和GraphSQL的主要特征和区别

3 应用系统数据建模

3.1 物理元素

电力系统信息通信资产建模过程中的所有设备和设备间的关联关系都需要精确地通过图模型进行。

a. 节点建模

电力系统信息通信资产建模中共有3类物理设备节点,包括服务器节点、存储设备节点和网络设备节点。其中服务器节点包含应用服务器 (App)、数据服务器 (Data)、接口服务器 (Port)、地图服务器 (Map)、代理服务器 (Agent) 和F5负载平衡设备 (F5)。存储设备与其中的数据服务器相连,而网络设备在电力系统信息通信资产建模中单指交换机。图模型不同类型的节点包含不同属性,节点对应的属性见表2。

设备ID、子类别、设备型号和设备位置是通用属性。服务器设备和存储设备的IP地址和网络设备 (交换机)的接口是一一对应的,但是具体的对应关系不会由节点的IP地址或接口属性表示出来。1个节点可能有超过1个IP地址或超过1个接口。

表2 节点对应属性

操作系统、硬件配置和集群方式是服务器设备的特有属性。操作系统可以为任意版本的Windows或Linux;硬件配置主要记载了服务器的CPU核心、主频和内存大小;集群方式指1个服务器集群的拓扑关系 (如F5或RAC),同1个集群中的所有服务器的集群方式属性是相同的。

b.边建模

电力系统信息通信建模中使用双向边对设备间的连接关系进行建模,每1条边对应1根光缆。边两端可以连接的设备类型见表3。

表3 边两端连接的设备类型 (边的类型)

3.2 虚拟元素

为了描述设备的功能关系,两类虚拟节点被引入电力系统信息通信建模中。一类为系统节点和从属边,另一类为业务逻辑边。

a. 系统节点和从属边

每个系统都可以被看作为1个图中的超级节点,每个系统超级节点都包含了属于该系统的子图。在电力系统信息通信设备的图建模中,1个特殊的虚拟节点和1组从属边被用来表示这些系统级的节点。

b. 业务逻辑边

另一类虚拟边为业务逻辑边。这类边表述了2个设备间的业务联系,故障影响范围可以通过这类业务边进行确定。

4 通信设备可视化

可视化目的是展示通信设备之间的关联关系和连接状况,有利于设备管理、通信系统分析和网络规划。通过可视化展示可使工作人员较好地观察所有运行设备和其工作状态。读取设备连接状况,利用图数据信息通信资产管理模型实现数据可视化。本文所使用的数据根据真实的设备连接图手动生成。

社区版Neo4j和GraphSQL都提供可视化工具。因为Neo4j使用的Cypher语言是声明型查询语言,开发者可高效编写查询和更新图数据,避免对数据结构的针对性修正。使用者可编写Cypher语言查询并在Neo4j的编辑框中运行。Neo4j自动在结果框中生成可视化效果用以展示查询结果。在GraphSQL平台中,使用者可在浏览器中提交已经创建好的查询任务,查询结果的可视化展示随之生成。考虑到Cypher语言的灵活性和高度可定制性的可视化效果,本文选择Neo4j进行下一步的工作。

本文使用Neo4j来创建图和实现图数据的可视化。数据读取前,已根据不同设备的实际连接情况创建好CSV格式的数据。图数据库平台Neo4j和GraphSQL均可读入CSV格式文件。节点代表信息通信设备,边代表设备间物理连接。主要步骤如下:

a.读取节点数据→创建设备节点→读取物理连接数据→创建边

本文采用3类物理节点,所有边都为无向边。3类节点分别表示服务器、网络设备、存储设备。每个节点有若干属性,如网络设备节点具有的属性为设备ID、子类别、设备型号、设备位置和接口。

在读取数据并创建节点时依次创建每类节点。节点全部建立好后进行边的创建。这里所有的边都是无向的,因为边只意味着其两端的节点所代表的设备有物理连接。然而本次创建图中的边都是有向边,在此不必关注边的方向。

b. 运行查询→自定义可视化效果

针对不同的应用场景可编写相应的查询。通过全图的可视化可方便地对所有设备进行详细展示。查询所有节点类别为服务器的节点,可以对所有服务器设备进行可视化展示。查询所有与PMS系统节点相连的节点可以对所有PMS系统的节点进行可视化展示。用户可方便地编写类似查询,并得到想要的可视化展示。

Neo4j提供的图样式列表可以方便对图的样式进行改动。在图样式列表中可设置节点和边的颜色、名称显示、文字颜色、字体等。用户可导入已编辑好的图样式列表实现自定义可视化效果。可视化时节点的分布位置较混乱,使用者需拖拽节点到合适的位置得到想要的效果。

使用Neo4j可在浏览器中实现图数据的可视化,图中包含有设备状态和设备间连接情况等信息。可视化将为故障影响范围分析提供支持,节点可设置成醒目颜色提示工作人员故障情况。

5 结束语

图数据库技术作为一种新型的计算方法,具有逻辑性强、效率高、并发性好等特点。电力系统信息通信网络具有天然的网络特性,其物理关系、资产关系可形成较庞大的网络拓扑结构,为图数据库提供良好的应用前景。本文对3款通用流行的图数据库产品:GraphSQL、GraphFrame以及Neo4j进行调研分析,结合电力系统企业信息通信资产特点,最终选定Neo4j产品建立电力系统信息通信资产存储和管理的图数据模型,并实现了可视化功能,提高了电力系统企业信息通信资产管理水平及信息通信系统运行水平。

[1] EPRISmart Grid Demonstration Initiative.Two year update [J].Electric Power Research Institute (EPRI). – USA,California,2014.

[2] Miller J J.Graph database applications and concepts with Neo4j[C] //Proceedings of the Southern Association for Information Systems Conference, Atlanta, GA, USA.2013, 2324.

[3] Singh M,Kaur K.SQL2Neo:Moving health-care data from relational to graph databases [C] //Advance Computing Conference(IACC), 2015 IEEE International.IEEE, 2015: 721-725.

[4] Pabon O S.A comparison of NoSQL graph databases [C] //2014 9th Computing Colombian Conference (9CCC).2014.

[5] Jouili S, Vansteenberghe V.An empirical comparison of graph databases [C] //Social Computing (SocialCom), 2013 International Conference on.IEEE, 2013: 708-715.

[6] Jain R,Iyengar S,Arora A.Overview of popular graph databases[ C ] //Computing, Communications and Networking Technologies(ICCCNT), 2013 Fourth International Conference on.IEEE, 2013: 1-6.

[7] McColl R C,Ediger D,Poovey J,etal.A performance evaluation of open source graph databases [C] //Proceedings of the first workshop on Parallel programming for analytics applications.ACM,2014:11-18.

[8] Kolomiˇcenko V,Svoboda M,MlýnkováIH.Experimental comparison of graph databases [C] //Proceedings of International Conference on Information Integration and Web-based Applications& Services.ACM,2013:115.

[9] Vicknair C,Macias M,Zhao Z,et al.A comparison of a graph database and a relational database:a data provenance perspective[C] //Proceedings of the 48th annual Southeast regional conference.ACM,2010:42.

[10] Beis S, Papadopoulos S, Kompatsiaris Y.Benchmarking graph databases on the problem of community detection [M] //New Trends in Database and Information Systems II.Springer International Publishing, 2015: 3-14.

Application of Graph Databases in the Communication and Information Asset Management in Power Grid

LÜ Xuming, ZHENG Shanqi, CAO Lina, LUAN Jingzhao, GAO Xiao

(State Grid Liaoning Electric Power Co., Ltd., Shenyang, Liaoning 110006, China)

With an increasing amount of communication and information equipment added to the power grid, the new situation brings great challenges to the communication and information assetmanagement in the power grid.Traditional database could notmanage the complex relations in a reasonable efficiency.An exploration ismade to use a popular graph database.Neo4j can store,manage and query those data in the paper.The requirement of the management and several graph products are surveyed.Besides,a graph model of communication and information asset in the power system and their's visualization are presented in detail.

graph databases; communication and information asset; assetmanagement; diagnosis

TP311.13

A

1004-7913(2017)11-0027-04

吕旭明 (1981),男,硕士,高级工程师,主要从事电力系统信息通信专业管理及新技术研究工作。

2017-08-30)

猜你喜欢

可视化服务器建模
基于CiteSpace的足三里穴研究可视化分析
基于Power BI的油田注水运行动态分析与可视化展示
联想等效,拓展建模——以“带电小球在等效场中做圆周运动”为例
基于CGAL和OpenGL的海底地形三维可视化
通信控制服务器(CCS)维护终端的设计与实现
“融评”:党媒评论的可视化创新
基于PSS/E的风电场建模与动态分析
不对称半桥变换器的建模与仿真
中国服务器市场份额出炉
得形忘意的服务器标准