[发明专利]一种基于规则的数据处理方法及规则引擎装置在审
申请号: | 201710067845.6 | 申请日: | 2017-02-07 |
公开(公告)号: | CN108399176A | 公开(公告)日: | 2018-08-14 |
发明(设计)人: | 吕建文 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 龙洪;栗若木 |
地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 规则引擎装置 规则引擎 数据处理 触发条件 规则配置 规则使用 目标动作 匹配成功 文本形式 语句 匹配 存储 申请 | ||
1.一种基于规则的数据处理方法,包括:
规则引擎基于规则中定义的触发条件对接收的数据进行匹配,所述规则使用文本形式的语句表示;
如果匹配成功,所述规则引擎执行所述规则中定义的目标动作。
2.如权利要求1所述的方法,其特征在于:
所述规则中还定义有数据构造方式;
如果匹配成功,所述规则引擎执行所述规则中定义的目标动作,包括:
如果匹配成功,所述规则引擎解析所述规则中定义的数据构造方式,根据所述数据构造方式和匹配成功的数据,构造要在目标动作中使用的数据,然后执行所述规则中定义的目标动作,执行时使用所述构造的数据。
3.如权利要求1所述的方法,其特征在于:
所述规则中还定义有数据源,所述数据源用消息队列标识来表示;
所述接收的数据是存放在消息队列中的消息;
所述规则引擎对接收的数据进行匹配,包括:根据所述规则中的消息队列标识选择相应的消息队列,只对选择的消息队列中的消息进行匹配。
4.如权利要求3所述的方法,其特征在于:
所述规则引擎对接收的数据进行匹配之前,还包括:对所述规则进行预编译并建立所述规则与所述消息队列标识的索引关系,将预编译后的规则和所述索引关系保存在缓存中。
5.如权利要求1所述的方法,其特征在于:
所述规则中定义有触发条件、数据构造方式和数据源,所述触发条件、数据构造方式和数据源使用Sql的查询语句来表示。
6.如权利要求5所述的方法,其特征在于:
所述规则整体上采用Json格式的数据结构,所述Json格式的数据结构包括规则名称、匹配的Sql语句及动作列表三个部分。
7.如权利要求1-6中任一所述的方法,其特征在于:
所述规则中定义的内容包含属性,所述属性采用Json格式来表示。
8.如权利要求1-6中任一所述的方法,其特征在于:
所述规则中定义的目标动作有多个时,所述规则中还定义了所述多个目标动作之间的顺序关系,所述顺序关系包括并行执行或者串行执行;
所述规则引擎执行所述规则中定义的目标动作,包括:按照所述规则中定义的目标动作之间的顺序关系,执行所述目标动作。
9.如权利要求1-6中任一所述的方法,其特征在于:
所述规则引擎装置位于服务器侧,所述方法还包括:所述规则引擎将在服务器配置的所述规则同步到终端设备。
10.一种规则引擎装置,其特征在于,包括:
条件匹配模块,设置为:基于规则中定义的触发条件对接收的数据进行匹配,所述规则使用文本形式的语句表示;
动作执行模块,设置为:如果所述条件匹配模块对接收的数据匹配成功,执行所述规则中定义的目标动作。
11.如权利要求10所述的装置,其特征在于:
所述规则中还定义有数据构造方式;
所述动作执行模块包括:
数据构造单元,设置为:如果所述条件匹配模块对接收的数据匹配成功,解析所述规则中定义的数据构造方式,根据所述数据构造方式和匹配成功的数据,构造要在目标动作中使用的数据;
动作执行单元,设置为:执行所述规则中定义的目标动作,执行时使用所述构造的数据。
12.如权利要求10所述的装置,其特征在于:
所述规则中还定义有数据源,所述数据源用消息队列标识来表示;所述接收的数据是存放在消息队列中的消息;
所述条件匹配模块对接收的数据进行匹配,包括:根据所述规则中的消息队列标识选择相应的消息队列,只对选择的消息队列中的消息进行匹配。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710067845.6/1.html,转载请声明来源钻瓜专利网。