业务数据事件的分析订阅方法及系统的制作方法_2

文档序号:9727499阅读:来源:国知局
据分析的结果进行事件识别,对事件识别的结果和数据模型数据进行重新建模;根据用户的订阅规则,对新的数据模型规则过滤,得到用户需要的信息,并将结果传递到所述结果推送模块。
[0032]其中,所述结果推送模块从所述规则处理模块获得处理后的结果,将结果格式化为用户需要的格式,并根据用户选择发送通道,选定发送通道后,将结果推送给用户。
[0033]其中,所述数据接收模块,用于通过消息中间件WebSphereMQ从数据源接收数据,然后对数据完整性进行验证。
[0034]其中,所述数据建模模块对解析后的结果进行重组配对,包括:根据数据的属性到数据库表中查询,基于不同的查询结果采用不同方式将数据存储到数据对象;返回一个结果时,该结果是该数据的上一状态,将结果解析到一个新的数据对象中,将该对象定义为old object,然后将数据对象new object更新到数据库中,覆盖数据表中的数据;返回结果为空时:定义一个old object,其值为空,然后将数据对象new object插入到数据表中。
[0035]其中,所述数据建模模块对解析后的结果进行重组配对,还包括:根据不同的业务场景,对new object和old object进行重组,将new object和old object分别拆分为以当前业务场景的关键项为基本单元的数据列表,将两个数据列表进行匹配;根据所述匹配的结果,将新旧数据列表中的数据分别填充到组合的数据对象中,该数据对象含有两个属性:old object和new object;通过所述匹配,会得到组合对象列表,每个组合对象为一个新的数据模型,用于事件识别。
[0036]其中,如果数据是旅客预定记录,业务场景是旅客航段预定操作,则将newobject和old object分别拆分为以旅客航段为基本单元的数据列表,将两个数据列表进行匹配;如果数据是航班数据,业务场景为航班航段的操作,则将new object和old object分别拆分为以航段为基本单元的数据列表,将两个数据列表进行匹配。
[0037]其中,所述规则处理模块接收到数据建模模块的数据模型后,根据所述数据模型的类型调用不同的规则进行事件判断;对于一个数据模型,可能会判断出0到多个事件,将这些判断产生的事件和数据模型组合成一个新的数据模型,所述新的数据模型含oldobject、new object和事件列表;将事件名作为数据模型的属性,与数据的其它属性一致,用于用户规则过滤,过滤后的数据模型传输到所述结果推送模块。
[0038]其中,所述结果推送模块接收所述规则处理模块的结果,根据数据模型的内容类型确定数据模块的取值。
[0039]其中,所述结果推送模块根据数据模型的取值,将其格式化为标准的XML字符串,并向预定的用户推送相应的信息。
[0040]本发明实施例通过引入规则引擎技术来实现业务数据事件的分析和订阅方法及系统。通过规则引擎系统的Rete算法和描述式编程语言,可以高效地实现事件的识别,且支持无需重启系统即可修改事件判断规则,大大提高了响应业务需求变化的速度;规则引擎实现事件识别后,将事件作为信息的主题,从而解决了订阅系统没有事件信息的问题,使得经典的订阅系统的消息订阅方式可以实现事件订阅的功能。
【附图说明】
[0041]在附图(其不一定是按比例绘制的)中,相似的附图标记可在不同的视图中描述相似的部件。具有不同字母后缀的相似附图标记可表示相似部件的不同示例。附图以示例而非限制的方式大体示出了本文中所讨论的各个实施例。
[0042]图1为本发明实施例业务数据事件的分析订阅系统的组成结构示意图;
[0043]图2为本发明实施例业务数据事件的分析订阅方法的流程示意图;
[0044]图3为本发明实施例数据接收模块的处理流程示意图;
[0045]图4为本发明实施例数据建模模块的处理流程示意图;
[0046]图5为本发明实施例规则处理模块的处理流程示意图;
[0047]图6为本发明实施例结果推送模块的处理流程示意图。
【具体实施方式】
[0048]本发明实施例中的术语“事件”含义为:当某条消息前后状态发生变化,消息的某些信息项发生变化,该变化定义为事件。
[0049]本发明实施例通过数据建模,将数据拆分为合适业务处理的基本单元,通过比较数据的新旧状态来进行数据变化分析,从而实现事件识别。将事件识别的结果作为属性放到数据模型中比较数据新旧状态来进行事件识别,并将事件识别的结果作为数据模型的一个属性,从而使系统能够根据事件变化进行规则处理,解决了订阅系统只能处理数据静态属性不能处理动态变化信息的问题,实现动态信息的订阅发布功能。
[0050]如图1所示,本发明实施例的业务数据事件的分析订阅系统包括四个模块:数据接收模块、数据建模模块、规则处理模块、结果推送模块。
[0051]本发明实施例业务数据事件的分析订阅方法的流程如图2所示,其中,系统开始运行后,首先从上游系统接收数据,然后对数据的正确性进行验证,如果数据不正确,系统将会接收下一条数据;如果数据正确,对数据进行建模;数据建模后,将数据模型放入到规则引擎中进行规则处理,然后将处理后的结果推送给用户。此条数据处理完毕后,将会继续从上游系统接收数据,按上述流程循环处理。
[0052]结合图1与图2,下面针对本发明实施例各模块的功能和具体的实现流程进行详细说明。具体地,如下所述:
[0053]数据接收模块用于从数据源接收数据,并对数据进行解析和数据正确性验证。数据接收模块的处理流程如图3所示,包括:数据接收模块首先从数据源接收数据,然后进行数据解析,数据解析后对数据进行验证,如果数据正确,把数据传递到数据建模模块;如果数据错误,重新从数据源接收数据,进行数据接收处理流程。
[0054]数据建模模块用于对数据接收模块接收到的正确数据进行分析、匹配,并根据数据类型进行建模,生成标准的数据模型。数据建模模块的处理流程如图4所示,包括:数据建模模块从数据接收模块接收数据后,首先对数据进行解析,然后对解析后的结果进行重组配对,生成标准数据模型,最后将数据模型传递到规则处理模块。
[0055]规则处理模块用于根据数据模型,进行事件分析和识别,并根据对数据进行重新建模;以及,对重新建模后的数据根据用户的订阅规则进行处理和过滤,得到用户需要的信息。规则处理模块的处理流程如图5所示,包括:规则处理模块从数据建模模块得到标准数据模型后,首先对数据模型进行分析,根据分析的结果进行事件识别,对事件识别的结果和数据模型数据进行重新建模;根据用户的订阅规则,对新的数据模型规则过滤,得到用户需要的信息,并将结果传递到结果推送模块。
[0056]结果推送模块用于对规则处理模块的结果进行格式化处理,生成符合用户需要的格式信息,并将格式化后的信息推送给用户。结果推送模块的处理流程如图5所示,包括:结果推送模块从规则处理模块获得处理后的结果,将结果格式化为用户需要的格式,并根据用户选择发送通道,选定发送通道后,将结果推送给用户。
[0057]系统的数据接收模块通过消息中间件(WebSphereMQ)从数据源接收数据,然后对数据完整性进行验证。数据源的数据格式分为两种:二进制格式数据和XML格式数据。二进制数据格式的数据验证方法为:根据二进制数据的长度和二进制头部长度字段值进行比较,如果相等,判断该数据正确;如果不相等,判断数据不正确。XML数据通过Schema定义文件验证数据是否正确。对于不正确的数据,系统会进行日志记录,并获取下一条数据;如果是正确的数据,将会发送到数据建模模块。
[0058]数据建模模块收到数据后,首先将数据解析,将数据存储到一个数据对象中。每种业务数据都有各自的数据对象定义,如旅客订座记录、旅客电子客票、航班等都有各自的数据对象定义。数据对象定义为new object,数据对象中含有业务数据的各种属性,数据建模模块根据数据的属性到数据库表中查询,查询结果有两种可能,基于不同的查询结果采用不同方式将数据存储到数据对象,具体地:1)返回一个结果时:该结果是
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1