CN111932076B - 一种规则配置和发布方法、装置及计算设备 - Google Patents
一种规则配置和发布方法、装置及计算设备 Download PDFInfo
- Publication number
- CN111932076B CN111932076B CN202010659347.2A CN202010659347A CN111932076B CN 111932076 B CN111932076 B CN 111932076B CN 202010659347 A CN202010659347 A CN 202010659347A CN 111932076 B CN111932076 B CN 111932076B
- Authority
- CN
- China
- Prior art keywords
- rule
- value
- engine
- rules
- configuration
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 93
- 238000009826 distribution Methods 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000013507 mapping Methods 0.000 claims description 12
- 238000012360 testing method Methods 0.000 claims description 11
- 210000001503 joint Anatomy 0.000 claims description 8
- 239000013589 supplement Substances 0.000 claims description 8
- 238000012986 modification Methods 0.000 claims description 7
- 230000004048 modification Effects 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 description 31
- 238000004891 communication Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000006399 behavior Effects 0.000 description 4
- 238000000926 separation method Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000013401 experimental design Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000001939 inductive effect Effects 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000011273 social behavior Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0635—Risk analysis of enterprise or organisation activities
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Databases & Information Systems (AREA)
- Educational Administration (AREA)
- Data Mining & Analysis (AREA)
- Game Theory and Decision Science (AREA)
- Computational Linguistics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种规则配置和发布方法,该方法在计算设备中执行,计算设备与多个节点连接,其中节点适于运行规则引擎,该方法包括步骤:选择活动对象,根据活动对象设置多个特征字段;创建一个或多个规则,每个规则为多个算式之间的逻辑操作,每个算式在一个或者多个特征字段上配置;基于一个或者多个规则创建规则集,规则集包括对多个规则运行结果的逻辑操作;根据所创建的规则生成规则元数据,将与规则集相关的一个或多个规则的元数据发送到多个节点,以便在规则引擎中执行,以确定活动对象相关联的数据是否命中规则集。本发明还公开了相应的装置及计算设备。
Description
技术领域
本发明涉及数据处理技术领域,特别涉及一种规则配置和发布方法、装置及计算设备。
背景技术
随着互联网的快速发展,通过网络进行相关的社会行为越来越流行和普遍,随之而来的风险问题也越来越严重,因此出现了风控规则引擎系统以解决实际在生产业务中的作弊手段变化频繁各种难题。
一种方案是通过硬编码方式实现风控规则的维护和执行。在项目上线的初期整理好所有的风控规则、执行流程和热部署方案。开发人员需要根据决策者制定的数量庞大的规则库,进行硬编码实现。该方案的缺点是效率低且不够灵活,并且将商业决策者的商业决策逻辑和应用开发者的技术决策混杂在一起。提高实现复杂逻辑的代码的复杂性,降低了系统的稳定性。
另一种方案是首先通过制定规则的规范化格式,通过将所有的业务规则进行格式化,然后将拆分后的规则以数据库记录的形式存储在关系型数据库中。当规则执行时,通过查询关系型数据库的方式,根据预先设定好的模式和规则规范从业务的维度对数据库进行查找,并对业务规则进行拼装、验证、加载和执行。然而这种方式需要从不同的二维表中实时的查询业务规则的各项元素,然后进行拼装、验证、动态加载和执行,并且关系型数据库的多表联合查询是一项低效复杂的查询方式,现有的规则引擎没有提供灵活的配置界面,使用十分不方便,规则配置繁杂,用户体验不高。
发明内容
为此,本发明提供了一种规则配置和发布方法、装置及计算设备,以力图解决或者至少缓解上面存在的至少一个问题。
根据本发明的一个方面,提供了一种规则配置和发布方法,该方法在计算设备中执行,计算设备与多个节点连接,其中节点适于运行规则引擎,该方法包括步骤:选择活动对象,根据活动对象设置多个特征字段;创建一个或多个规则,每个规则为多个算式之间的逻辑操作,每个算式在一个或者多个特征字段上配置;基于一个或者多个规则创建规则集,规则集包括对多个规则运行结果的逻辑操作;根据所创建的规则生成规则元数据,将与规则集相关的一个或多个规则的元数据发送到多个节点,以便在规则引擎中执行,以确定活动对象相关联的数据是否命中所述规则集。
可选地。在根据本发明的规则配置和发布方法中,选择活动对象,根据活动对象设置多个特征字段之前,还包括步骤:初次为活动对象设置多个特征字段时,添加与活动对象对接的标识、密钥、负责人。
可选地。在根据本发明的规则配置和发布方法中,选择活动对象,根据活动对象设置多个特征字段之后,还包括步骤:判断是否存在特征字段符合预设类型,若符合预设类型则根据特征字段自动创建规则对规则集进行补充。
可选地。在根据本发明的规则配置和发布方法中,算式包括固定值类型和列表值类型,其中,固定值类型用于判断特征字段和指定单值是否符合预设逻辑关系,以生成布尔值;列表值类型用于判断特征字段和指定多值是否符合预设逻辑值,以生成布尔值。
可选地。在根据本发明的规则配置和发布方法中,算式还包括系统值和频率值,其中,系统值类型用于调用本地数据,判断特征字段和本地数据之间的逻辑关系是否符合预设逻辑关系,以生成布尔值;频率值类型用于根据特征字段在预设周期里出现的频次,判断频次值和指定值是否符合预设逻辑关系,以生成布尔值。
可选地。在根据本发明的规则配置和发布方法中,算式还包括字段比较类型,所述字段比较类型用于比较多个特征字段之间是否符合预设逻辑关系,以生成布尔值。
可选地。在根据本发明的规则配置和发布方法中,规则引擎在执行规则元数据时,对不含系统值类型的算式,直接在规则引擎上进行运算。
可选地。在根据本发明的规则配置和发布方法中,规则引擎在执行规则元数据时,对含有频率值类型的算式,以异步解耦的方式将算式发送到第三方系统以进行运算。
可选地。在根据本发明的规则配置和发布方法中,每个活动对象的特征字段和搜索引擎属性映射信息存储于索引系统中,以兼容多个活动对象对规则引擎的调用。
可选地。在根据本发明的规则配置和发布方法中,规则发布前对规则进行A/B测试。
可选地。在根据本发明的规则配置和发布方法中,根据所述特征字段配置多个算式之后,还包括步骤:记录算式的添加和修改历史。
可选地。在根据本发明的规则配置和发布方法中,逻辑操作包括并操作以及或操作。
根据本发明的另一个方面,提供了一种规则引擎配置和发布装置,包括:活动对象配置模块,用于获取用户的活动对象配置数据,以及提供配置完成的活动对象的选择界面;特征字段配置模块,用于根据活动对象设置多个特征字段;算式配置模块,用于根据特征字段提供算式配置界面,并获取用户根据特征字段配置多个算式、以及多个算式布尔值之间的逻辑操作的数据,以构成规则;规则集配置模块,用于根据规则提供规则集的配置界面,并获取用户配置规则集和规则集中每个规则的返回类型的数据,规则集包括对多个规则返回类型的逻辑操作;规则发布模块,用于根据所创建的规则生成规则元数据,将与规则集相关的一个或多个规则的元数据发送到所述多个节点,以便在规则引擎中执行,以确定活动对象相关联的数据是否命中所述规则集。
可选地,在根据本发明的规则引擎配置和发布装置中,活动对象配置模块进一步用于,初次配置活动对象的规则时,添加与活动对象对接的标识、密钥、负责人。
可选地,在根据本发明的规则引擎配置和发布装置中,规则集配置模块进一步用于,判断是否存在特征字段符合预设类型,若符合预设类型则根据特征字段自动创建规则对规则集进行补充。
可选地,在根据本发明的规则引擎配置和发布装置中,算式包括固定值类型和列表值类型,其中,固定值类型用于判断特征字段和指定单值是否符合预设逻辑关系,以生成布尔值;列表值类型用于判断特征字段和指定多值是否符合预设逻辑值,以生成布尔值。
可选地,在根据本发明的规则引擎配置和发布装置中,算式还包括系统值和频率值,其中,系统值类型用于调用本地数据,判断特征字段和本地数据之间的逻辑关系是否符合预设逻辑关系,以生成布尔值;频率值类型用于根据特征字段在预设周期里出现的频次,判断频次值和指定值是否符合预设逻辑关系,以生成布尔值。
可选地,在根据本发明的规则引擎配置和发布装置中,算式还包括字段比较类型,所述字段比较类型用于比较多个特征字段之间是否符合预设逻辑关系,以生成布尔值。
可选地,在根据本发明的规则引擎配置和发布装置中,规则引擎在执行规则元数据时,对不含系统值类型的算式,直接在规则引擎上进行运算。
可选地,在根据本发明的规则引擎配置和发布装置中,规则引擎在执行规则元数据时,对含有频率值类型的算式,以异步解耦的方式将算式发送到第三方系统以进行运算。
可选地,在根据本发明的规则引擎配置和发布装置中,每个活动对象的特征字段和搜索引擎属性映射信息存储于索引系统中,以兼容多个活动对象对规则引擎的调用。
可选地,在根据本发明的规则引擎配置和发布装置中,规则发布模块进一步用于,规则发布前对规则进行A/B测试。
可选地,在根据本发明的规则引擎配置和发布装置中,算式配置模块进一步用于,根据所述特征字段配置多个算式之后,记录算式的添加和修改历史。
可选地,在根据本发明的规则引擎配置和发布装置中,逻辑操作包括并操作以及或操作。
根据本发明的又一个方面,提供了一种规则引擎的调用方法,该方法适于在计算设备上执行,所述计算设备适于获取活动对象对应的接口数据,并调用如前述规则引擎配置和发布装置所配置的规则引擎,以获取对接口数据执行规则的返回结果。
可选地,在根据本发明的规则引擎调用方法中,获取对接口数据执行规则的返回结果后,还包括步骤:记录每个规则的命中情况,并反馈给所调用的规则引擎。
根据本发明的又一个方面,提供了一种计算设备,包括至少一个处理器;以及存储器,存储有程序指令,其中程序指令被配置为适于由至少一个处理器执行,程序指令包括用于执行根据本发明的规则配置和发布方法的指令。
根据本发明的又一个方面,提供了一种存储有程序指令的可读存储介质,当该程序指令被计算设备读取并执行时,使得计算设备执行本发明的规则配置和发布方法。
根据本发明的技术方案,通过在前端上提供的配置界面上的业务人员的选择和简单输入等形式,选择活动对象、配置规则和业务逻辑,后台再根据所创建的规则生成规则元数据,将业务规则与风控系统解耦,实现了以分布式形式部署规则引擎节点,规则实时更新,实时下发和实时执行,可以通过不修改代码不重启项目的情况下实现规则的实时加载更新,并降低了业务人员配置规则的成本。其中,每个规则为多个算式之间的逻辑操作,算式包括系统值类型和频率值类型,系统值类型用于调用本地数据,判断特征字段和本地数据之间的逻辑关系是否符合预设逻辑关系;频率值类型用于根据特征字段在预设周期里出现的频次,判断所述频次值和指定值是否符合预设逻辑关系。规则引擎在执行规则元数据时,对含有频率值类型的算式,以异步解耦的方式将算式发送到第三方系统以进行运算。通过专门的系统负责专门的功能,对频率值类型的计算规则采用第三方性能更高的系统进行计算,规则引擎运行时只负责规则的触发,实现了系统间的分离,提高了用户的使用体验。
每个活动对象的特征字段和ES搜索引擎属性映射信息存储于Codis索引系统中,以兼容多个活动对象对规则引擎的调用。通过暴露规则引擎运行时接口形式,实时判断活动流量,识别潜在威胁,并将结果反馈给活动方,同时将本次请求的信息、各个规则的执行情况和最终结果存入数据库,为后续无论是离线智能风控数据分析还是风控反作弊报表提供数据决策支持。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明的一个实施例的计算设备100的示意图;
图2示出了根据本发明的一个实施例的规则配置和发布方法200的流程图;
图3示出了根据本发明的一个实施例的规则引擎配置和发布装置300的示意图;
图4示出了根据本发明的一个实施例的规则引擎配置和发布装置提供的活动对象配置界面图;
图5示出了根据本发明的一个实施例的规则引擎配置和发布装置提供的特征字段配置界面图;
图6示出了根据本发明的一个实施例的规则引擎配置和发布装置提供的算式配置界面图;
图7示出了根据本发明的一个实施例的规则引擎配置和发布装置提供的规则集配置界面图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1是示例计算设备100的框图。在基本的配置102中,计算设备100典型地包括系统存储器106和一个或者多个处理器104。存储器总线108可以用于在处理器104和系统存储器106之间的通信。
取决于期望的配置,处理器104可以是任何类型的处理,包括但不限于:微处理器(μP)、微控制器(μC)、数字信息处理器(DSP)或者它们的任何组合。处理器104可以包括诸如一级高速缓存110和二级高速缓存112之类的一个或者多个级别的高速缓存、处理器核心114和寄存器116。示例的处理器核心114可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器118可以与处理器104一起使用,或者在一些实现中,存储器控制器118可以是处理器104的一个内部部分。
取决于期望的配置,系统存储器106可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。系统存储器106可以包括操作系统120、一个或者多个应用122以及程序数据124。
计算设备100还可以包括有助于从各种接口设备(例如,输出设备142、外设接口144和通信设备146)到基本配置102经由总线/接口控制器130的通信的接口总线140。示例的输出设备142包括图形处理单元148和音频处理单元150。它们可以被配置为有助于经由一个或者多个A/V端口152与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口144可以包括串行接口控制器154和并行接口控制器156,它们可以被配置为有助于经由一个或者多个I/O端口158和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备146可以包括网络控制器160,其可以被布置为便于经由一个或者多个通信端口164与一个或者多个其他计算设备162通过网络通信链路的通信。在本实施例中,计算设备100与多个节点连接,节点适于运行规则引擎。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以是这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
计算设备100可以实现为服务器,例如文件服务器、数据库服务器、应用程序服务器和WEB服务器等,也可以实现为小尺寸便携(或者移动)电子设备的一部分,这些电子设备可以是诸如蜂窝电话、个人数字助理(PDA)、个人媒体播放器设备、无线网络浏览设备、个人头戴设备、应用专用设备、或者可以包括上面任何功能的混合设备。计算设备100还可以实现为包括桌面计算机和笔记本计算机配置的个人计算机。
在根据本发明的计算设备100中,应用122包括规则引擎配置和发布装置300,规则引擎配置和发布装置200实质上是多条程序指令,这些程序指令可以指示处理器204执行规则配置和发布方法300,从而实现规则配置和发布方法。具体来说,规则引擎配置和发布装置会提供根据本发明的方法的配置界面,运营人员通过在前端上呈现的配置界面上进行选择和简单输入,选择活动对象、配置规则和业务逻辑,后台再根据所创建的规则生成规则元数据,将业务规则与风控系统解耦,实现了以分布式形式部署规则引擎节点,规则实时更新,实时下发和实时执行,可以通过不修改代码不重启项目的情况下实现规则的实时加载更新,并降低了运营人员配置规则的成本。
图2示出了根据本发明的一个实施例的规则配置和发布方法200的流程图。方法200适于在计算设备(例如前述计算设备100)中执行。计算设备与多个节点连接,节点适于运行规则引擎。如图2所示,规则配置和发布方法始于步骤S210。
在步骤S210中,选择活动对象,根据活动对象设置多个特征字段。具体地,活动对象是具体参与风控反作弊识别的主体,一个活动对象只能属于一个业务方。业务方例如客户端中不同的应用程序,而活动对象则是存在于应用程序中不同的功能页面,例如视频分享软件中的小视频点赞活动,计算设备适于获取活动对象对应的业务方接口数据,并调用本发明所配置的规则引擎,以获取对接口数据执行规则的返回结果。应用程序会获取用户的信息,特征字段表明了从接口数据的哪些维度进行识别,例如用户ID、用户手机号、注册时间、最后登录时间等。
根据本发明的一个实施例,选择活动对象,根据活动对象设置多个特征字段之前,还包括:初次为活动对象设置多个特征字段时,添加与活动对象对接的标识、密钥、负责人。该步骤的目的是为设置的业务方纬度添加对应业务活动信息,活动名称表明了要接入规则引擎系统的活动信息,活动方在请求规则引擎运行时,规则引擎运行时会根据接入标识区分不同的活动。密钥和负责人同时构成了对接规则引擎的安全加密信息,活动方和规则引擎运行时对接时,根据此安全加密信息进行身份的认证和识别。
进一步地,每个活动对象的特征字段和ES(Elasticsearch)搜索引擎属性映射信息存储于Codis索引系统中,以兼容多个活动对象对规则引擎的调用。具体来说,搜索引擎属性是指ES文档数据库中一个索引(Index)中存在的多个属性名称,一个属性名称即一个文档类型,每个索引可以包含多个文档类型。这样,一个索引可以存储很多不同用途的对象,再利用文档类型则可以轻易地区分单个索引中的不同对象。
例如活动对象1存储于Codis索引系统的映射信息如下:
name:"property01",
age:"property02",
birthday:"property03",
location:"property04"
活动对象2存储于Codis索引系统的映射信息如下:
salary:"property01",
title:"property02",
nickname:"property03",
job:"property04"
每个文档可以有不同的结构,在实际部署中,将文件按类型区分对数据操作有很大帮助。在实现上通常在ES文档数据库中预先定义出一个索引中所有的属性名称,或称所有的文档类型,例如
"property01":{
"type":"keyword"},
"property02":{
"type":"keyword"},
"property03":{
"type":"keyword"},
"property04":{
"type":"keyword"},
例如活动方1的name特征字段的值映射完成后对应到ES中的属性名称为property01,在ES中的name与其他特征字段值存储数据格式和内容如下:
"property01":"张三",
"property02":"18岁",
"property03":"2010-03-10 15:48:55",
"property04":"北京市东城区"
而与此property01对应的活动方2的特征字段为salary,在ES中的salary与其他特征字段值存储数据格式和内容如下:
"property01":"100万",
"property02":"研发总监",
"property03":"老张",
"property04":"工程师"
每个活动对象的映射关系都不同,在需要获取对应的数据时,根据活动对象对应的映射关系从ES去获取对应的数据,利用这一特性兼容多个活动对象对规则引擎的调用。需要指出的是,不能为相同的特征字段设置不同的文档类型。
随后在步骤S220中,创建一个或多个规则,每个规则为多个算式之间的逻辑操作,每个算式在一个或者多个特征字段上配置。现有技术中的规则引擎在配置时,往往只能配置单个维度。例如,配置某个IP下的用户ID登录次数,但是要实现某个IP下具体的某个用户ID的登录次数,就是IP与用户ID的组合维度,这种情况往往需要技术人员进行硬编码将改逻辑编入底层程序中。而本发明将每个维度的特征字段单独提取出来,运营人员只需要在本发明所提供的配置界面上,对多个特征对象通过选择或简单输入进行配置,即可实现多维度组合下的规则下发。
具体地,特征字段从类型上区分总共5中类型,分别为:字符串String类型、整型long类型、浮点double类型、日期DateTime类型和布尔Boolean类型。运营人员可以根据不同的类型获取到1到n个名称不同的特征字段,针对每种特征字段类型可以定义的算式有不同的类型,算式中字段的关系一般为常用的数字比较关系,例如大于、等于等,字符串的包含等。
根据本发明的一个实施例,算式包括固定值类型和列表值类型,其中,固定值类型用于判断特征字段和指定单值是否符合预设逻辑关系,以生成布尔值,例如判断“age”特征字段的是否是18;列表值类型用于判断特征字段和指定多值是否符合预设逻辑值,以生成布尔值,例如判断“name”特征字段是否是张三、李四或者王五其中的一个。
根据本发明的又一个实施例,算式还包括系统值和频率值,其中,系统值类型用于调用本地数据,判断特征字段和本地数据之间的逻辑关系是否符合预设逻辑关系,以生成布尔值,例如调用系统黑名单(系统黑名单包括但不限于手机号评分低的数据、经过AI风险智能识别系统识别出的风险数据等),判断特征字段是否存在于系统黑名单中;频率值类型用于根据特征字段在预设周期里出现的频次,判断频次值和指定值是否符合预设逻辑关系,以生成布尔值,例如某个特征字段的值在一个时间窗口内出现的频次是否符合设定的值。例如若活动的参数也就是特征字段名称为i p的参数值是否在在周期为1440分钟内出现了20次。
需要说明的是,在创建的算式类型不同的情况下,节点在运行规则引擎时,对不同类型的算式处理方式也不同。具体来说,对不含系统值类型的算式,直接在规则引擎上进行运算;对含有频率值类型的算式,以异步解耦的方式将算式发送到第三方系统以进行运算。第三方系统例如Flink系统,Flink系统在执行程序后被映射到流数据流,每个Flink数据流以一个或多个源(数据输入,例如消息队列或文件系统)开始,并以一个或多个接收器(数据输出,如消息队列、文件系统或数据库等)结束。通过将CPU密集型的任务交付Flink进行处理,规则引擎运行时只负责规则的触发,实现了系统间的分离。
根据本发明的又一个实施例,算式还包括字段比较类型,字段比较类型用于比较多个特征字段之间是否符合预设逻辑关系,以生成布尔值,例如两个字段之间的差值关系。
一个规则通常情况下由多个算式之间的逻辑操作组成,也可以根据需求对一个规则配置一个算式。根据本发明的一个实施例,算式之间逻辑操作包括并操作以及或操作。具体来说,如果为并且的话,根据算式的左结合性原理,即优先计算从左边开始的两个算式的逻辑结果,该逻辑结果再与从左起的第三个算计再进行以从左开始第二个算式配置的逻辑关系进行计算,会计算两个算式的逻辑&&;如果为或者的话,会计算两个算式的逻辑||。规则的最终结果,为该规则中包含的所有算式应用以上计算逻辑后的逻辑结果。
进一步地,一个规则中定义的算式既可以是相同类型的算式,也可以是不同类型的算式,创建算式的时候可以根据具体的业务需求创建相应的算式类型。为了确保反作弊的行为可以追溯,根据特征字段配置多个算式之后,还包括步骤:记录算式的添加和修改历史,方便运营人员进行反作弊拦截行为的问题排查。
接着,在步骤S230中,基于一个或者多个规则创建规则集,规则集包括对多个规则运行结果的逻辑操作。
根据本发明的一个实施例,规则集定义了位于同一个规则集中的所有规则的逻辑操作,是并操作还是或操作。如果是并操作会对所有的位于当前规则集中的规则返回类型进行并操作后返回给活动方;如果是或操作会对所有的位于当前规则集中的规则返回类型进行或操作后返回给活动方。一个活动对象对应一个规则集,后续步骤中可将规则中的共性属性提取到规则集中,利于对规则的管理。
根据本发明的一个实施例,选择活动对象,根据活动对象设置多个特征字段之后,还包括步骤:判断是否存在特征字段符合预设类型,若符合预设类型则根据特征字段自动创建规则对规则集进行补充。自动创建的规则包括IP规则、SessionId规则、用户规则、手机号规则和UA规则等。这些自动化规则是系统提前定义好的,内置的一组规则。例如在配置特征字段的时候,自动让规则引擎从特征字段的维度进行风险识别,例如与该特征字段对应的值是否在黑名单数据中,无论从反作弊的流程上还是执行效率上都是对规则执行的有利补充。这些自动生成的规则模式的规则类型为正常规则,发布前无需测试,通过提供这些自动化规则提高了运营人员的效率。
最后,在步骤S240中,根据所创建的规则生成规则元数据,将与规则集相关的一个或多个规则的元数据发送到多个节点,以便在规则引擎中执行,以确定活动对象相关联的数据是否命中规则集。规则发布是将规则输送到规则运行时节点集群中,选好规则和节点后,运营人员点击界面上所提供的发布按钮即可发布。
规则发布时会结合规则本身的信息与组成该规则的各个算式的信息生成用于规则引擎运行时所能识别的规则元数据,规则元数据的内容根据规则中所包含的算式的内容的不同而不同。
例如若规则中定义了类型是固定值的算式,那么生成规则时规则元数据就会包含类似“name=张三”,即若活动的参数也就是特征字段名称为name的参数值等于张三时规则被触发的计算过程;又如若规则中定义了类型是频率值那么生成的规则元数据就会包含类似“"ip_1440">20”,即若活动的参数也就是特征字段名称为ip的参数值若在周期为1440分钟内出现了20次时规则被触发的计算过程。需要说明的是,规则引擎在执行规则元数据时,对含有频率值类型的算式,会以异步解耦的方式将算式发送到第三方系统以进行运算。本发明对规则的发布形式不做限制,单规则多节点,多规则多节点,单规则单节点和多规则单节点都适用于本发明,当规则发生变化时候可以按照变化事件通知到集群中各个处理节点,使最新规则实时生效。
根据本发明的一个实施例,规则发布前对规则进行A/B测试。简单来说,就是为同一个目标制定两个规则,让一部分用户使用A规则,另一部分用户使用B规则,记录下用户的使用情况,看哪个方案更符合设计。A/B测试其实是一种“先验”的实验体系,属于预测型结论,与“后验”的归纳性结论差别巨大。A/B测试的目的在于通过科学的实验设计、采样样本代表性、流量分割与小流量测试等方式来获得具有代表性的实验结论,并确信该结论在推广到全部流量可信。
根据本方法配置好的规则引擎在执行过程中,获取活动对象对应的接口数据,并调用如前述方法所配置的规则引擎,以获取对接口数据执行规则的返回结果。具体来说,首先接口数据进行安全性和有效性的验证,对于非法的请求直接返回给客户端活动方错误信息,类似“缺少必要的参数”等,对于合法的请求会进入到下一步的规则引擎运行时处理过程当中。对于当前活动的请求从活动请求的参数中获取标识来区分当前发出请求的活动对象。确定了活动对象后只进行隶属于当前活动对象的规则集中的规则进行风控拦截,除此之外的规则并不会执行。对于含有频率值类型算式的规则以异步解耦的方式将需要进行CPU密集型的计算发送到Kafka,进而利用第三方Flink系统进行流式频率统计;对于不含有频率值类型算式的规则直接由规则引擎运行时进行计算。
规则引擎根据用户请求的数据、Flink计算出的结果(主要针对频率值)进行规则计算,规则的最终执行结果即为规则引擎运行时执行该规则的结果。返回给客户端活动方的最终结果为与该活动方相关的规则集下的所有规则的执行结果进行逻辑计算后的结果。规则一般的执行结果为通过或拒绝,而对于一些不好判断的数据,例如该规则对于当前活动的本次请求识别为潜在的风险请求,规则执行的结果会为待审,被判为待审的数据需要运营人员人为进行判断,避免误伤正常数据,集合待审结果的具体的逻辑计算的过程为:若与该活动相关的规则集属性规则执行结果逻辑为并操作的话,若规则执行结果中既有拒绝也有待审,那么最终结果为待审,否则为拒绝;若与该活动相关的规则集属性规则执行结果逻辑为或操作的话,若规则执行结果中既有拒绝也有待审,那么最终结果为拒绝,否则为待审。
根据本发明的一个实施例,获取对接口数据执行规则的返回结果后,还包括步骤:记录每个规则的命中情况,并反馈给所调用的规则引擎。返回结果和命中情况都会进入数据持久化保存,目的是为了给运营人员提供实时风控数据报表服务,方便运营人员实时查看当前的活动启动流量,为其下一步的运营动作提供参考。在活动的工程中运营人员可以通过规则引擎提供的频率统计、黑名单、规则执行记录统计等功能查看实时反作弊拦截数据统计情况,对于作弊明显的用户进行黑名单配置,从而实现精确性的风控反作弊拦截。
根据本发明的技术方案,通过在前端上提供的配置界面上的业务人员的选择和简单输入等形式,选择活动对象、配置规则和业务逻辑,后台再根据所创建的规则生成规则元数据,将业务规则与风控系统解耦,实现了以分布式形式部署规则引擎节点,规则实时更新,实时下发和实时执行,可以通过不修改代码不重启项目的情况下实现规则的实时加载更新,并降低了业务人员配置规则的成本。其中,每个规则为多个算式之间的逻辑操作,算式包括系统值类型和频率值类型,系统值类型用于调用本地数据,判断特征字段和本地数据之间的逻辑关系是否符合预设逻辑关系;频率值类型用于根据特征字段在预设周期里出现的频次,判断所述频次值和指定值是否符合预设逻辑关系。规则引擎在执行规则元数据时,对含有频率值类型的算式,以异步解耦的方式将算式发送到第三方系统以进行运算。通过专门的系统负责专门的功能,对频率值类型的计算规则采用第三方性能更高的系统进行计算,规则引擎运行时只负责规则的触发,实现了系统间的分离,提高了用户的使用体验。
每个活动对象的特征字段和ES搜索引擎属性映射信息存储于Codis索引系统中,以兼容多个活动对象对规则引擎的调用。通过暴露规则引擎运行时接口形式,实时判断活动流量,识别潜在威胁,并将结果反馈给活动方,同时将本次请求的信息、各个规则的执行情况和最终结果存入数据库,为后续无论是离线智能风控数据分析还是风控反作弊报表提供数据决策支持。
为了结合应用对上述方法进一步阐述,图3示出了根据本发明的一个实施例的规则引擎配置和发布装置300的示意图,规则引擎配置和发布装置300包括:活动对象配置模块310、特征字段配置模块320、算式配置模块330、规则集配置模块340、规则发布模块350。具体地,活动对象是具体参与风控反作弊识别的主体,一个活动对象只能属于一个业务方。业务方例如客户端中不同的应用程序,而活动对象则是存在于应用程序中不同的功能页面,例如视频分享软件中的小视频点赞活动,计算设备适于获取活动对象对应的业务方接口数据,并调用本发明所配置的规则引擎,以获取对接口数据执行规则的返回结果。
活动对象配置模块310,用于获取用户的活动对象配置数据,以及提供配置完成的活动对象的选择界面。根据本发明的一个实施例,活动对象配置模块进一步用于,初次配置活动对象的规则时,添加与活动对象对接的标识、密钥、负责人。图4示出了根据本发明的一个实施例的规则引擎配置和发布装置300提供的活动对象配置界面图,该步骤的目的是为设置的业务方纬度添加对应业务活动信息,活动名称表明了要接入规则引擎系统的活动信息,活动方在请求规则引擎运行时时,规则引擎运行时会根据接入标识区分不同的活动。密钥和负责人同时构成了对接规则引擎的安全加密信息,活动方和规则引擎运行时对接时,根据此安全加密信息进行身份的认证和识别。
特征字段配置模块320,用于根据活动对象设置多个特征字段。特征字段表明了从接口数据的哪些维度进行识别,例如用户ID、用户手机号、注册时间、最后登录时间等。图5示出了根据本发明的一个实施例的规则引擎配置和发布装置300提供的特征字段配置界面图。本发明将每个维度的特征字段单独提取出来,运营人员只需要在本发明所提供的配置界面上,对多个特征对象通过选择或简单输入进行配置,即可实现多维度组合下的规则下发。进一步地,每个活动对象的特征字段和ES(Elasticsearch)搜索引擎属性映射信息存储于Codis索引系统中,以兼容多个活动对象对规则引擎的调用。
算式配置模块330,用于根据特征字段提供算式配置界面,并获取用户根据所述特征字段配置多个算式、以及多个算式布尔值之间的逻辑操作的数据,以构成规则。图6示出了根据本发明的一个实施例的规则引擎配置和发布装置300提供的算式配置界面图。创建算式的时候从下拉列表中可以选择算式的类型,算式包括固定值、列表值、系统值、频率值、字段比较等类型。从参与计算的特征字段数量纬度进行区分,除字段比较是多特征字段计算外,其余的算式类型均为单特征字段计算。从是否创建内部字段的纬度进行区分,除固定值和列表值以外,其余的类型需要自动生成特征字段。
其中,固定值类型用于判断特征字段和指定单值是否符合预设逻辑关系,以生成布尔值,例如判断“age”特征字段的是否是18;列表值类型用于判断特征字段和指定多值是否符合预设逻辑值,以生成布尔值,例如判断“name”特征字段是否是张三、李四或者王五其中的一个。系统值类型用于调用本地数据,判断特征字段和本地数据之间的逻辑关系是否符合预设逻辑关系,以生成布尔值,例如调用系统黑名单,判断特征字段是否存在于系统黑名单中;频率值类型用于根据特征字段在预设周期里出现的频次,判断频次值和指定值是否符合预设逻辑关系,以生成布尔值,例如某个特征字段的值在一个时间窗口内出现的频次是否符合设定的值,例如若活动的参数也就是特征字段名称为ip的参数值是否在在周期为1440分钟内出现了20次;字段比较类型用于比较多个特征字段之间是否符合预设逻辑关系,以生成布尔值,例如两个字段之间的差值关系。
进一步地,为了确保反作弊的行为可以追溯,算式配置模块330进一步用于,根据所述特征字段配置多个算式之后,记录算式的添加和修改历史,方便运营人员进行反作弊拦截行为的问题排查。
需要说明的是,在创建的算式类型不同的情况下,节点在运行规则引擎时,对不同类型的算式处理方式也不同。具体来说,对不含系统值类型的算式,直接在规则引擎上进行运算;对含有频率值类型的算式,以异步解耦的方式将算式发送到第三方系统以进行运算。第三方系统例如Flink系统,Flink系统在执行程序后被映射到流数据流,每个Flink数据流以一个或多个源(数据输入,例如消息队列或文件系统)开始,并以一个或多个接收器(数据输出,如消息队列、文件系统或数据库等)结束。通过将CPU密集型的任务交付Flink进行处理,规则引擎运行时只负责规则的触发,实现了系统间的分离。
规则集配置模块340,用于根据规则提供规则集的配置界面,并获取用户配置规则集和规则集中每个规则的返回类型的数据,规则集包括对多个规则返回类型的逻辑操作。图7示出了根据本发明的一个实施例的规则引擎配置和发布装置300提供的规则集配置界面图。一个规则通常情况下由多个算式之间的逻辑操作组成,也可以根据需求对一个规则配置一个算式。根据本发明的一个实施例,算式之间逻辑操作包括并操作以及或操作。算式之间逻辑操作包括并操作以及或操作。具体来说,如果为并且的话,根据算式的左结合性原理,即优先计算从左边开始的两个算式的逻辑结果,该逻辑结果再与从左起的第三个算计再进行以从左开始第二个算式配置的逻辑关系进行计算,会计算两个算式的逻辑&&;如果为或者的话,会计算两个算式的逻辑||。规则的最终结果,为该规则中包含的所有算式应用以上计算逻辑后的逻辑结果,创建算式的时候可以根据具体的业务需求创建相应的算式类型。
规则集包括对多个规则返回类型的逻辑操作,规则一般的执行结果为通过或拒绝,而对于一些不好判断的数据,例如该规则对于当前活动的本次请求识别为潜在的风险请求,规则执行的结果会为待审,被判为待审的数据需要运营人员人为进行判断,避免误伤正常数据,集合待审结果的具体的逻辑计算的过程为:若与该活动相关的规则集属性规则执行结果逻辑为并操作的话,若规则执行结果中既有拒绝也有待审,那么最终结果为待审,否则为拒绝;若与该活动相关的规则集属性规则执行结果逻辑为或操作的话,若规则执行结果中既有拒绝也有待审,那么最终结果为拒绝,否则为待审。
根据本发明的一个实施例,规则集配置模块340进一步用于,判断是否存在特征字段符合预设类型,若符合预设类型则根据特征字段自动创建规则对规则集进行补充。自动创建的规则包括IP规则、SessionId规则、用户规则、手机号规则和UA规则等。这些自动化规则是系统提前定义好的,内置的一组规则。例如在配置特征字段的时候,自动让规则引擎从特征字段的维度进行风险识别,例如与该特征字段对应的值是否在黑名单数据中,无论从反作弊的流程上还是执行效率上都是对规则执行有利的补充。
规则发布模块350,用于根据所创建的规则生成规则元数据,将与规则集相关的一个或多个规则的元数据发送到多个节点,以便在规则引擎中执行,以确定活动对象相关联的数据是否命中规则集。规则发布是将规则输送到规则运行时节点集群中,选好规则和节点后,运营人员点击界面上所提供的发布按钮即可发布。规则发布时会结合规则本身的信息与组成该规则的各个算式的信息生成用于规则引擎运行时所能识别的规则元数据,规则元数据的内容根据规则中所包含的算式的内容的不同而不同。本发明对规则的发布形式不做限制,单规则多节点,多规则多节点,单规则单节点和多规则单节点都适用于本发明,当规则发生变化时候可以按照变化事件通知到集群中各个处理节点,使最新规则实时生效。
进一步地,规则发布模块350用于规则发布前对规则进A/B测试。简单来说,就是为同一个目标制定两个规则,让一部分用户使用A规则,另一部分用户使用B规则,记录下用户的使用情况,看哪个方案更符合设计。A/B测试其实是一种“先验”的实验体系,属于预测型结论,与“后验”的归纳性结论差别巨大。A/B测试的目的在于通过科学的实验设计、采样样本代表性、流量分割与小流量测试等方式来获得具有代表性的实验结论,并确信该结论在推广到全部流量可信。
根据本发明的一个实施例,获取对接口数据执行规则的返回结果后,还包括步骤:记录每个规则的命中情况,并反馈给所调用的规则引擎。返回结果和命中情况都会进入数据持久化保存,目的是为了给运营人员提供实时风控数据报表服务,方便运营人员实时查看当前的活动启动流量,为其下一步的运营动作提供参考。在活动的工程中运营人员可以通过规则引擎提供的频率统计、黑名单、规则执行记录统计等功能查看实时反作弊拦截数据统计情况,对于作弊明显的用户进行黑名单配置,从而实现精确性的风控反作弊拦截。
根据本发明的技术方案,通过在前端上提供的配置界面上的业务人员的选择和简单输入等形式,选择活动对象、配置规则和业务逻辑,后台再根据所创建的规则生成规则元数据,将业务规则与风控系统解耦,实现了以分布式形式部署规则引擎节点,规则实时更新,实时下发和实时执行,可以通过不修改代码不重启项目的情况下实现规则的实时加载更新,并降低了业务人员配置规则的成本。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的。
Claims (24)
1.一种规则配置和发布方法,所述方法在计算设备中执行,所述计算设备与多个节点连接,所述节点适于运行规则引擎,所述方法包括步骤:
初次为活动对象设置多个特征字段时,添加与活动对象对接的标识、密钥、负责人;
选择活动对象,根据活动对象设置多个特征字段;
判断是否存在特征字段符合预设类型,若符合预设类型则根据特征字段自动创建规则对规则集进行补充;
创建一个或多个规则,每个规则为多个算式之间的逻辑操作,每个算式在一个或者多个特征字段上配置;
基于所述一个或者多个规则创建规则集,所述规则集包括对多个规则运行结果的逻辑操作;
根据所创建的规则生成规则元数据,将与所述规则集相关的一个或多个规则的元数据发送到所述多个节点,以便在所述规则引擎中执行,以确定所述活动对象相关联的数据是否命中所述规则集,其中,所述元数据为基于规则本身的信息与组成该规则的各个算式的信息生成的可以被规则引擎识别的数据。
2.如权利要求1所述的方法,所述算式包括固定值类型和列表值类型,其中,
所述固定值类型用于判断特征字段和指定单值是否符合预设逻辑关系,以生成布尔值;
所述列表值类型用于判断特征字段和指定多值是否符合预设逻辑值,以生成布尔值。
3.如权利要求1或2所述的方法,所述算式还包括系统值和频率值,其中,
所述系统值类型用于调用本地数据,判断特征字段和本地数据之间的逻辑关系是否符合预设逻辑关系,以生成布尔值;
所述频率值类型用于根据特征字段在预设周期里出现的频次,判断所述频次值和指定值是否符合预设逻辑关系,以生成布尔值。
4.如权利要求1或2所述的方法,所述算式还包括字段比较类型,所述字段比较类型用于比较多个特征字段之间是否符合预设逻辑关系,以生成布尔值。
5.如权利要求3所述的方法,所述规则引擎在执行规则元数据时,对不含系统值类型的算式,直接在规则引擎上进行运算。
6.如权利要求3所述的方法,所述规则引擎在执行规则元数据时,对含有频率值类型的算式,以异步解耦的方式将算式发送到第三方系统以进行运算。
7.如权利要求4所述的方法,每个活动对象的特征字段和搜索引擎属性映射信息存储于索引系统中,以兼容多个活动对象对规则引擎的调用。
8.如权利要求1或2所述的方法,规则发布前对规则进行A/B测试。
9.如权利要求1或2所述的方法,所述根据所述特征字段配置多个算式之后,还包括步骤:记录算式的添加和修改历史。
10.如权利要求1或2所述的方法,所述逻辑操作包括并操作以及或操作。
11.一种规则引擎配置和发布装置,所述装置包括:
活动对象配置模块,用于获取用户的活动对象配置数据,以及提供配置完成的活动对象的选择界面;
特征字段配置模块,用于根据活动对象设置多个特征字段;
算式配置模块,用于根据特征字段提供算式配置界面,并获取用户根据所述特征字段配置多个算式、以及多个算式布尔值之间的逻辑操作的数据,以构成规则;
规则集配置模块,用于根据所述规则提供规则集的配置界面,并获取用户配置规则集和规则集中每个规则的返回类型的数据,所述规则集包括对多个规则返回类型的逻辑操作;
规则发布模块,用于根据所创建的规则生成规则元数据,将与所述规则集相关的一个或多个规则的元数据发送到所述多个节点,以便在所述规则引擎中执行,以确定所述活动对象相关联的数据是否命中所述规则集,其中,所述元数据为基于规则本身的信息与组成该规则的各个算式的信息生成的可以被规则引擎识别的数据;
其中,所述活动对象配置模块进一步用于,初次配置活动对象的规则时,添加与活动对象对接的标识、密钥、负责人;
其中,所述规则集配置模块进一步用于,判断是否存在特征字段符合预设类型,若符合预设类型则根据特征字段自动创建规则对规则集进行补充。
12.如权利要求11所述的装置,所述算式包括固定值类型和列表值类型,其中,
所述固定值类型用于判断特征字段和指定单值是否符合预设逻辑关系,以生成布尔值;
所述列表值类型用于判断特征字段和指定多值是否符合预设逻辑值,以生成布尔值。
13.如权利要求11或12所述的装置,所述算式还包括系统值和频率值,其中,
所述系统值类型用于调用本地数据,判断特征字段和本地数据之间的逻辑关系是否符合预设逻辑关系,以生成布尔值;
所述频率值类型用于根据特征字段在预设周期里出现的频次,判断所述频次值和指定值是否符合预设逻辑关系,以生成布尔值。
14.如权利要求11或12所述的装置,所述算式还包括字段比较类型,所述字段比较类型用于比较多个特征字段之间是否符合预设逻辑关系,以生成布尔值。
15.如权利要求13所述的装置,所述规则引擎在执行规则元数据时,对不含系统值类型的算式,直接在规则引擎上进行运算。
16.如权利要求13所述的装置,所述规则引擎在执行规则元数据时,对含有频率值类型的算式,以异步解耦的方式将算式发送到第三方系统以进行运算。
17.如权利要求11或12所述的装置,每个活动对象的特征字段和搜索引擎属性映射信息存储于索引系统中,以兼容多个活动对象对规则引擎的调用。
18.如权利要求11或12所述的装置,所述规则发布模块进一步用于,规则发布前对规则进行A/B测试。
19.如权利要求11或12所述的装置,所述算式配置模块进一步用于,根据所述特征字段配置多个算式之后,记录算式的添加和修改历史。
20.如权利要求11或12所述的装置,所述逻辑操作包括并操作以及或操作。
21.一种规则引擎的调用方法,所述方法适于在计算设备上执行,所述计算设备适于获取活动对象对应的接口数据,并调用如权利要求11-20中任一项装置所配置的规则引擎,以获取对接口数据执行规则的返回结果。
22.如权利要求21所述的方法,所述获取对接口数据执行规则的返回结果后,还包括步骤:
记录每个规则的命中情况,并反馈给所调用的规则引擎。
23.一种计算设备,包括:
至少一个处理器;以及
存储器,存储有程序指令,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如权利要求1-10、21、22中任一项所述的方法的指令。
24.一种存储有程序指令的可读存储介质,当所述程序指令被客户端读取并执行时,使得所述客户端执行如权利要求1-10、21、22中任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010659347.2A CN111932076B (zh) | 2020-07-09 | 2020-07-09 | 一种规则配置和发布方法、装置及计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010659347.2A CN111932076B (zh) | 2020-07-09 | 2020-07-09 | 一种规则配置和发布方法、装置及计算设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111932076A CN111932076A (zh) | 2020-11-13 |
CN111932076B true CN111932076B (zh) | 2023-12-12 |
Family
ID=73312765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010659347.2A Active CN111932076B (zh) | 2020-07-09 | 2020-07-09 | 一种规则配置和发布方法、装置及计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111932076B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112422695A (zh) * | 2020-12-07 | 2021-02-26 | 重庆忽米网络科技有限公司 | 一种支持多协议多规则的工业设备数据转发方法 |
CN113205312A (zh) * | 2021-05-13 | 2021-08-03 | 深圳供电局有限公司 | 电力用户档案管理方法及系统、计算机设备、存储介质 |
Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019726A (zh) * | 2012-12-19 | 2013-04-03 | 中国电子科技集团公司第十五研究所 | 软件系统业务规则的管理方法和装置 |
CN103092967A (zh) * | 2013-01-22 | 2013-05-08 | 交通银行股份有限公司 | 一种基于规则引擎的业务规则决策方法及装置 |
CN103942228A (zh) * | 2013-01-23 | 2014-07-23 | 纽海信息技术(上海)有限公司 | 规则引擎、计算方法、业务系统及调用方法 |
CN104699472A (zh) * | 2013-12-06 | 2015-06-10 | 大连灵动科技发展有限公司 | 采用规则引擎解决业务流程频繁变动与软件维护之间的矛盾的方法 |
CN104966239A (zh) * | 2015-06-30 | 2015-10-07 | 天津爱蔻科技有限公司 | 一种基于规则引擎的智能核保平台 |
CN105446799A (zh) * | 2014-08-22 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 一种计算机系统中进行规则管理的方法及系统 |
CN105573737A (zh) * | 2014-10-30 | 2016-05-11 | 中国科学院声学研究所 | 一种提高规则引擎运行效率的方法 |
CN106777029A (zh) * | 2016-12-08 | 2017-05-31 | 中国科学技术大学 | 一种分布式规则引擎系统及其构建方法 |
CN106933889A (zh) * | 2015-12-31 | 2017-07-07 | 华为技术有限公司 | 用于筛选的规则的配置方法、显示方法和客户端 |
CN107632842A (zh) * | 2017-09-26 | 2018-01-26 | 携程旅游信息技术(上海)有限公司 | 规则配置和发布方法、系统、设备及存储介质 |
EP3401799A1 (en) * | 2017-05-12 | 2018-11-14 | Sage Global Services Limited | Data storage method and apparatus |
CN109144374A (zh) * | 2018-09-27 | 2019-01-04 | 范若愚 | 基于可视化规则引擎的业务处理方法、系统及相关设备 |
CN109299150A (zh) * | 2018-10-24 | 2019-02-01 | 万惠投资管理有限公司 | 一种可配置多数据源适配规则引擎解决方法 |
CN109857833A (zh) * | 2018-12-30 | 2019-06-07 | 贝壳技术有限公司 | 一种规则引擎实现方法、装置及电子设备 |
WO2019179056A1 (zh) * | 2018-03-18 | 2019-09-26 | 平安科技(深圳)有限公司 | 基于规则引擎的可配置化系统、方法、设备和存储介质 |
CN110532041A (zh) * | 2019-08-29 | 2019-12-03 | 深圳前海环融联易信息科技服务有限公司 | 规则引擎参数配置方法、装置、计算机设备及存储介质 |
CN110688403A (zh) * | 2019-09-23 | 2020-01-14 | 中国船舶重工集团公司第七一六研究所 | Activiti流程人工节点办理人筛选引擎 |
CN110764913A (zh) * | 2019-10-28 | 2020-02-07 | 卫盈联信息技术(深圳)有限公司 | 基于规则调用的数据计算方法、客户端及可读存储介质 |
CN110766289A (zh) * | 2019-09-26 | 2020-02-07 | 北京淇瑀信息科技有限公司 | 一种风控规则动态调整方法、装置和电子设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060224613A1 (en) * | 2005-03-31 | 2006-10-05 | Bermender Pamela A | Method and system for an administrative apparatus for creating a business rule set for dynamic transform and load |
US8595231B2 (en) * | 2007-04-26 | 2013-11-26 | International Business Machines Corporation | Ruleset generation for multiple entities with multiple data values per attribute |
US8930298B2 (en) * | 2011-11-22 | 2015-01-06 | International Business Machines Corporation | Rules engine ecosystem developed with an object cache framework |
US10867273B2 (en) * | 2014-09-26 | 2020-12-15 | Oracle International Corporation | Interface for expanding logical combinations based on relative placement |
-
2020
- 2020-07-09 CN CN202010659347.2A patent/CN111932076B/zh active Active
Patent Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019726A (zh) * | 2012-12-19 | 2013-04-03 | 中国电子科技集团公司第十五研究所 | 软件系统业务规则的管理方法和装置 |
CN103092967A (zh) * | 2013-01-22 | 2013-05-08 | 交通银行股份有限公司 | 一种基于规则引擎的业务规则决策方法及装置 |
CN103942228A (zh) * | 2013-01-23 | 2014-07-23 | 纽海信息技术(上海)有限公司 | 规则引擎、计算方法、业务系统及调用方法 |
CN104699472A (zh) * | 2013-12-06 | 2015-06-10 | 大连灵动科技发展有限公司 | 采用规则引擎解决业务流程频繁变动与软件维护之间的矛盾的方法 |
CN105446799A (zh) * | 2014-08-22 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 一种计算机系统中进行规则管理的方法及系统 |
CN105573737A (zh) * | 2014-10-30 | 2016-05-11 | 中国科学院声学研究所 | 一种提高规则引擎运行效率的方法 |
CN104966239A (zh) * | 2015-06-30 | 2015-10-07 | 天津爱蔻科技有限公司 | 一种基于规则引擎的智能核保平台 |
CN106933889A (zh) * | 2015-12-31 | 2017-07-07 | 华为技术有限公司 | 用于筛选的规则的配置方法、显示方法和客户端 |
CN106777029A (zh) * | 2016-12-08 | 2017-05-31 | 中国科学技术大学 | 一种分布式规则引擎系统及其构建方法 |
EP3401799A1 (en) * | 2017-05-12 | 2018-11-14 | Sage Global Services Limited | Data storage method and apparatus |
CN107632842A (zh) * | 2017-09-26 | 2018-01-26 | 携程旅游信息技术(上海)有限公司 | 规则配置和发布方法、系统、设备及存储介质 |
WO2019179056A1 (zh) * | 2018-03-18 | 2019-09-26 | 平安科技(深圳)有限公司 | 基于规则引擎的可配置化系统、方法、设备和存储介质 |
CN109144374A (zh) * | 2018-09-27 | 2019-01-04 | 范若愚 | 基于可视化规则引擎的业务处理方法、系统及相关设备 |
CN109299150A (zh) * | 2018-10-24 | 2019-02-01 | 万惠投资管理有限公司 | 一种可配置多数据源适配规则引擎解决方法 |
CN109857833A (zh) * | 2018-12-30 | 2019-06-07 | 贝壳技术有限公司 | 一种规则引擎实现方法、装置及电子设备 |
CN110532041A (zh) * | 2019-08-29 | 2019-12-03 | 深圳前海环融联易信息科技服务有限公司 | 规则引擎参数配置方法、装置、计算机设备及存储介质 |
CN110688403A (zh) * | 2019-09-23 | 2020-01-14 | 中国船舶重工集团公司第七一六研究所 | Activiti流程人工节点办理人筛选引擎 |
CN110766289A (zh) * | 2019-09-26 | 2020-02-07 | 北京淇瑀信息科技有限公司 | 一种风控规则动态调整方法、装置和电子设备 |
CN110764913A (zh) * | 2019-10-28 | 2020-02-07 | 卫盈联信息技术(深圳)有限公司 | 基于规则调用的数据计算方法、客户端及可读存储介质 |
Non-Patent Citations (4)
Title |
---|
一种分布式规则引擎的实现方法;朱思远;张雷;;软件(第12期);158-161+170 * |
基于规则引擎及智能阈值的实时业务风控系统;张鲁男;常宝岗;梅利;;通信技术(第11期);146-150 * |
基于规则引擎的机票售后系统设计;黄烈甫;;现代信息科技(第05期);16-19 * |
改进的规则引擎在无线增值业务中的应用;彭磊;肖延丽;孙静;许婷婷;;计算机应用与软件(第02期);227-229 * |
Also Published As
Publication number | Publication date |
---|---|
CN111932076A (zh) | 2020-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102514325B1 (ko) | 모델 훈련 시스템 및 방법과, 저장 매체 | |
US8095547B2 (en) | Method and apparatus for detecting spam user created content | |
CN105431844B (zh) | 用于搜索系统的第三方搜索应用 | |
US11947605B2 (en) | Automatically separating claim into elements/limitations and automatically finding art for each element/limitation | |
CN110929125B (zh) | 搜索召回方法、装置、设备及其存储介质 | |
CN109726280B (zh) | 一种针对同名学者的排歧方法及装置 | |
CN112035599B (zh) | 基于垂直搜索的查询方法、装置、计算机设备及存储介质 | |
CN111932076B (zh) | 一种规则配置和发布方法、装置及计算设备 | |
CN109951469B (zh) | 一种创建域名黑白名单的方法、装置、存储介质和服务器 | |
CN109740129B (zh) | 基于区块链的报表生成方法、装置、设备及可读存储介质 | |
US20100169982A1 (en) | License management apparatus, license management method, and computer readable medium | |
CN111767445A (zh) | 数据搜索方法、装置、计算机设备和存储介质 | |
CN112883030A (zh) | 数据收集方法、装置、计算机设备和存储介质 | |
US20220237240A1 (en) | Method and apparatus for collecting information regarding dark web | |
CN110781676B (zh) | 一种文本处理方法、装置、系统、电子设备及存储介质 | |
CN115238247A (zh) | 基于零信任数据访问控制系统的数据处理方法 | |
CN112884442B (zh) | 一种基于审计模型的审计监控数据的获取方法及系统 | |
CN110245297A (zh) | 一种面向图书关键词搜索的用户主题隐私保护方法及系统 | |
CN109087053B (zh) | 基于关联拓扑图的协同办公处理方法、装置、设备及介质 | |
CN113591162B (zh) | 区块链存证方法、装置和计算机设备 | |
US20140195561A1 (en) | Search method and information managing apparatus | |
CN109327488B (zh) | 网络信息推送方法、装置及服务器 | |
CN115545976A (zh) | 跨境商标注册方法、系统、装置及计算机可读存储介质 | |
CN114756622A (zh) | 一种基于数据湖的政务数据共享交换系统 | |
CN111695031A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |