一种规则的存储方法、匹配方法及装置制造方法及图纸

技术编号:11665698 阅读:70 留言:0更新日期:2015-07-01 03:58
一种规则的存储方法、匹配方法及装置,该存储方法包括:预设存储顺序;建立二叉树的根节点,将根节点作为当前节点,将当前规则的第一个匹配条件作为当前匹配条件;S2:获取当前规则的当前匹配条件;确定当前节点及当前节点的左子树上的节点中存储当前匹配条件的节点,将该节点作为当前节点;判断当前匹配条件是否是最后一个匹配条件,如果是,则将下一条规则作为当前规则,将根节点作为当前节点,将当前规则的第一个匹配条件作为当前匹配条件,返回S2,否则,将下一个匹配条件作为当前匹配条件,确定当前节点的右子节点,将右子节点作为当前匹配条件的通配节点,将右子节点作为当前节点,返回S2。通过该方法及装置,能够节省存储空间。

【技术实现步骤摘要】

本专利技术涉及计算机
,特别涉及一种规则的存储方法、匹配方法及装置
技术介绍
在目前的移动通信网络监控系统中存在着很多规则,比如告警派单规则,告警自 动清除、自动确认规则等。通过匹配这些规则将符合规则的数据进行相应的处理。目前在 业务上提炼的规则通常具有相当的数量,每个规则的条件字段可能也有许多个。在实际的 业务处理中可能有些类型的规则需要全量的数据匹配。现有的系统中这些规则通常被保存 在常规的数据库中的数据表中。 如表1所示,表1示意了一个告警派单规则(符合派单规则的告警进行派单处理) 的数据表结构和数据: 表 1【主权项】1. 一种规则的存储方法,其特征在于,包括:预先设置待存储的规则中的匹配条件的 存储顺序,还包括: 51 :建立二叉树的根节点,将所述根节点作为第一个匹配条件的通配节点,将所述根节 点作为当前节点,按照所述存储顺序,将当前规则的第一个匹配条件作为当前匹配条件; 52 :获取当前规则的当前匹配条件; S3:确定当前节点及当前节点的左子树上的节点中存储当前匹配条件的节点,将存储 当前匹配条件的节点作为当前节点; S4:判断当前规则的当前匹配条件是否是当前规则的最后一个匹配条件,如果是,则将 下一条规则作为当前规则,将根节点作为当前节点,按照所述存储顺序,将当前规则的第一 个匹配条件作为当前匹配条件,执行步骤S2,否则,按照所述存储顺序,将当前规则的下一 个匹配条件作为当前匹配条件,执行步骤S5 ; S5:确定当前节点的右子节点,将当前节点的右子节点作为当前匹配条件的通配节点, 将当前节点的右子节点作为当前节点,执行步骤S2 ; 其中,通配节点中存储对应的匹配条件,其中,通配节点中存储的对应的匹配条件的取 值为任意值均可。2. 根据权利要求1所述的方法,其特征在于, 所述步骤S3,包括: 检测当前节点及当前节点的左子树上的所有节点中是否存在存储当前匹配条件的节 点,如果是,则将存储当前匹配条件的节点作为当前节点,执行步骤S4,否则,将当前节点 及当前节点的左子树上的所有节点中最末端的节点作为当前节点,建立当前节点的左子节 点,将当前节点的左子节点作为当前节点,将当前匹配条件存储到当前节点中,执行步骤 S4 ; 和/或,所述步骤S5,包括: 检测当前节点是否存在右子节点,如果是,则将当前节点的右子节点作为当前节点,按 照所述存储顺序,将当前规则的下一个匹配条件作为当前匹配条件,执行步骤S2,否则,按 照所述存储顺序,将当前规则的下一个匹配条件作为当前匹配条件,建立当前节点的右子 节点,将当前节点的右子节点作为当前匹配条件的通配节点,并将当前节点的右子节点作 为当前节点,执行步骤S2。3. 根据权利要求1所述的方法,其特征在于,还包括:预先设置每个规则的标识; 所述S4中,在判断出当前规则的当前匹配条件是当前规则的最后一个匹配条件时,并 在将下一条规则作为当前规则之前,还包括:将当前规则的标识存储到当前节点中; 和/或,还包括:节点中存储的匹配条件中包括:匹配条件的名称、匹配条件的取值、匹 配条件的匹配方式、匹配条件的条件类型中的一种或多种; 和/或,还包括:将所述二叉树设置于内存中。4. 一种规则的匹配方法,其特征在于,包括:预先根据存储规则的二叉树中匹配条件 的存储顺序,设置待匹配条件的匹配顺序,还包括: Al :将二叉树的根节点作为当前节点,按照所述匹配顺序,将第一个待匹配条件作为当 前待匹配条件; A2 :获取当前待匹配条件; A3:检测当前节点及当前节点的左子树上的所有节点中是否存在与当前待匹配条件相 匹配的节点,如果是,则执行步骤A4,否则,结束当前流程; A4 :判断当前待匹配条件是否是最后一个待匹配条件,如果是,则结束当前流程,否则, 将与当前待匹配条件相匹配的节点作为当前节点,执行步骤A5 ; A5:检测当前节点是否存在右子节点,如果是,则将当前节点的右子节点作为当前节 点,按照所述匹配顺序,将下一个待匹配条件作为当前待匹配条件,执行步骤A2,否则,结束 当前流程。5. 根据权利要求4所述的方法,其特征在于,所述A3,包括: Bl :将当前节点及当前节点的左子树上的所有节点中最末端的节点作为当前节点; B2 :判断当前节点中存储的匹配条件与当前待匹配条件是否相匹配,如果是,则判定当 前节点与当前待匹配条件相匹配,执行步骤B3,否则,判定当前节点与当前待匹配条件不匹 配,执行步骤B3 ; B3:检测当前节点是否存在父节点,如果是,则将当前节点的父节点作为当前节点,执 行步骤B2,否则,输出与当前待匹配条件相匹配的节点。6. 根据权利要求4所述的方法,其特征在于,所述A4中,当判断出当前待匹配条件是最 后一个待匹配条件时,在结束当前流程之前,还包括:获取当前节点中保存的规则的标识。7. -种规则的存储装置,其特征在于,包括: 第一设置单元,用于设置待存储的规则中的匹配条件的存储顺序; 根节点建立单元,用于建立二叉树的根节点,将所述根节点作为第一个匹配条件的通 配节点,将所述根节点作为当前节点,按照所述存储顺序,将当前规则的第一个匹配条件作 为当前匹配条件; 匹配条件获取单元,用于获取当前规则的当前匹配条件; 第一确定单元,用于确定当前节点及当前节点的左子树上的节点中存储当前匹配条件 的节点,将存储当前匹配条件的节点作为当前节点; 第一判断单元,用于判断当前规则的当前匹配条件是否是当前规则的最后一个匹配条 件,当判断结果为是时,将下一条规则作为当前规则,将根节点作为当前节点,按照所述存 储顺序,将当前规则的第一个匹配条件作为当前匹配条件,通知所述匹配条件获取单元,当 判断结果为否时,按照所述存储顺序,将当前规则的下一个匹配条件作为当前匹配条件,通 知第二确定单元; 所述第二确定单元,用于确定当前节点的右子节点,将当前节点的右子节点作为当 前匹配条件的通配节点,将当前节点的右子节点作为当前节点,通知所述匹配条件获取单 元; 其中,所述通配节点中存储对应的匹配条件,其中,对应的匹配条件的取值为任意值均 可。8. 根据权利要求7所述的装置,其特征在于,所述第一确定单元,用于检测当前节点 及当前节点的左子树上的所有节点中是否存在存储当前匹配条件的节点,当判断结果为是 时,将存储当前匹配条件的节点作为当前节点,通知所述第一判断单元,当判断结果为否 时,将当前节点及当前节点的左子树上的所有节点中最末端的节点作为当前节点,建立当 前节点的左子节点,将当前节点的左子节点作为当前节点,将当前匹配条件存储到当前节 点中,通知所述第一判断单元; 和/或,所述第二确定单元,用于检测当前节点是否存在右子节点,当判断结果为是 时,将当前节点的右子节点作为当前节点,按照所述存储顺序,将当前规则的下一个匹配条 件作为当前匹配条件,通知所述匹配条件获取单元,当判断结果为否时,按照所述存储顺 序,将当前规则的下一个匹配条件作为当前匹配条件,建立当前节点的右子节点,将当前节 点的右子节点作为当前匹配条件的通配节点,并将当前节点的右子节点作为当前节点,通 知所述匹配条件获取单元。9. 一种规则的匹配装置,其特征在于,包括: 第二设本文档来自技高网...
一种规则的存储方法、匹配方法及装置

【技术保护点】
一种规则的存储方法,其特征在于,包括:预先设置待存储的规则中的匹配条件的存储顺序,还包括:S1:建立二叉树的根节点,将所述根节点作为第一个匹配条件的通配节点,将所述根节点作为当前节点,按照所述存储顺序,将当前规则的第一个匹配条件作为当前匹配条件;S2:获取当前规则的当前匹配条件;S3:确定当前节点及当前节点的左子树上的节点中存储当前匹配条件的节点,将存储当前匹配条件的节点作为当前节点;S4:判断当前规则的当前匹配条件是否是当前规则的最后一个匹配条件,如果是,则将下一条规则作为当前规则,将根节点作为当前节点,按照所述存储顺序,将当前规则的第一个匹配条件作为当前匹配条件,执行步骤S2,否则,按照所述存储顺序,将当前规则的下一个匹配条件作为当前匹配条件,执行步骤S5;S5:确定当前节点的右子节点,将当前节点的右子节点作为当前匹配条件的通配节点,将当前节点的右子节点作为当前节点,执行步骤S2;其中,通配节点中存储对应的匹配条件,其中,通配节点中存储的对应的匹配条件的取值为任意值均可。

【技术特征摘要】

【专利技术属性】
技术研发人员:朱冰
申请(专利权)人:浪潮通信信息系统有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1