电力行业基于规则引擎的数据质量治理
2015-05-30张伟昌孟祥君王刚
张伟昌 孟祥君 王刚
【摘要】 数据的使用、管理及价值的最大化已越来越被人们所重视。目前,电力行业的业务应用系统产生的海量业务数据已被企业管理层定义为数据资产的高度,并将数据资产工作的管理划定到了专门的管理部门。从目前的管理效果和使用情况来看,目前电力行业的数据质量情况不甚乐观。分析原因,主要是管理方式太过于技术化,或者说管理的规则太偏于技术,不能与业务情况适时的相结合,导致投入了大量 的人力、物力治理的数据质量,在应用层面效果仍不是很明显。数据的治理需要一套科学的治理规范和能与业务开展情况紧密结合的行为规则,规则与业务的结合是数据治理工作的重点及难点。借助规则引擎机制来对电力行业的数据进行治理,将对电力行业的数据质量提升工作带来质的飞跃。
【关键字】 数据质量 数据治理 规则引擎 电力行业
【Abstract】The use, management and the maximization value of data has been paid more and more attention by people. At present, the massive business data produced by business application systems in electric power industry, has been defined as the data asset. And the management of data asset is under the charge of the specialized management departments. From the current situation of data management effect and usage, the data quality in electric power industry, however, is not very optimistic. The main reason is the over technicalization of the management method-or, to put it in another way, it is the over technicalization of the rule in management, resulting into untimely combination of data and business, a large amount of manpower and material to govern data and unobvious effect at the application level. The data governance needs a series of scientific governance standards and rules of conduct that can be closely integrated with the business implementation. Further, the combination of the conduct rule and electric power business is the key point and the difficulty of data governance. With the help of the rule engine mechanism to govern electric power data, it will come out a qualitative leap for the improvement of data quality.
【Keywords】data quality data governance rule engine electric power industry
一、引言
我们以国家电网公司为例,来对电力行业基于规则引擎的数据质量治理应用工作进行介绍。国家电网公司于2013年5月成立了运营监控中心,同年,将国家电网公司的数据资产治理工作也划到了该中心。经过了近两年的建设,以信息化应用为手段,以全面监测业务为基础,以专业分析为支撑,运营监控中心初步掌握了公司核心业务流程和核心资源运行状况,能及时发现公司经营活动中的部分风险点,有效识别经营管理异动和问题,及早研判各类风险、提出预警,初步建成了形成发现问题、分析问题和协调解决问题的闭环管理机制。
随着运营监控中心全面监测业务的深入开展,通过业务部门推送的数据的数据质量问题逐步的凸显了出来。面对种种问题,国网运监中心的工作应该如何展开呢。
每项工作是按照一定的规章制度来展开的。这里所说的规章制度,我们就可以理解成为一种规则。有了规则,大家都按照规则来做事情,事情办起来就会事半功倍。数据治理工作也是有其规则存在的,只不过是由于国家电网公司过于庞大,规则逻辑各部门不同,各单位不同,情况十分复杂,如果用固定的一套行为规则让整个企业去执行,执行的效果会与预想偏差甚远。这就要求基于规则的数据治理的实现必须能灵活的定义规则,必须能灵活的在线调整规则。国家电网运营监控中心与其他业务部門是平级的,其部门的性质决定了其不可能去给每个业务部门,各业务条线梳理出一套适合每个业务部门的可行性规则,因为从运监中心来讲,它所对业务的了解绝对没有业务部门的人对业务了解的深刻。这样的话难道运监中心的工作就不做了?本文将依据运营监控中心的业务特点结合规则引擎技术,论述国网运营监控中心将如何开展数据治理工作。
对于基于规则引擎的数据质量治理,我们首先需要了解的是什么是规则引擎,什么是业务规则?
规则引擎(BusinessRuleEngine,BRE)是一种嵌入在应用程序中的组件,它的任务是把当前提交给规则引擎的数据对象与加载在规则引擎中的业务规则进行测试和比对,激活那些符合当前数据状态下的业务规则,根据业务规则中声明的执行逻辑,触发应用程序中对应的操作。
业务规则是对企业或组织的业务进行描述、说明和规范的语句。笼统地说,像日常生活中见到的业务手册、行业标准、管理章程、营销策略还有不成文的惯例都可以称为业务规则,它们体现了一个企业或组织的精髓,是公司赖以生存的资本。
二、主要步骤
开发人员在程序中使用规则引擎基本遵循以下5个典型的步骤:
(1)创建规则引擎对象"
(2)向规则引擎中加载规则集或更换规则集"
(3)向规则引擎提交需要被规则集处理的数据对象集合
(4)命令规则引擎执行
(5)导出规则引擎执行结果,从规则引擎中撤出处理过的数据
使用了规则引擎之后,许多涉及业务逻辑的程序代码基本被这五个典型步骤所取代,一个开放的业务规则引擎应该可以嵌入在应用程序的任何位置,不同位置的规则引擎可以使用不同的规则集,处理不同的数据对象"此外,对使用规则引擎的数量没有限制。
三、主要技术
可以用五元组对业务规则进行形式化定义
({Event},{Term},{Condition},{Consequence},{Priority})
其中,{Event}是触发该业务规则执行的动作事件集合;{Term}是与该规则相关联的对象或术语;{Condition}是该业务规则需要匹配的条件集合;{Consequence}代表规则处理集合;{ Priority }表示业务规则的优先级集合。
业务规则具有五项特性:原子性、独立性、简洁性、一致性、非冗余性。同时,业务规则有四种主要的表现形式:
1、决策表:以表格的形式表示业务规则,每一行表示一条规则,列表示条件或动作,当所有条件满足时,执行动作";2、决策树:将一组业务规则以树型结构来表示,每一个分支表示一条决策路径,叶子节点表示结果或动作";3、规则语言:使用类似自然语言的句法描述规则"可以有很多种规则语言,每种语言适合解决某个特定领域的问题"规则语言可以提供较好的性能,但比图形化的表示难于维护";4、脚本(模板):用于描述过程性的业务逻辑,如:/IF,THEN,,ELSE,0,是决策表!决策树!规则语言的基础" 。
综合考虑数据质量和业务约束间的关系,业务规则可以从如下图所示15个约束规则方面来进行业务规则的梳理,其中:
业务规则主要应用于专家诊断、电子政务、物流配送、电子商务、审计预警等多种业务信息系统中,具体可以实现以下四方面的功能。
(1)实现业务术语的定义。业务术语是一个领域的专业语言,是该领域的人员彼此之间进行交流的工具,是业务规则的最基本的组成成分。
(2)陈述有关的事实或行为。
(3)执行业务的行为约束。
(4)进行知识的逻辑推理。
四、与传统方式对比
基于业务规则的开发方法是一种以业务规则为核心,从业务规则角度进行分析问题和解决问题的信息系统开发方法。与传统的信息系统开发方法相比,它具有以下四方面的优势:
1、系统开发简单:许多软件开发厂商都提供了简单易用、功能强大、性能优越的业务规则开发工具,内嵌规则引擎,能够很容易地进行系统开发。
2、业务规则复用:由于业务规则是按照标准的业务规则语言编写的,而大多数商业化的业务规则产品都支持标准的业务规则语言,故可以很容易地将业务规则库移植到其他的信息系统中,同一条业务规则可以被多种事务复用。
3、业务更新方便:不需要进入系统中修改程序代码,使系统能够更快速、更及时地体现业务的变化。
4、维护成本低廉:系统上线运行后,管理业务规则的工作业务人员就可以完成,并不需要专门的技术人员,很大程度上降低了维护成本。
五、业务功能
基于规则引擎,如何数据应用过程中进行数据治理。
1)设计业务规则体系
围绕着运监中心全面监测、运营分析、数据资产管理要求的设计规划业务规则体系,明确业务规则分类及业务规则管理要求。
2)梳理业务规则,构建业务规则库
通过对业务规则的梳理,还原业务流程,构建业务规则库,从而形成基于业务的校验结果。
3)优化完善数据接口
根据业务规则,梳理6大专题的数据接口,从数据的主动性、及时性、完整性、准确性方面优化完善数据接口,实现6大专题数据基于明细數据,按需、主动抽取,强化基于底层数据的计算能力和对状态的在线监测和分析能力。
4)构建轻量级的业务监测系统工具
根据业务规则的梳理成果,对业界流行的规则引擎进行验证测试和压力测试,选择最能满足未来需求的规则引擎,良好的规则引擎,支持复杂的逻辑判读并且有丰富的外围接口,支持便捷的规则开发环境,并且有强大的性能保证。
六、结语
构建基于规则引擎的数据质量治理体系以来,初步实现对公司经营管理活动的在线监测与控制,全面掌控公司经济运行状况,增强业务管理的透明度,增强公司的集团管控力和风险防控力,为公司经营决策提供有力支撑,为提高管理绩效和经济效益提供保障,为建设“一强三优”的电网企业奠定基础。