发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种可以灵活的实现数据资源的唯一性检查和数据资源的合并工作,同时有着良好的扩展性和规范性的基于企业服务总线的数据资源唯一性合并处理方法。
本发明的目的可以通过以下技术方案来实现:一种基于企业服务总线的数据资源唯一性合并处理方法,其特征在于,该方法包括以下步骤:1)对来自多个子系统的数据资源的接入总线前的标识进行检查,并判断是否具有唯一性,如果判断为是则进行步骤5),否则进行步骤2);2)对数据资源进行关键属性的相似性检查,并判断是否具有相似性,如果判断为是则进行步骤5),否则进行步骤3);3)对数据资源进行资源等级优先检查,当总线检查到来自多个子系统的数据资源重复时,根据用户定义的各子系统的数据资源优先级别判断资源是否具有等级优先,如果有则根据优先规则对数据进行筛选,并进行步骤5),否则进行步骤4);4)对数据资源进行资源排队检查,当总线检查到来自多个子系统的数据资源重复时,并根据先到先取的原则判断并取舍数据资源,然后进行步骤5);5)对数据资源进行完整性检查,并判断是否具有完整性,如果判断为是则进行步骤7),否则进行步骤6);6)根据合并规则对资源属性进行合并;7)得到公共信息模型实例数据。
所述的步骤1)中的标识包括归属和自身。
所述的步骤2)中的相似性检查具体为,根据所定义的关键属性对数据资源进行相似性检查,相似性检查通过数据字典和分词语义定义进行检查,如果两个数据资源的关键属性表达的事物是相同的,那么认定来自两个子系统的数据资源是同一数据资源。
所述的步骤5)具体为,首先总线定义了某类数据资源有一个或多个必填属性,当遇到多个重复的数据资源,根据数据资源的完整性定义对其完整度进行排队,取舍数据资源。
所述的步骤6)中的合并规则包括以下
a)非法字符判断,属性包含非法字符时,选取另一个资源的该属性值;
b)字典定义匹配,匹配总线预定义字典值的属性值优先选取;
c)空属性值判断,属性包含空值时,选取另一个资源的该属性值;
d)属性丢失判断,子系统A的数字资源不包含该属性时,选取另一个资源包含该属性的有效值;
e)值的有效性判断,属性的值超过合法范围则舍弃。
与现有技术相比,本发明基于公共信息模型实现对数据的统一规范,结合ESB总线的多系统接入方式,利用本发明可以灵活的实现数据资源的唯一性检查和数据资源的合并工作,在源头系统数据有变化时,只需要通过一些配置工作即可实现对变化数据的适应,同时与原有技术相比,有着良好的扩展性和规范性。
实施例
如图1所示,本发明可以提实现对电力系统进行封装,能使之快速成为符合IEC61970标准的产品,对外提供GID接口服务,在多方系统集成至总线期间,需要对来自各接入的系统的数据资源依据公共信息模型(CIM)规范进行唯一性校验和数据实例的合并工作,从而使得由标准接口传出的数据实例是唯一的、合法的。
数据资源表示电力数据模型中的一个或多个实例,如厂站(变电站)、断路器、母线等,根据CIM规范的定义,一个数据资源包含一个标识(ResourceID),一个ResourceID包含Container和Fragement两个部分,Container表示归属,Fragment表示自身,分别是64位LongLong数值,一个ResourceID在一个系统内必须唯一,比如:一个厂站下的多个开关的Container是一致的,Fragment是唯一的。
本发明包括以下步骤:
步骤1)数据资源接入总线(ESB)前的标识(ResourceID)检查,并判断是否具有唯一性,如果判断为是则进行步骤5),否则进行步骤2);
根据数据资源的标识生成规则对数据资源进行标识检查,当子系统A和子系统B都包含一个“万安站”的变电站,那么这个变电站的资源的标识Fragment是一致的,Container是不一致的,此时认定来两个子系统的数据资源是同一个数据资源。
步骤2)数据资源的关键属性相似性检查,并判断是否具有相似性,如果判断为是则进行步骤5),否则进行步骤3);
根据数据资源的一个或多个属性对数据资源进行匹配检查,当子系统A包含一个“万安站”的变电站,子系统B包含一个“万安区变电站”,那么系统根据这个关键属性(此时为名称)对数据资源进行相似性检查,相似性检查通过数据字典和分词语义定义进行检查,如果两个数据资源的该关键属性表达的事物是相同的,那么认定来自两个子系统的数据资源是同一数据资源。
步骤3)数据资源等级优先检查,总线检查到来自多个子系统的数据资源重复时,根据用户定义的各子系统的数据资源优先级别判断资源是否具有等级优先,如果有则根据优先规则对数据进行筛选,并进行步骤5),否则进行步骤4);
当多个子系统接入到总线,总线对多个子系统进行优先级定义,当电力营销系统、生产系统、GIS系统等子系统接入总线时,由用户根据业务需要,定义各子系统的数据资源优先级别,当检查到数据资源重复时,根据优先规则对数据资源进行选择。
步骤4)数据资源排队检查,当总线检查到来自多个子系统的数据资源重复时,并根据先到先取的原则判断并取舍数据资源,然后进行步骤5);
当总线检查到来自多个子系统的数据资源重复时,且在没有数据资源优先规则的情况下,对数据资源进行排队,并根据“先到先取”的原则取舍数据资源。
步骤5)数据资源完整性检查,并判断是否具有完整性,如果判断为是则进行步骤7),否则进行步骤6);
当总线定义了某类数据资源有一个或多个必填属性时,在对多个重复的数据资源根据数据资源的完整性定义对数据资源进行检查,根据满足完整性定义的完整度进行排队后,取舍数据资源。
步骤6)根据合并规则对资源属性进行合并;
当总线定义了数据资源合并规则时,在对多个重复的数据资源进行排队取舍时,应用合并规则,如:当子系统A“万安站”和子系统B“万安区变电站”的数据资源重复时,根据合并规则,对该属性和该数据资源的其他属性进行合并,合并规则有:
a)非法字符判断,属性包含非法字符时,选取另一个资源的该属性值;
b)字典定义匹配,匹配总线预定义字典值的属性值优先选取;
c)空属性值判断,属性包含空值时,选取另一个资源的该属性值;
d)属性丢失判断,子系统A的数字资源不包含该属性时,选取另一个资源包含该属性的有效值;
e)值的有效性判断,属性的值(譬如电压电流)超过合法范围则舍弃。
步骤7)得到公共信息模型实例数据。