CN112364059A - 多规则场景下关联匹配方法、装置、设备和存储介质 - Google Patents
多规则场景下关联匹配方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN112364059A CN112364059A CN202011249559.XA CN202011249559A CN112364059A CN 112364059 A CN112364059 A CN 112364059A CN 202011249559 A CN202011249559 A CN 202011249559A CN 112364059 A CN112364059 A CN 112364059A
- Authority
- CN
- China
- Prior art keywords
- rule
- data
- rules
- matching
- field
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 239000002131 composite material Substances 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 13
- 238000004458 analytical method Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 abstract description 4
- 238000004364 calculation method Methods 0.000 description 9
- 238000007726 management method Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000012550 audit Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24564—Applying rules; Deductive queries
Abstract
本申请涉及数据处理技术领域,提供了一种多规则场景下关联匹配方法、装置、设备和存储介质,还可应用于区块链领域,获取若干规则,根据规则间的逻辑关系将规则进行分组;从消息中间件中获取数据,并获取数据的数据特性;根据数据特性将数据匹配到对应的规则分组中;将规则分组内的数据与规则之间进行匹配,根据匹配的结果对数据添加标记信息,得到标记数据;获取业务需求的Key字段,并将标记数据分发到所述Key字段所对应的计算节点;将每个计算节点的标记数据所匹配的规则汇总为匹配规则组;获取匹配规则组中各个规则所匹配的目标数据并输出,通过本申请提供的多规则场景下关联匹配方法、装置、设备和存储介质,避免数据倾斜,降低计算量。
Description
技术领域
本申请涉及数据处理的技术领域,特别涉及一种多规则场景下关联匹配方法、装置、设备和存储介质。
背景技术
在海量日志分析场景下,数据全都汇总到统一的消息中间件中,而业务方往往需要针对某个关键key值进行各种规则计算匹配等操作。常见的方案是对日志数据按某个字段进行group by分组操作,然后在每个分组内部,依次按照业务的需要依次去遍历规则集计算所命中的规则,也有部分用户将每条规则转换为带有group by逻辑的spark sql/flink sql,然后通过执行sql后得到的union结果集的方式来完成多规则的计算逻辑。然而,在大数据计算框架中使用key by/group by操作时,计算框架会根据key值的不同,把数据分发到不同的计算节点上,由于每种key数据量的不确定性,会引发数据倾斜问题,导致计算任务不均衡,某几个计算节点承担了大量计算任务,影响整个任务的计算进度甚至任务失败;同时,随着规则集的不断增长,整个计算逻辑呈现指数级上升,进而整个任务计算周期加长,性能大幅度降低,任务时效性越来越差。
发明内容
本申请的主要目的为提供一种多规则场景下关联匹配方法、装置、设备和存储介质,旨在解决现有关联匹配过程中数据倾斜以及计算量增大的技术问题。
为实现上述目的,本申请提供了一种多规则场景下关联匹配方法,其特征在,包括以下步骤:
获取若干规则,根据若干所述规则间的逻辑关系将所述规则分为N个规则分组;其中,N为正整数;
从消息中间件中获取若干数据,并获取所述数据的数据特性;
根据所述数据特性将所述数据匹配到对应的所述规则分组中;
将各个所述规则分组内的所述数据与所述规则之间进行匹配,根据所述匹配的结果对所述数据添加标记信息,得到标记数据;其中,所述标记信息包括所述数据所匹配的所述规则的名称、规则字段以及所述数据的数据Key字段中的一种或多种;
获取业务需求的Key字段,并将所述标记数据分发到所述Key字段所对应的计算节点;
将每个所述计算节点的标记数据所匹配的规则汇总为匹配规则组;
获取所述匹配规则组中各个规则所匹配的目标数据并输出。
进一步地,所述获取若干规则,根据若干所述规则间的逻辑关系将所述规则分为N个规则分组,包括:
获取若干规则;
分析各个所述规则之间的逻辑关系;
获取所述逻辑关系中的相斥关系所对应的规则字段;
选择所述规则字段中区分度最大的规则字段作为目标规则字段;其中,所述区分度最大的规则字段使得分组最多;
根据所述目标规则字段将若干所述规则分为N个规则分组。
进一步地,所述根据所述目标规则字段将若干所述规则分为N个规则分组之后,还包括:
识别所述规则分组中各个所述规则的规则类型;
根据所述规则类型,将复合规则或统计规则进行拆分,得到多个子规则;
将所述子规则设置对应的标签,得到标签子规则;
将所述复合规则或统计规则替换为所对应的所述标签子规则。
进一步地,所述获取所述匹配规则组中各个规则所匹配的目标数据并输出,包括:
获取所述标签子规则所匹配的标记数据;
截取所述标记数据中与所述标签子规则匹配的数据段;
将所述数据段按照所述标签子规则在所述复合规则或统计规则中的顺序进行重组,得到目标数据并输出。
进一步地,所述将各个所述规则分组内的所述数据与所述规则之间进行匹配,根据所述匹配的结果对所述数据添加标记信息,得到标记数据;其中,所述标记信息包括所述数据所匹配的所述规则的名称、规则字段以及所述数据的数据Key字段中的一种或多种,包括:
获取各个所述规则分组内所述数据所匹配的所述规则的名称和规则字段以及所述数据的数据Key字段;
将所述名称、规则字段和数据Key字段进行拼接得到标记信息;
为所述数据添加对应的所述标记信息,得到标记数据。
本申请还提供了一种多规则场景下关联匹配装置,包括:
第一获取单元,用于获取若干规则,根据若干所述规则间的逻辑关系将所述规则分为N个规则分组;其中,N为正整数;
第二获取单元,用于从消息中间件中获取若干数据,并获取所述数据的数据特性;
第一匹配单元,用于根据所述数据特性将所述数据匹配到对应的所述规则分组中;
第二匹配单元,用于将各个所述规则分组内的所述数据与所述规则之间进行匹配,根据所述匹配的结果对所述数据添加标记信息,得到标记数据;其中,所述标记信息包括所述数据所匹配的所述规则的名称、规则字段以及所述数据的数据Key字段中的一种或多种;
第三获取单元,用于获取业务需求的Key字段,并将所述标记数据分发到所述Key字段所对应的计算节点;
汇总单元,用于将每个所述计算节点的标记数据所匹配的规则汇总为匹配规则组;
输出单元,用于获取所述匹配规则组中各个规则所匹配的目标数据并输出。
进一步地,所述第一获取单元,包括:
第一获取子单元,用于获取若干规则;
分析子单元,用于分析各个所述规则之间的逻辑关系;
第二获取子单元,用于获取所述逻辑关系中的相斥关系所对应的规则字段;
选择子单元,用于选择所述规则字段中区分度最大的规则字段作为目标规则字段;
分组子单元,用于根据所述目标规则字段将若干所述规则分为N个规则分组。
进一步地,所述第一获取单元,还包括:
识别子单元,用于识别所述规则分组中各个所述规则的规则类型;
拆分子单元,用于根据所述规则类型,将复合规则或统计规则进行拆分,得到多个子规则;
设置子单元,用于将所述子规则设置对应的标签,得到标签子规则;
替换子单元,用于将所述复合规则或统计规则替换为所对应的所述标签子规则。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的多规则场景下关联匹配方法。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的多规则场景下关联匹配方法。
本申请提供的多规则场景下关联匹配方法、装置、设备和存储介质,通过规则间的逻辑关系,合理的对规则进行分组处理,通过将规则进行有效的分组,来避免了每条数据与所有规则进行匹配,从根本上减少了每条数据需要匹配的规则数量,提高了运行速率,同时规则集增长不会对执行引擎产生额外的影响。本申请将最耗时的各种逻辑匹配放入标记阶段中,充分利用了大数据平台的计算能力,避免了该阶段的数据倾斜问题。
附图说明
图1是本申请一实施例中多规则场景下关联匹配方法步骤示意图;
图2是本申请一实施例中多规则场景下关联匹配装置结构框图;
图3为本申请一实施例的计算机设备的结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请一实施例提供了一种多规则场景下关联匹配方法,包括以下步骤:
步骤S1,获取若干规则,根据若干所述规则间的逻辑关系将所述规则分为N个规则分组;其中,N为正整数;
步骤S2,从消息中间件中获取若干数据,并获取所述数据的数据特性;
步骤S3,根据所述数据特性将所述数据匹配到对应的所述规则分组中;
步骤S4,将各个所述规则分组内的所述数据与所述规则之间进行匹配,根据所述匹配的结果对所述数据添加标记信息,得到标记数据;其中,所述标记信息包括所述数据所匹配的所述规则的名称、规则字段以及所述数据的数据Key字段中的一种或多种;
步骤S5,获取业务需求的Key字段,并将所述标记数据分发到所述Key字段所对应的计算节点;
步骤S6,将每个所述计算节点的标记数据所匹配的规则汇总为匹配规则组;
步骤S7,获取所述匹配规则组中各个规则所匹配的目标数据并输出。
本实施例中,如上述步骤S1所述,在多规则场景下,规则间具有一定的逻辑关系,包括相斥关系或相同关系等,有许多规则相互之间的逻辑关系是互斥关系,即两个规则不会同时发生,根据逻辑关系将若干个规则分为N个规则分组,每个分组里包括有若干个规则。例如:现有4个规则,规则1可为:eventid等于1,username等于admin,cmd包含telenetxxx.com。规则2为:eventid等于1,filename包含“shell.dll“,username等于other。规则3为:eventid等于3,port等于80。规则4为:eventId等于22,query name包含“baidu.com”的数据大于10条。可根据eventid这一个字段作为分组条件,将eventid等于1的所有规则分为一个组,即将规则1和规则2分为一组,即规则分组A。将eventid等于3的所有规则分为一组,即规则3作为规则分组B,将eventid等于22的所有规则分为一组,即将规则4作为规则分组C。
如上述步骤S2-S3所述,在海量日志分析场景下,数据会汇总到统一的消息中间件中,从消息中间件中获取若干数据,每条数据具有其对应的数据特性,每条数据由多个字段组成,将数据匹配到对应的规则分组中,如上述中以eventid作为分组条件,在数据匹配时将数据中eventid这一字段作为匹配条件,即将eventid等于1的数据匹配到规则分组A中,eventid等于3的数据匹配到规则分组B中。
如上述步骤S4所述,将每个分组内数据与规则之间进行匹配,即数据符合哪些规则,根据匹配的结果对数据添加标记信息,得到标记数据,标记信息包括:命中的规则名称、命中了哪些规则中的哪些属性、需要哪些字段进行聚合计算、以及该数据的主要key中的一种或多种。在另一实施例中,可将分组中匹配度较低的数据删除,即将不符合任一规则的数据删除。
如上述步骤S5-S6所述,将标记数据按照Key字段分发到对应的计算节点,将计算节点中的标记数据所匹配到的规则汇总成一个匹配规则组,如计算节点包括数据A和数据B,数据A所匹配到的规则为规则1和规则2,数据B所匹配到的规则为规则3,将规则1、2、3汇总成一个匹配规则组。
如上述步骤S7所述,每个匹配规则组包括多个规则,将命中其中一条规则的标记数据,作为结果输出。本实施例中,通过规则间的逻辑关系,合理的对规则进行分组处理,通过将规则进行有效的分组,来避免了每条数据与所有规则进行匹配,从根本上减少了每条数据需要匹配的规则数量,提高了运行速率,同时也不用过分担心规则集增长对执行引擎的影响。将最耗时的各种逻辑匹配放入标记阶段中,充分利用了大数据平台的计算能力,避免了该阶段的数据倾斜问题。
在一实施例中,所述获取若干规则,根据若干所述规则间的逻辑关系将所述规则分为N个规则分组的步骤S1,包括:
步骤S11,获取若干规则;
步骤S12,分析各个所述规则之间的逻辑关系;
步骤S13,获取所述逻辑关系中的相斥关系所对应的规则字段;
步骤S14,选择所述规则字段中区分度最大的规则字段作为目标规则字段;其中,所述区分度最大的规则字段使得分组最多;
步骤S15,根据所述目标规则字段将若干所述规则分为N个规则分组。
本实施例中,如上述步骤S11-S13所述,分析获取到的规则之间的逻辑关系,如上述规则1、2、3、4中,规则1中的eventid等于1与规则3中的eventid等于3之间的逻辑关系为相斥关系,规则1中的eventid等于1与规则2中的eventid等于1之间的逻辑关系为相同关系,规则1中的username等于admin与规则2中的username等于other之间的逻辑关系为相斥关系。获取相斥关系所对应的规则字段,即eventid或username等。
如上述步骤S14-S15所述,选择区分度最大的规则字段,即能将分组划分为最多的组所对应的规则字段,如eventid,能将上述4个规则分为3个规则分组,且有较多规则中有该字段。通过将规则进行分组,避免每条数据去遍历所有规则,降低计算量。
在一实施例中,所述根据所述目标规则字段将若干所述规则分为N个规则分组的步骤S15之后,还包括:
步骤S151,识别所述规则分组中各个所述规则的规则类型;
步骤S152,根据所述规则类型,将复合规则或统计规则进行拆分,得到多个子规则;
步骤S153,将所述子规则设置对应的标签,得到标签子规则;
步骤S154,将所述复合规则或统计规则替换为所对应的所述标签子规则。
本实施例中,如上述步骤S151-S152所述,每个规则具有其相应的规则类型,如复合规则、统计规则、简单规则,对于复合规则、统计规则由于规则过大,将复合规则、统计规则拆分成多个子规则,单个的子规则能够更加更加容易匹配到对应的数据。
如上述步骤S153-S154所述,每个子规则设置一个标签,同一个复合规则或统计规则的子规则设置相同的标签,便于后续直接根据相同的标签得到对应的复合规则或统计规则,将复合规则或统计规则替换为对应的标签子规则,如复合规则S能够拆分成3个子规则,将3个子规则设置一个相同的标签,得到3个标签子规则,用三个标签子规则替换复合规则S。
在一实施例中,所述获取所述匹配规则组中各个规则所匹配的目标数据并输出的步骤S7,包括:
步骤S71,获取所述标签子规则所匹配的标记数据;
步骤S72,截取所述标记数据中与所述标签子规则匹配的数据段;
步骤S73,将所述数据段按照所述标签子规则在所述复合规则或统计规则中的顺序进行重组,得到目标数据并输出。
本实施例中,标记数据中包括多个字段,当其中某些字段组成的数据段与标签子规则匹配,将该数据段截取下来,按照标签子规则在复合规则或统计规则中的顺序生成目标数据,如上复合规则S具有三个标签子规则,每个标签子规则对应一个标记数据,将3个标记数据中与标签子规则相匹配的那部分数据段重组,得到一个与复合规则S完全匹配的目标数据。当三个标签子规则中有一个标签子规则不存在与其相匹配的标记数据,消息中间件在获取数据,当缓存一定时间后,还未获取到相匹配的标记数据,将其他标记数据清理掉。
在一实施例中,所述将各个所述规则分组内的所述数据与所述规则之间进行匹配,根据所述匹配的结果对所述数据添加标记信息,得到标记数据;其中,所述标记信息包括所述数据所匹配的所述规则的名称、规则字段以及所述数据的数据Key字段中的一种或多种的步骤S4,包括:
步骤S41,获取各个所述规则分组内所述数据所匹配的所述规则的名称和规则字段以及所述数据的数据Key字段;
步骤S42,将所述名称、规则字段和数据Key字段进行拼接得到标记信息;
步骤S43,为所述数据添加对应的所述标记信息,得到标记数据。
本实施例中,每个规则可包括多个规则字段,如上述规则1包括eventid、username、cmd三个规则字段,根据规则的定义进行表达式计算,判断是否为真,常见的表达式计算有:等于、大于、小于、包含、正则匹配,通配符匹配等。当一个数据对于一个规则中的各个规则字段的表达式计算为真的个数越多,则该数据与该规则之间的匹配度越高。如一个数据a匹配到的规则为上述规则A,表达式计算时eventid、usernam两个规则字段的值为真,则将规则1、eventid、usernam以及数据a的数据Key字段进行拼接,形成唯一的标记信息将该标记信息添加到数据a中,得到标记数据a。
本申请提供的多规则场景下关联匹配方法可运用在区块链领域中,将若干数据和规则存储在区块链网络中,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
参见图2,本申请一实施例提供了一种多规则场景下关联匹配装置,包括:
第一获取单元10,用于获取若干规则,根据若干所述规则间的逻辑关系将所述规则分为N个规则分组;其中,N为正整数;
第二获取单元20,用于从消息中间件中获取若干数据,并获取所述数据的数据特性;
第一匹配单元30,用于根据所述数据特性将所述数据匹配到对应的所述规则分组中;
第二匹配单元40,用于将各个所述规则分组内的所述数据与所述规则之间进行匹配,根据所述匹配的结果对所述数据添加标记信息,得到标记数据;其中,所述标记信息包括所述数据所匹配的所述规则的名称、规则字段以及所述数据的数据Key字段中的一种或多种;
第三获取单元50,用于获取业务需求的Key字段,并将所述标记数据分发到所述Key字段所对应的计算节点;
汇总单元60,用于将每个所述计算节点的标记数据所匹配的规则汇总为匹配规则组;
输出单元70,用于获取所述匹配规则组中各个规则所匹配的目标数据并输出。
在一实施例中,所述第一获取单元10,包括:
第一获取子单元,用于获取若干规则;
分析子单元,用于分析各个所述规则之间的逻辑关系;
第二获取子单元,用于获取所述逻辑关系中的相斥关系所对应的规则字段;
选择子单元,用于选择所述规则字段中区分度最大的规则字段作为目标规则字段;其中,所述区分度最大的规则字段使得分组最多;
分组子单元,用于根据所述目标规则字段将若干所述规则分为N个规则分组。
在一实施例中,所述第一获取单元10,还包括:
识别子单元,用于识别所述规则分组中各个所述规则的规则类型;
拆分子单元,用于根据所述规则类型,将复合规则或统计规则进行拆分,得到多个子规则;
设置子单元,用于将所述子规则设置对应的标签,得到标签子规则;
替换子单元,用于将所述复合规则或统计规则替换为所对应的所述标签子规则。
在一实施例中,所述输出单元70,包括:
第三获取子单元,用于获取所述标签子规则所匹配的标记数据;
截取子单元,用于截取所述标记数据中与所述标签子规则匹配的数据段;
重组子单元,用于将所述数据段按照所述标签子规则在所述复合规则或统计规则中的顺序进行重组,得到目标数据并输出。
在一实施例中,所述第二匹配单元40,包括:
第四获取子单元,用于获取各个所述规则分组内所述数据所匹配的所述规则的名称和规则字段以及所述数据的数据Key字段;
拼接子单元,用于将所述名称、规则字段和数据Key字段进行拼接得到标记信息;
添加子单元,用于为所述数据添加对应的所述标记信息,得到标记数据。
在本实施例中,上述各个单元、子单元的具体实现请参照上述方法实施例中所述,在此不再进行赘述。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储若干规则、数据等。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种多规则场景下关联匹配方法方法。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种多规则场景下关联匹配方法。
综上所述,为本申请实施例中提供的多规则场景下关联匹配方法、装置、设备和存储介质,获取若干规则,根据若干所述规则间的逻辑关系将所述规则分为N个规则分组;其中,N为正整数;从消息中间件中获取若干数据,并获取所述数据的数据特性;根据所述数据特性将所述数据匹配到对应的所述规则分组中;将各个所述规则分组内的所述数据与所述规则之间进行匹配,根据所述匹配的结果对所述数据添加标记信息,得到标记数据;其中,所述标记信息包括所述数据所匹配的所述规则的名称、规则字段以及所述数据的数据Key字段中的一种或多种;获取业务需求的Key字段,并将所述标记数据分发到所述Key字段所对应的计算节点;将每个所述计算节点的标记数据所匹配的规则汇总为匹配规则组;获取所述匹配规则组中各个规则所匹配的目标数据并输出。本申请通过规则间的逻辑关系,合理的对规则进行分组处理,通过将规则进行有效的分组,来避免了每条数据与所有规则进行匹配,从根本上减少了每条数据需要匹配的规则数量,提高了运行速率,同时也不用过分担心规则集增长对执行引擎的影响。将最耗时的各种逻辑匹配放入标记阶段中,充分利用了大数据平台的计算能力,避免了该阶段的数据倾斜问题。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种多规则场景下关联匹配方法,其特征在于,包括以下步骤:
获取若干规则,根据若干所述规则间的逻辑关系将所述规则分为N个规则分组;其中,N为正整数;
从消息中间件中获取若干数据,并获取所述数据的数据特性;
根据所述数据特性将所述数据匹配到对应的所述规则分组中;
将各个所述规则分组内的所述数据与所述规则之间进行匹配,根据所述匹配的结果对所述数据添加标记信息,得到标记数据;其中,所述标记信息包括所述数据所匹配的所述规则的名称、规则字段以及所述数据的数据Key字段中的一种或多种;
获取业务需求的Key字段,并将所述标记数据分发到所述Key字段所对应的计算节点;
将每个所述计算节点的标记数据所匹配的规则汇总为匹配规则组;
获取所述匹配规则组中各个规则所匹配的目标数据并输出。
2.根据权利要求1所述的多规则场景下关联匹配方法,其特征在于,所述获取若干规则,根据若干所述规则间的逻辑关系将所述规则分为N个规则分组,包括:
获取若干规则;
分析各个所述规则之间的逻辑关系;
获取所述逻辑关系中的相斥关系所对应的规则字段;
选择所述规则字段中区分度最大的规则字段作为目标规则字段;其中,所述区分度最大的规则字段使得分组最多;
根据所述目标规则字段将若干所述规则分为N个规则分组。
3.根据权利要求2所述的多规则场景下关联匹配方法,其特征在于,所述根据所述目标规则字段将若干所述规则分为N个规则分组之后,还包括:
识别所述规则分组中各个所述规则的规则类型;
根据所述规则类型,将复合规则或统计规则进行拆分,得到多个子规则;
将所述子规则设置对应的标签,得到标签子规则;
将所述复合规则或统计规则替换为所对应的所述标签子规则。
4.根据权利要求3所述的多规则场景下关联匹配方法,其特征在于,所述获取所述匹配规则组中各个规则所匹配的目标数据并输出,包括:
获取所述标签子规则所匹配的标记数据;
截取所述标记数据中与所述标签子规则匹配的数据段;
将所述数据段按照所述标签子规则在所述复合规则或统计规则中的顺序进行重组,得到目标数据并输出。
5.根据权利要求1所述的多规则场景下关联匹配方法,其特征在于,所述将各个所述规则分组内的所述数据与所述规则之间进行匹配,根据所述匹配的结果对所述数据添加标记信息,得到标记数据;其中,所述标记信息包括所述数据所匹配的所述规则的名称、规则字段以及所述数据的数据Key字段中的一种或多种,包括:
获取各个所述规则分组内所述数据所匹配的所述规则的名称和规则字段以及所述数据的数据Key字段;
将所述名称、规则字段和数据Key字段进行拼接得到标记信息;
为所述数据添加对应的所述标记信息,得到标记数据。
6.一种多规则场景下关联匹配装置,其特征在于,包括:
第一获取单元,用于获取若干规则,根据若干所述规则间的逻辑关系将所述规则分为N个规则分组;其中,N为正整数;
第二获取单元,用于从消息中间件中获取若干数据,并获取所述数据的数据特性;
第一匹配单元,用于根据所述数据特性将所述数据匹配到对应的所述规则分组中;
第二匹配单元,用于将各个所述规则分组内的所述数据与所述规则之间进行匹配,根据所述匹配的结果对所述数据添加标记信息,得到标记数据;其中,所述标记信息包括所述数据所匹配的所述规则的名称、规则字段以及所述数据的数据Key字段中的一种或多种;
第三获取单元,用于获取业务需求的Key字段,并将所述标记数据分发到所述Key字段所对应的计算节点;
汇总单元,用于将每个所述计算节点的标记数据所匹配的规则汇总为匹配规则组;
输出单元,用于获取所述匹配规则组中各个规则所匹配的目标数据并输出。
7.根据权利要求4所述的多规则场景下关联匹配装置,其特征在于,所述第一获取单元,包括:
第一获取子单元,用于获取若干规则;
分析子单元,用于分析各个所述规则之间的逻辑关系;
第二获取子单元,用于获取所述逻辑关系中的相斥关系所对应的规则字段;
选择子单元,用于选择所述规则字段中区分度最大的规则字段作为目标规则字段;其中,所述区分度最大的规则字段使得分组最多;
分组子单元,用于根据所述目标规则字段将若干所述规则分为N个规则分组。
8.根据权利要求6所述的多规则场景下关联匹配装置,其特征在于,所述第一获取单元,还包括:
识别子单元,用于识别所述规则分组中各个所述规则的规则类型;
拆分子单元,用于根据所述规则类型,将复合规则或统计规则进行拆分,得到多个子规则;
设置子单元,用于将所述子规则设置对应的标签,得到标签子规则;
替换子单元,用于将所述复合规则或统计规则替换为所对应的所述标签子规则。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述的多规则场景下关联匹配方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的多规则场景下关联匹配方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011249559.XA CN112364059B (zh) | 2020-11-10 | 2020-11-10 | 多规则场景下关联匹配方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011249559.XA CN112364059B (zh) | 2020-11-10 | 2020-11-10 | 多规则场景下关联匹配方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112364059A true CN112364059A (zh) | 2021-02-12 |
CN112364059B CN112364059B (zh) | 2023-12-22 |
Family
ID=74509516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011249559.XA Active CN112364059B (zh) | 2020-11-10 | 2020-11-10 | 多规则场景下关联匹配方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112364059B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113282624A (zh) * | 2021-05-25 | 2021-08-20 | 北京达佳互联信息技术有限公司 | 规则匹配方法、装置、电子设备及存储介质 |
CN113609166A (zh) * | 2021-08-16 | 2021-11-05 | 优默网络科技(深圳)有限公司 | 搜索方法、装置、计算机设备及计算机可读存储介质 |
CN115334003A (zh) * | 2022-08-10 | 2022-11-11 | 上海欣诺通信技术股份有限公司 | 一种基于汇聚分流设备的数据流处理方法及系统 |
CN113282624B (zh) * | 2021-05-25 | 2024-05-14 | 北京达佳互联信息技术有限公司 | 规则匹配方法、装置、电子设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101996102A (zh) * | 2009-08-31 | 2011-03-30 | 中国移动通信集团公司 | 数据关联规则挖掘实现方法与系统 |
CN102467570A (zh) * | 2010-11-17 | 2012-05-23 | 日电(中国)有限公司 | 用于分布式数据仓库的连接查询系统和方法 |
CN102857493A (zh) * | 2012-06-30 | 2013-01-02 | 华为技术有限公司 | 内容过滤方法和装置 |
CN105335403A (zh) * | 2014-07-23 | 2016-02-17 | 华为技术有限公司 | 数据库访问方法及装置、数据库系统 |
US20160112531A1 (en) * | 2014-10-20 | 2016-04-21 | PlaceIQ. Inc. | Scripting distributed, parallel programs |
CN108460038A (zh) * | 2017-02-20 | 2018-08-28 | 阿里巴巴集团控股有限公司 | 规则匹配方法及其设备 |
CN108959562A (zh) * | 2018-07-04 | 2018-12-07 | 北京京东尚科信息技术有限公司 | 应用在区块链上的海量规则数据处理方法和系统 |
CN109117426A (zh) * | 2017-06-23 | 2019-01-01 | 中兴通讯股份有限公司 | 分布式数据库查询方法、装置、设备及存储介质 |
CN110457363A (zh) * | 2019-07-05 | 2019-11-15 | 中国平安人寿保险股份有限公司 | 基于分布式数据库的查询方法、装置及存储介质 |
-
2020
- 2020-11-10 CN CN202011249559.XA patent/CN112364059B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101996102A (zh) * | 2009-08-31 | 2011-03-30 | 中国移动通信集团公司 | 数据关联规则挖掘实现方法与系统 |
CN102467570A (zh) * | 2010-11-17 | 2012-05-23 | 日电(中国)有限公司 | 用于分布式数据仓库的连接查询系统和方法 |
CN102857493A (zh) * | 2012-06-30 | 2013-01-02 | 华为技术有限公司 | 内容过滤方法和装置 |
CN105335403A (zh) * | 2014-07-23 | 2016-02-17 | 华为技术有限公司 | 数据库访问方法及装置、数据库系统 |
US20160112531A1 (en) * | 2014-10-20 | 2016-04-21 | PlaceIQ. Inc. | Scripting distributed, parallel programs |
CN108460038A (zh) * | 2017-02-20 | 2018-08-28 | 阿里巴巴集团控股有限公司 | 规则匹配方法及其设备 |
CN109117426A (zh) * | 2017-06-23 | 2019-01-01 | 中兴通讯股份有限公司 | 分布式数据库查询方法、装置、设备及存储介质 |
CN108959562A (zh) * | 2018-07-04 | 2018-12-07 | 北京京东尚科信息技术有限公司 | 应用在区块链上的海量规则数据处理方法和系统 |
CN110457363A (zh) * | 2019-07-05 | 2019-11-15 | 中国平安人寿保险股份有限公司 | 基于分布式数据库的查询方法、装置及存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113282624A (zh) * | 2021-05-25 | 2021-08-20 | 北京达佳互联信息技术有限公司 | 规则匹配方法、装置、电子设备及存储介质 |
CN113282624B (zh) * | 2021-05-25 | 2024-05-14 | 北京达佳互联信息技术有限公司 | 规则匹配方法、装置、电子设备及存储介质 |
CN113609166A (zh) * | 2021-08-16 | 2021-11-05 | 优默网络科技(深圳)有限公司 | 搜索方法、装置、计算机设备及计算机可读存储介质 |
CN115334003A (zh) * | 2022-08-10 | 2022-11-11 | 上海欣诺通信技术股份有限公司 | 一种基于汇聚分流设备的数据流处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112364059B (zh) | 2023-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110535971B (zh) | 基于区块链的接口配置处理方法、装置、设备及存储介质 | |
US20220271960A1 (en) | Blockchain-based data processing method, apparatus, device, and readable storage medium | |
CN110933163B (zh) | 区块链合约部署方法、装置、设备以及存储介质 | |
CN111444210A (zh) | 区块链共识节点管理方法、装置、设备以及存储介质 | |
CN112527912B (zh) | 基于区块链网络的数据处理方法、装置及计算机设备 | |
CN106888106A (zh) | 智能电网中的it资产大规模侦测系统 | |
CN112364059A (zh) | 多规则场景下关联匹配方法、装置、设备和存储介质 | |
CN112288101A (zh) | 基于联邦学习的gbdt与lr融合方法、装置、设备和存储介质 | |
CN111311211A (zh) | 一种基于区块链的数据处理方法以及设备 | |
CN110597541A (zh) | 基于区块链的接口更新处理方法、装置、设备及存储介质 | |
CN110908812A (zh) | 业务数据处理方法、装置、可读存储介质和计算机设备 | |
CN110930254A (zh) | 基于区块链的数据处理方法、装置、终端及介质 | |
CN111010282A (zh) | 一种基于区块链的信息处理方法及相关装置 | |
CN112200680B (zh) | 区块链节点管理方法、装置、计算机以及可读存储介质 | |
CN112948499A (zh) | 信息获取方法和装置、电子设备和存储介质 | |
CN110445765B (zh) | 基于区块链的数据共享方法、终端设备及介质 | |
CN114579582B (zh) | 一种基于区块链的资源处理方法和装置 | |
CN111524009A (zh) | 区块链系统的交易验证方法、装置及硬件设备 | |
CN112988852B (zh) | 基于区块链的数据管理方法、设备以及介质 | |
Qi et al. | Double-edged sword: Incentivized verifiable product path query for RFID-enabled supply chain | |
CN115239450A (zh) | 财务数据处理方法、装置、计算机设备及存储介质 | |
Görkey et al. | Comparative study of Byzantine fault tolerant consensus algorithms on permissioned blockchains | |
CN113435517A (zh) | 异常数据点输出方法、装置、计算机设备和存储介质 | |
Datar et al. | Byzantine spectral ranking | |
CN115701078A (zh) | 跨链交易处理方法、装置、电子设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20231130 Address after: 730900 6 Renmin Road, Baiyin District, Baiyin City, Gansu Province Applicant after: BAIYIN POWER SUPPLY COMPANY, STATE GRID GANSU ELECTRIC POWER Co. Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.) Applicant before: PING AN PUHUI ENTERPRISE MANAGEMENT Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |