[发明专利]规则匹配运算方法及装置在审
申请号: | 201410547129.4 | 申请日: | 2014-10-15 |
公开(公告)号: | CN105574032A | 公开(公告)日: | 2016-05-11 |
发明(设计)人: | 陈显铭 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F9/44 |
代理公司: | 北京鸿德海业知识产权代理事务所(普通合伙) 11412 | 代理人: | 倪志华 |
地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 规则 匹配 运算 方法 装置 | ||
技术领域
本发明属于计算机技术领域,具体涉及一种规则匹配运算方法及装置。
背景技术
随着计算机技术的的飞速发展,互联网技术应用中,用户对运算速度的 要求也越来越严格,然而,传统的规则匹配,其运算速度较慢,运算效率较 低。
例如:对于规则表达式C!=10||(A=0&&B>5),规则上下文{A=0,B=6, C=10}。传统的规则运算会进行三次匹配:第一次运算C!=10为false,第二 次运算(A=0&&B>5)中的A=0为true;第三次运算B>5为true,之后才获取 所述规则表达式的匹配结果为true。
然而,如果将上述规则表达式的计算顺序做以调整,则可以有效的减少 运算次数,进而提升其性能。例如:将上述规则表达式的计算顺序调整为 (A=0&&B>5)||C!=10,规则上下文同样为{A=0,B=6,C=10},那么规则 运算过程中仅需进行2次匹配,即可以获取所述规则表达式的匹配结果为 true。相应的,第一次运算(A=0&&B>5)中的A=0为true;第二次运算B>5 为true,故(A=0&&B>5)的匹配结果为true,而(A=0&&B>5)与C!=10之间 的逻辑关系为或关系,故仅在获取(A=0&&B>5)的匹配结果为true后,不需 要再次计算C!=10,即可以获取所述规则表达式的匹配结果为true。
发明内容
本发明的目的在于提供一种规则匹配运算方法及装置。
为实现上述发明目的之一,本发明一实施方式提供了一种规则匹配运算 方法,其包括:将规则表达式分解为若干个规则条件单元;
根据所述规则表达式中运算符的优先级和每个规则条件单元在一定周期 内监控到的匹配成功率调整规则条件单元的运算顺序;其中,
若根据运算符优先级确定的当前运算的规则条件单元之间是和关系,则 优先运算匹配成功率较低的规则条件单元;
若根据运算符优先级确定的当前运算的规则条件单元之间是或关系,则 优先运算匹配成功率较高的规则条件单元。
作为本发明一实施方式的进一步改进,所述规则条件单元由单元类型、 维度值、运算符、比较值组成。
作为本发明一实施方式的进一步改进,“根据所述规则表达式中运算符的 优先级和每个规则条件单元在一定周期内监控到的匹配成功率调整规则运算 顺序”具体包括:
将所述规则表达式按照运算符优先级和规则条件单元解析成语法二叉 树,所述语法二叉树的每个叶子节点对应一个规则条件单元;
为叶子节点中相同的规则条件单元分配同一个标识符;
将所述语法二叉树的叶子节点替换为规则条件单元对应的标识符,并由 叶子节点逐层向上进行两两运算;其中,根据所述规则表达式中运算符的优 先级和每个标识符对应的规则条件单元在一定周期内监控到的匹配成功率调 整标识符的运算顺序。
作为本发明一实施方式的进一步改进,所述方法包括:
根据所述规则条件单元的单元类型将标识符分堆;
根据所述单元类型对应的执行模板,结合所述规则条件单元的维度值计 算每个标识符的匹配结果。
作为本发明一实施方式的进一步改进,所述方法包括监控每个规则条件 单元在一定周期内的匹配成功率,其包括:
实时地分别采集若干个规则条件单元在一定周期内的匹配成功率,所述 匹配成功率=规则条件单元在一定周期内的匹配成功次数/规则条件单元在一 定周期内的匹配次数。
作为本发明一实施方式的进一步改进,计算所述匹配成功率具体包括:
将所述规则表达式按照运算符优先级和规则条件单元解析成规则语法二 叉树,所述规则语法二叉树的每个叶子节点对应一个规则条件单元;
为叶子节点中相同的规则条件单元分配同一个标识符;
将所述语法树的叶子节点替换为规则条件单元对应的标识符,并计算所 述标识符的匹配结果;
所述匹配成功率=规则条件单元对应的标识符的匹配成功次数/规则条件 单元对应的标识符的匹配次数。
作为本发明一实施方式的进一步改进,“计算所述标识符的匹配结果”具 体包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410547129.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:FPGA配置文件的压缩方法和装置
- 下一篇:一种信息搜索方法及装置