【技术实现步骤摘要】
规则的多维度搜索方法、装置、设备及可读存储介质
本专利技术涉及数据处理
,尤其涉及一种规则的多维度搜索方法、装置、设备及计算机可读存储介质。
技术介绍
在数据处理
,通常存在需要通过查找相应的匹配规则来处理数据,比如报文需要匹配相应的路由规则才能进行转发,如果待匹配数据存在多个数据项,则需要分别进行多次匹配,也即无法通过一次查找即可得到与所有数据项匹配的所有规则。此外,现有的规则匹配算法通常只适用于少量规则,若是对于上万的规则匹配,则性能会随着规则的增多而直线下降。
技术实现思路
本专利技术的主要目的在于提供一种规则的多维度搜索方法、装置、设备及计算机可读存储介质,旨在解决现有规则匹配无法从海量规则中快速得出匹配结果的技术问题。为实现上述目的,本专利技术提供一种规则的多维度搜索方法,所述规则的多维度搜索方法包括:创建由所有规则组成的规则数组;以规则的每一匹配项为一搜索维度,分别构建所有规则各搜索维度对应的搜索结构以及构建所述规则数组的索引结构,并使所述搜索结构与所述索引结构进行关联,其中,所述搜索结构为树结构或数组结构;在进行规则匹配时,搜索每一个搜索维度对应的搜索结构,以分别从各搜索结构中,获得与待匹配数据的各数据项相匹配的树节点或数组项;基于所述搜索结构中所述树节点或数组项与所述索引结构的关联关系,分别确定与所述待匹配数据的各数据项相匹配的规则。可选地,所述规则数组的索引结构为Bitmap结构,所述Bitmap结构的每一比特位对应所述规则数组的每一索引号,所述规则数组的一个索引号对应一条规则。可选地,所述使所述搜索结构与所述索引结构进行关联包括 ...
【技术保护点】
1.一种规则的多维度搜索方法,其特征在于,所述规则的多维度搜索方法包括:创建由所有规则组成的规则数组;以规则的每一匹配项为一搜索维度,分别构建所有规则各搜索维度对应的搜索结构以及构建所述规则数组的索引结构,并使所述搜索结构与所述索引结构进行关联,其中,所述搜索结构为树结构或数组结构;在进行规则匹配时,搜索每一个搜索维度对应的搜索结构,以分别从各搜索结构中,获得与待匹配数据的各数据项相匹配的树节点或数组项;基于所述搜索结构中所述树节点或数组项与所述索引结构的关联关系,分别确定与所述待匹配数据的各数据项相匹配的规则。
【技术特征摘要】
1.一种规则的多维度搜索方法,其特征在于,所述规则的多维度搜索方法包括:创建由所有规则组成的规则数组;以规则的每一匹配项为一搜索维度,分别构建所有规则各搜索维度对应的搜索结构以及构建所述规则数组的索引结构,并使所述搜索结构与所述索引结构进行关联,其中,所述搜索结构为树结构或数组结构;在进行规则匹配时,搜索每一个搜索维度对应的搜索结构,以分别从各搜索结构中,获得与待匹配数据的各数据项相匹配的树节点或数组项;基于所述搜索结构中所述树节点或数组项与所述索引结构的关联关系,分别确定与所述待匹配数据的各数据项相匹配的规则。2.如权利要求1所述的规则的多维度搜索方法,其特征在于,所述规则数组的索引结构为Bitmap结构,所述Bitmap结构的每一比特位对应所述规则数组的每一索引号,所述规则数组的一个索引号对应一条规则。3.如权利要求2所述的规则的多维度搜索方法,其特征在于,所述使所述搜索结构与所述索引结构进行关联包括:若所述搜索结构为树结构,则基于所有规则同一匹配项数值之间的父子关系,构建父子关系树,并使所述父子关系树的每一树节点与一Bitmap结构关联,其中,将Bitmap结构中与树节点数值匹配的规则所对应的比特位置1,其他比特位置0,以及将父树节点关联的Bitmap结构添加到子树节点关联的Bitmap结构中;将所述父子关系树的每一树节点与所述搜索结构的每一树节点进行关联。4.如权利要求2所述的规则的多维度搜索方法,其特征在于,所述使所述搜索结构与所述索引结构进行关联包括:若所述搜索结构为数组结构,则使数组结构的每一数组项与一Bitmap结构关联,其中,将Bitmap结构中与数组项数值匹配的规则所对应的比特位置1,其他比特位置0。5.如权利要求3或4所述的规则的多维度搜索方法,其特征在于,所述基于所述搜索结构中所述树节点或数组项与所述索引结构的关联关系,分别确定与所述待匹配数据的各数据项相匹配的规则包括:基于所述搜索结构中所述树节点或数组项对应的Bitmap结构,分别确定各Bitmap结构中置1的比特位所对应的规则为与所述待匹配数据的各数据项相匹配的规则。6.如权利要求5所述的规则的多维度搜索方法,其特征在于,在所述基于所述搜索结构中所述树节点或数组项与所述索引结构的关联关系,分别确定与所述待匹配数据的各数据项相匹配的规则的步骤之后,还包括:将与所述待匹配数据的各数据项相匹配的树节点或数组项对应的Bitmap结构进行与运算,并将与运算后的Bitmap结构中所有置1的比特位所对应的规则,确定为与所述待匹配数据的所有数据项相匹配的规则;若进行与运算后的Bitmap结构中存在多个置1的比特位,则将该Bitmap结构中优先级最高且置1的比特位对应的规则作为最终匹配的规则。7.一种规则的多维度搜索装置,其特征在于,所述规则的多维度搜索装置包括:创建模块,用于创建...
【专利技术属性】
技术研发人员:李帅,
申请(专利权)人:深信服科技股份有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。