CN112767133B - 业务决策方法及装置、存储介质、计算机设备 - Google Patents
业务决策方法及装置、存储介质、计算机设备 Download PDFInfo
- Publication number
- CN112767133B CN112767133B CN202110105285.5A CN202110105285A CN112767133B CN 112767133 B CN112767133 B CN 112767133B CN 202110105285 A CN202110105285 A CN 202110105285A CN 112767133 B CN112767133 B CN 112767133B
- Authority
- CN
- China
- Prior art keywords
- rule
- policy matching
- data
- wind control
- target wind
- 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 56
- 230000009471 action Effects 0.000 claims abstract description 29
- 238000004088 simulation Methods 0.000 claims description 89
- 238000000605 extraction Methods 0.000 claims description 81
- 230000000977 initiatory effect Effects 0.000 claims description 18
- 238000012790 confirmation Methods 0.000 claims description 15
- 238000005516 engineering process Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 3
- 230000002776 aggregation Effects 0.000 description 8
- 238000004220 aggregation Methods 0.000 description 8
- 238000011161 development Methods 0.000 description 6
- 238000012423 maintenance Methods 0.000 description 6
- 238000013075 data extraction Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000007619 statistical method Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008602 contraction Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 238000012360 testing method 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/03—Credit; Loans; Processing thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45508—Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
- G06F9/45512—Command shells
-
- 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/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Entrepreneurship & Innovation (AREA)
- Technology Law (AREA)
- Development Economics (AREA)
- Data Mining & Analysis (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种基于规则引擎的业务决策方法及装置、存储介质、计算机设备,该方法包括:接收待决策的目标风控业务,获取所述目标风控业务对应的传入数据以及所述目标风控业务对应的多条策略匹配规则;根据所述策略匹配规则对应的输入特征数据类型以及所述传入数据,提取所述目标风控业务对应的输入特征数据;依据所述输入特征数据以及所述策略匹配规则,对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果;按照所述策略匹配规则的状态,执行与所述决策结果对应的策略匹配动作。
Description
技术领域
本申请涉及计算机技术领域,尤其是涉及到一种基于规则引擎的业务决策方法及装置、存储介质、计算机设备。
背景技术
随着互联网技术的发展,有越来越多的企业开展消费金融等存在风控需求的业务,例如个人信贷业务等。风控的日常需求充斥着大量的策略规则,其中,主要的逻辑是针对业务事件源数据的各类逻辑判断。现有技术中的应对模式是,将一系列的策略穿插在业务逻辑中,在该模式中策略逻辑和业务逻辑糅合在一起,代码复用率低,且维护成本较高。
发明内容
根据本申请的一个方面,提供了一种基于规则引擎的业务决策方法,包括:接收待决策的目标风控业务,获取所述目标风控业务对应的传入数据以及所述目标风控业务对应的多条策略匹配规则;
根据所述策略匹配规则对应的输入特征数据类型以及所述传入数据,提取所述目标风控业务对应的输入特征数据;
依据所述输入特征数据以及所述策略匹配规则,对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果;
按照所述策略匹配规则的状态,执行与所述决策结果对应的策略匹配动作。
可选地,所述按照所述策略匹配规则的状态,执行与所述决策结果对应的策略匹配动作,具体包括:
获取仿真状态下的第一策略匹配规则,将与所述第一策略匹配规则对应的第一决策结果保存在预设仿真存储位置;和/或,
获取发布状态下的第二策略匹配规则,将与所述第二策略匹配规则对应的第二决策结果写入预设结果存储位置和/或向目标地址发送所述第二决策结果。
可选地,所述将与所述第一策略匹配规则对应的决策结果保存在预设仿真存储位置之后,所述方法还包括:
接收所述预设仿真存储位置的第一决策结果对应的仿真确认指令;
基于所述仿真确认指令,将与所述第一决策结果对应的策略匹配规则设置为发布状态,并将所述第一决策结果写入预设结果存储位置和/或向所述目标地址发送所述第一决策结果。
可选地,所述将与所述第二策略匹配规则对应的第二决策结果写入预设结果存储位置之后,所述方法还包括:
响应于结果抽取指令,从所述预设结果存储位置读取所述第二决策结果。
可选地,所述输入特征数据类型包括所述源数据类型、聚合数据类型以及规则数据类型,其中,源数据直接来源于业务方以及所述传入数据,聚合数据基于对源数据的处理产生,规则数据为依据任一策略匹配规则对所述源数据和/或所述聚合数据进行匹配后产生的匹配结果;
所述根据所述业务规则对应的输入特征数据类型以及所述传入数据,提取所述目标风控业务对应的输入特征数据,具体包括:
根据输入特征数据之间的第一依赖关系建立对应的有向图,确定各类型的输入特征数据的提取顺序,其中,所述有向图包括表示各输入特征数据的节点以及各节点之间的指向,节点之间的指向用于反应各输入特征数据对应的第一依赖关系;
按照所述提取顺序以及所述输入特征数据类型,获取所述输入特征数据。
可选地,所述依据所述输入特征数据以及所述策略匹配规则,对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果之前,所述方法还包括:
获取所述策略匹配规则之间的第二依赖关系,并根据所述第二依赖关系加载所述策略匹配规则,其中,任一策略匹配规则在其对应的依赖规则已加载的前提下进行加载,所述任一策略匹配规则的执行依赖于所述依赖规则的执行结果。
可选地,所述接收待决策的目标风控业务,具体包括:响应于业务发起对象对所述规则引擎的调用接口的调用指令,获取待决策的所述目标风控业务,其中,所述业务发起对象包括业务方终端和/或任务终端。
可选地,所述规则引擎部署在基于Kubernetes以及Docker laas技术构建的分布式集群中。
可选地,所述依据所述输入特征数据以及所述策略匹配规则,对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果,具体包括:
依据所述输入特征数据以及所述策略匹配规则,通过执行与所述策略匹配规则对应的Groovy脚本对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果,其中,所述策略匹配规则包括黑名单、白名单以及灰名单。
根据本申请的另一方面,提供了一种基于规则引擎的业务决策装置,包括:
规则获取单元,用于接收待决策的目标风控业务,获取所述目标风控业务对应的传入数据以及所述目标风控业务对应的多条策略匹配规则;
特征提取单元,用于根据所述策略匹配规则对应的输入特征数据类型以及所述传入数据,提取所述目标风控业务对应的输入特征数据;
决策确定单元,用于依据所述输入特征数据以及所述策略匹配规则,对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果;
决策执行单元,用于按照所述策略匹配规则的状态,执行与所述决策结果对应的策略匹配动作。
可选地,所述决策执行单元,具体包括:
仿真子单元,用于获取仿真状态下的第一策略匹配规则,将与所述第一策略匹配规则对应的第一决策结果保存在预设仿真存储位置;和/或,
决策子单元,用于获取发布状态下的第二策略匹配规则,将与所述第二策略匹配规则对应的第二决策结果写入预设结果存储位置和/或向目标地址发送所述第二决策结果。
可选地,所述装置还包括:
仿真确认单元,用于所述将与所述第一策略匹配规则对应的决策结果保存在预设仿真存储位置之后,接收所述预设仿真存储位置的第一决策结果对应的仿真确认指令;
状态切换单元,用于基于所述仿真确认指令,将与所述第一决策结果对应的策略匹配规则设置为发布状态,并将所述第一决策结果写入预设结果存储位置和/或向所述目标地址发送所述第一决策结果。
可选地,所述装置还包括:
结果抽取单元,用于所述将与所述第二策略匹配规则对应的第二决策结果写入预设结果存储位置之后,响应于结果抽取指令,从所述预设结果存储位置读取所述第二决策结果。
可选地,所述输入特征数据类型包括所述源数据类型、聚合数据类型以及规则数据类型,其中,源数据直接来源于业务方以及所述传入数据,聚合数据基于对源数据的处理产生,规则数据为依据任一策略匹配规则对所述源数据和/或所述聚合数据进行匹配后产生的匹配结果;
所述特征提取单元,具体包括:
顺序确定子单元,用于根据输入特征数据之间的第一依赖关系建立对应的有向图,确定各类型的输入特征数据的提取顺序,其中,所述有向图包括表示各输入特征数据的节点以及各节点之间的指向,节点之间的指向用于反应各输入特征数据对应的第一依赖关系;
特征获取子单元,用于按照所述提取顺序以及所述输入特征数据类型,获取所述输入特征数据。
可选地,所述装置还包括:
规则加载单元,用于所述依据所述输入特征数据以及所述策略匹配规则,对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果之前,获取所述策略匹配规则之间的第二依赖关系,并根据所述第二依赖关系加载所述策略匹配规则,其中,任一策略匹配规则在其对应的依赖规则已加载的前提下进行加载,所述任一策略匹配规则的执行依赖于所述依赖规则的执行结果。
可选地,所述规则获取单元,具体用于响应于业务发起对象对所述规则引擎的调用接口的调用指令,获取待决策的所述目标风控业务,其中,所述业务发起对象包括业务方终端和/或任务终端。
可选地,所述规则引擎部署在基于Kubernetes以及Docker laas技术构建的分布式集群中。
可选地,所述决策确定单元,具体用于依据所述输入特征数据以及所述策略匹配规则,通过执行与所述策略匹配规则对应的Groovy脚本对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果,其中,所述策略匹配规则包括黑名单、白名单以及灰名单。
依据本申请又一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述基于规则引擎的业务决策方法。
依据本申请再一个方面,提供了一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述基于规则引擎的业务决策方法。
借由上述技术方案,本申请提供的一种基于规则引擎的业务决策方法及装置、存储介质、计算机设备,利用规则引擎对目标风控业务进行策略匹配,确定决策结果,解决了现有技术中策略逻辑和业务逻辑糅合在一起,代码开发量大、复用率低、系统维护成本高的问题,同时,通过设置不同的策略匹配规则的状态,对不同状态的策略匹配规则对应的决策结果进行不同方式的处理,执行相应的策略匹配动作,新的策略匹配规则可以实时上线,解决了现有技术中新的策略匹配规则必须先测试后上线的问题。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了本申请实施例提供的一种基于规则引擎的业务决策方法的流程示意图;
图2示出了本申请实施例提供的一种有向图的示意图;
图3示出了本申请实施例提供的一种规则引擎调用的流程示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本实施例中提供了一种基于规则引擎的业务决策方法,如图1所示,该方法包括:
步骤201,接收待决策的目标风控业务,获取所述目标风控业务对应的传入数据以及所述目标风控业务对应的多条策略匹配规则;
步骤202,根据所述策略匹配规则对应的输入特征数据类型以及所述传入数据,提取所述目标风控业务对应的输入特征数据;
步骤203,依据所述输入特征数据以及所述策略匹配规则,对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果;
步骤204,按照所述策略匹配规则的状态,执行与所述决策结果对应的策略匹配动作。
在上述实施例中,利用预先配置的规则引擎系统可以实现对目标风控业务的策略匹配,确定决策结果。其中,接收待决策的目标风控业务,并获取目标风控业务对应的传入数据,以及与该目标风控业务对应的多条策略匹配规则。利用规则引擎的特征提取模块,提取属于输入特征数据类型但传入数据未包含的数据,在实际应用场景中在对目标风控业务进行策略匹配时,相应的目标风控业务对应的业务方(或该目标风控业务的策略匹配请求方)提供的业务参数并不一定满足每条业务规则的匹配需求,例如业务规则的匹配需要业务数据A、B、C等10种类型的数据,但请求方只提供其中的几种,这时可以通过配置规则引擎的特征提取模块,通过特征提取模块获取请求方未提供的输入特征参数,不同的业务规则所对应的输入特征数据类型具体可以包括:源数据类型、聚合数据类型以及规则数据类型,其中,源数据一般直接来源于业务方,和/或是规则引擎的特征提取模块直接从其他渠道获取不需要进行数据加工的数据,聚合数据一般是基于对源数据的处理而产生的数据,例如对源数据进行统计分析确定聚合数据,规则数据一般为某条业务规则进行匹配后产生的匹配结果。依据各业务规则对应的输入特征数据类型对特征提取模块进行配置后,特征提取模块可以按照配置的特征提取方式提取各业务规则所需的输入特征数据,从而即使在业务方无法提供完整业务数据时,规则引擎也可以通过特征提取模块获取所需数据实现对目标风控业务的策略匹配。
进一步,规则引擎还包括规则匹配模块以及决策模块的配置,其中,将每条业务规则配置为规则匹配模块中的策略匹配规则,配置后的规则匹配模块能够按照策略匹配规则的顺序及规则内容实现对目标风控业务的策略匹配,确定目标风控业务的决策结果。对目标风控业务进行策略匹配时,利用规则匹配模块对相应的策略匹配规则以及每条策略匹配规则所需的输入特征数据进行匹配,从而确定目标风控业务对应的决策结果。
另外,规则匹配模块中的策略匹配规则对应有各自的工作状态,工作状态包括发布状态和仿真状态,工作状态由仿真模块设置,规则匹配模块新发布了策略匹配规则时,将新发布的策略匹配规则设置为仿真状态,在仿真状态下规则匹配模块可以将目标风控业务中与新发布的策略匹配规则相关的仿真决策结果保存在预设仿真存储位置,测试人员可以对保存在预设仿真存储位置的仿真决策结果进行验证,若测试人员验证仿真决策结果正确,并对其进行确认后,仿真模块还可以将规则匹配模块中新发布的策略匹配规则设置为发布状态,在发布状态下规则匹配模块可以对目标风控业务进行策略匹配确定决策结果。如图3所示,对于需要验证有效性的策略匹配规则,设置为仿真状态,在规则引擎执行时,会异步启用一个线程去再跑一遍策略,其中,会跳过动作、通知的执行,并单独将决策结果进行保存,用于与正常业务作区分,方便查看。
通过应用本实施例的技术方案,利用规则引擎对目标风控业务进行策略匹配,确定决策结果,解决了现有技术中策略逻辑和业务逻辑糅合在一起,代码开发量大、复用率低、系统维护成本高的问题,同时,通过设置不同的策略匹配规则的状态,对不同状态的策略匹配规则对应的决策结果进行不同方式的处理,执行相应的策略匹配动作,新的策略匹配规则可以实时上线,解决了现有技术中新的策略匹配规则必须先测试后上线的问题。
在本申请实施例中,可选地,步骤204具体可以包括:获取仿真状态下的第一策略匹配规则,将与所述第一策略匹配规则对应的第一决策结果保存在预设仿真存储位置;和/或,获取发布状态下的第二策略匹配规则,将与所述第二策略匹配规则对应的第二决策结果写入预设结果存储位置和/或向目标地址发送所述第二决策结果。
在该实施例中,新发布的、需要验证有效性的第一策略匹配规则设置为仿真状态,在规则引擎执行时,会异步启用一个仿真线程去跑一遍策略,其中,会跳过动作、通知的执行,并单独将第一决策结果进行保存,用于与正常业务(即不需要验证有效性的第二策略匹配规则)作区分,方便查看。规则引擎执行第二策略匹配规则的匹配时,将第二决策结果写入预设结果存储位置以便后续需要时利用结果抽取模块将第二决策结果从预设结果存储位置抽取出来,和/或向目标地址发送,例如将第二决策结果发送给业务方。
相应地,步骤204之后还可以包括:步骤205,接收所述预设仿真存储位置的第一决策结果对应的仿真确认指令;步骤206,基于所述仿真确认指令,将与所述第一决策结果对应的策略匹配规则设置为发布状态,并将所述第一决策结果写入预设结果存储位置和/或向所述目标地址发送所述第一决策结果。
在上述实施例中,第一决策结果保存在预设仿真存储位置后,测试人员可以对保存在预设仿真存储位置的第一决策结果进行验证,若测试人员验证仿真决策结果正确,并对其进行确认后,仿真模块还可以将规则匹配模块中新发布的策略匹配规则设置为发布状态,在发布状态下规则匹配模块可以对目标风控业务进行策略匹配确定决策结果。另外,还可以对第一决策结果按照第二决策结果的处置方式进行处置,即写入预设结果存储位置和/或发送到目标地址。
在本申请实施例中,可选地,所述输入特征数据类型包括所述源数据类型、聚合数据类型以及规则数据类型,其中,源数据直接来源于业务方以及所述传入数据,聚合数据基于对源数据的处理产生,规则数据为依据任一策略匹配规则对所述源数据和/或所述聚合数据进行匹配后产生的匹配结果;
步骤202具体可以包括:步骤202-1,根据输入特征数据之间的第一依赖关系建立对应的有向图,确定各类型的输入特征数据的提取顺序,其中,所述有向图包括表示各输入特征数据的节点以及各节点之间的指向,节点之间的指向用于反应各输入特征数据对应的第一依赖关系;步骤202-2,按照所述提取顺序以及所述输入特征数据类型,获取所述输入特征数据。
在该实施例中,规则引擎中预先存储有各类型的输入特征数据对应的第一依赖关系,根据该第一依赖关系建立的包含各输入特征数据对应节点的有向图,且用有向图中各节点的指向表示出各输入特征数据的第一依赖关系,例如,如图2所示,输入特征数据11、12都依赖于输入特征数据10,输入特征数据10不依赖于任何数据,输入特征数据21依赖于输入特征数据20,输入特征数据13依赖于输入特征数据12、21。具体的不依赖于其他数据提取结果的,可以放在第一阶段并发执行,例如同时提取输入特征数据10、20,另外,还可以依据有向图计算每个节点的深度,对于输入特征数据10的深度为0,依赖于输入特征数据10的输入特征数据11、12的深度为1,依赖于输入特征数据12和21的输入特征数据13的深度为2,不同深度的数据按各自对应的提取顺序进行提取,深度为0的数据先提取,其次是深度为1,再次提取深度为2的数据。
另外,多个业务规则之间可以通过为参数赋值的方式来实现规则间的值传递和结果返回。例如业务规则2的执行依赖于业务规则1的结果,业务规则1产生结果后将该结果传递给业务规则2。
在本申请实施例中,可选地,步骤203之前还可以包括:步骤207,获取所述策略匹配规则之间的第二依赖关系,并根据所述第二依赖关系加载所述策略匹配规则,其中,任一策略匹配规则在其对应的依赖规则已加载的前提下进行加载,所述任一策略匹配规则的执行依赖于所述依赖规则的执行结果。
在该实施例中,不同的业务规则之间具有第二依赖关系,为避免加载错误,加载任一业务规则之前,应确保该规则所依赖的规则已加载,该依赖规则具体是指上述的任一业务规则执行时需要依赖于该依赖规则的执行结果的规则。
在本申请实施例中,可选地,步骤201具体可以包括:响应于业务发起对象对所述规则引擎的调用接口的调用指令,获取待决策的所述目标风控业务,其中,所述业务发起对象包括业务方终端和/或任务终端。
在该实施例中,规则引擎可以由业务方通过业务方终端进行调用,也可以在任务终端内设置定时任务通过任务终端进行调用,具体业务方终端、任务终端可以通过对引擎调用接口进行调用实现利用规则引擎对目标风控业务进行决策。其中,业务方可以直接通过RPC(Remote Procedure Call,远程过程调用)或者HTTP(HyperText TransferProtocol,超文本传输协议)的方式调用规则引擎,也可以选择通过发送MQ(MessageQueue,消息队列)的方式处罚规则引擎执行。直接调用时,又分为以下两种策略调用方式:模块调用,策略配置时,将统一分类的策略会关联在同一模块下。按照模块调用时,会执行模块下关联的策略;场景调用,业务方可以按照风控触发场景,将策略配置在同一场景下。按照场景调用时,会执行该场景关联的策略。定时任务调用,规则引擎可以配置定时任务(这里的定时任务也可以看做是一种风控业务,对应有特定的业务规则),同时,指定任务触发时需要执行的定时任务策略,任务在对应的档期执行时,会执行预先在规则匹配模块中配置的业务规则实现业务决策。
在本申请实施例中,可选地,所述规则引擎部署在基于Kubernetes以及Dockerlaas技术构建的分布式集群中。
在该实施例中,该规则引擎支持集群部署,部署在当前流行的Kubernetes、Dockerlaas平台下。借用其服务治理和流量管理机制,提供服务发现、负载均衡、动态扩缩容、限流等功能下,与应用完全解耦,简单,高效的实现了规则引擎在分布式环境下的部署。
在本申请实施例中,可选地,步骤203具体可以包括:依据所述输入特征数据以及所述策略匹配规则,通过执行与所述策略匹配规则对应的Groovy脚本对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果,其中,所述策略匹配规则包括黑名单、白名单以及灰名单。
在该实施例中,策略匹配过程基于Groovy脚本来实现,Groovy脚本运行在JVM上的机制,让Groovy与Java无缝融合,使其具有非常高的执行效率,远超于已有的Drools、URule等执行速度。在缓存、Groovy脚本的预加载机制下,规则引擎在策略执行过程中的耗时控制在了10ms左右。业务规则具体可以包含黑名单(输入特征数据命中黑名单则风控业务不通过)、白名单(输入特征数据命中白名单则继续进行策略匹配)以及灰名单(基于输入特征数据进行规则评分)。
另一方面,本申请实施例还提供了一种规则引擎的配置方法,该方法包括:
步骤101,获取风控业务策略对应的多条业务规则以及每条所述业务规则对应的输入特征数据类型;
步骤102,依据所述输入特征数据类型,配置所述规则引擎中特征提取模块对应的特征提取方式,以使所述特征提取模块用于按照所述特征提取方式提取目标风控业务对应的输入特征数据;
步骤103,依据所述业务规则,配置所述规则引擎中规则匹配模块对应的策略匹配规则,以使所述规则匹配模块用于对所述目标风控业务进行策略匹配确定决策结果;
步骤104,获取所述风控业务策略对应的策略匹配动作,并配置所述规则引擎中决策模块的决策动作,以使所述决策模块用于按所述决策结果执行对应的策略匹配动作。
本申请实施例中通过搭建与风控业务匹配的规则引擎,从而利用规则引擎实现对目标风控业务进行业务决策。规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策,即可通过接收数据输入和解析执行规则,并根据执行规则和数据做出业务决策,该实施例搭建的规则引擎系统包括特征提取模块、规则匹配模块以及决策模块,该规则引擎系统基于风控业务策略进行搭建。
在上述实施例中,任一风控业务的风控业务策略对应于多条业务规则,每条业务规则依赖于特定的业务数据实现规则匹配,例如业务规则1规定业务数据A需大于特定值,其中任意一条业务规则对应的特定的业务数据即为本申请实施例中与该条业务规则对应的输入特征数据。为了实现对规则引擎的搭建,使得规则引擎能够实现对每条业务规则的匹配,应先获取风控业务策略对应的多条业务规则以及每条业务规则对应的输入特征数据类型。在实际应用场景中在对目标风控业务进行策略匹配时,相应的目标风控业务对应的业务方(或该目标风控业务的策略匹配请求方)提供的业务参数并不一定满足每条业务规则的匹配需求,例如业务规则的匹配需要业务数据A、B、C等10种类型的数据,但请求方只提供其中的几种,这时可以通过配置规则引擎的特征提取模块,通过特征提取模块获取请求方未提供的输入特征参数,不同的业务规则所对应的输入特征数据类型具体可以包括:源数据类型、聚合数据类型以及规则数据类型,其中,源数据一般直接来源于业务方,或者是规则引擎的特征提取模块直接从其他渠道获取不需要进行数据加工的数据,聚合数据一般是基于对源数据的处理而产生的数据,例如对源数据进行统计分析确定聚合数据,规则数据一般为某条业务规则进行匹配后产生的匹配结果。依据各业务规则对应的输入特征数据类型对特征提取模块进行配置,以使得特征提取模块可以按照配置的特征提取方式提取各业务规则所需的输入特征数据,从而即使在业务方无法提供完整业务数据时,规则引擎也可以通过特征提取模块获取所需数据实现对目标风控业务的策略匹配。
进一步,还包括对规则匹配模块以及决策模块的配置,其中,将每条业务规则配置为规则匹配模块中的策略匹配规则,以使得配置后的规则匹配模块能够按照策略匹配规则的顺序及规则内容实现对目标风控业务的策略匹配,确定目标风控业务的决策结果,需要说明的是,规则匹配模块可以包括多个,每个规则匹配模块对应于一种特定的业务规则,例如配置特定的规则匹配模块对用户的信用卡使用年限进行策略匹配,又例如配置特点的规则匹配模块对用户的信用得分进行策略匹配。配置后的规则匹配模块可以针对于不同的风控业务策略进行复用,例如风控业务1和2都需要对用户的信用卡使用年限进行策略匹配,那么只需要配置一个用于实现该功能的规则匹配模块即可,减少开发量,提高代码复用率,降低系统维护成本。在另一种情况中,规则匹配模块也可以仅包括一个,一个规则匹配模块中包括多条业务规则,与包含多个规则匹配模块相似的,各业务规则在需要时被加载,不需要时无需加载,也即根据目标风控业务加载所需的业务规则即可。通过对特定业务规则进行加载的方式,提高代码复用率。另外,根据业务方需求针对不同的风控业务策略和/或决策结果类型,可以获取不同的风控业务策略、决策结果类型对应的策略匹配动作,并按照策略匹配动作配置规则引擎中决策模块的决策动作,例如风控业务1对应的决策动作可以为按原路返回决策结果,风控业务2对应的决策动作可以为将决策结果保存在特定目录下,另外还可以为当决策结果为通过时原路返回决策结果,当决策结果为不通过时将决策结果保存在特定目录下等。
通过应用本实施例的技术方案,获取特定风控业务的风控业务策略对应的业务规则以及每条业务规则对应的输入特征数据类型,按输入特征数据类型对规则引擎中特征提取模块的特征提取方式进行配置以及按业务规则对规则引擎中规则匹配模块的策略匹配规则进行配置,并进一步按风控业务策略的策略匹配动作对规则引擎中决策模块的决策动作进行配置,以使配置后的规则引擎可以通过特征提取模块提取每条业务规则对应的输入特征数据,通过规则匹配模块实现对目标风控业务的策略匹配,以及通过决策模块执行策略匹配动作。本申请实施例通过对规则引擎的配置,可以实现利用规则引擎对目标风控业务进行策略匹配,确定决策结果,解决了现有技术中策略逻辑和业务逻辑糅合在一起,代码开发量大、复用率低、系统维护成本高的问题,风控业务策略改动时只需要对相关的模块进行重新配置即可,系统方便可靠,同时,通过配置特征提取模块可以对策略匹配过程所需的输入特征数据进行提取,进一步提升了规则引擎的实用性。
本申请实施例中,可选地,特征提取模块中的特征提取方式具体可以包括源数据提取路径、特征聚合算法;步骤102具体可以包括:
步骤102-1,根据所述输入特征数据类型,统计所述风控业务策略所需的源数据类型,并按照所述源数据类型配置所述特征提取模块对应的源数据提取路径;
步骤102-2,根据所述输入特征数据类型,配置所述特征提取模块对应的特征聚合算法。
在该实施例中,由于源数据一般直接来源于业务方(这里的业务方不仅包括风控业务对应的原业务方,还可以包括第三方业务方),因此在规则引擎的使用场景中,源数据具体可以通过两种途径获得,其一是业务方直接发送的,其二是业务方没有直接发送规则引擎基于策略匹配需要主动从原业务方以及第三方业务方获取的。对于业务方直接发送的源数据,可以从存储业务方发送的传入参数的存储模块中获取,对于需要规则引擎主动获取的源数据,需要根据源数据的数据类型配置对应的源数据提取路径,比如源数据为用户的家庭住址,对应的源数据提取路径可以是业务方对应的家庭住址存储位置。需要注意的是,源数据提取路径不仅对应于输入特征数据类型的源数据类型,由于聚合数据是基于对源数据的统计分析等处理得到的,因此源数据提取路径还对应于聚合数据所需的源数据类型。进一步,还应配置聚合数据对应的特征聚合算法,以使得特征提取模块不仅能够提取源数据,还能将源数据按照特征聚合算法进行聚合确定聚合数据。其中,聚合数据可以是在提取源数据时实时聚合获得,也可以是离线聚合好的聚合数据,比如对特征提取模块进行配置,规定其定时查询某些源数据,并对源数据进行聚合处理,得到聚合数据,使用时直接获取预先确定好的聚合数据。
本申请实施例中,可选地,所述特征提取方式还包括各输入特征数据对应的第一依赖关系;所述特征提取模块还用于依据所述第一依赖关系,建立与所述目标风控业务的输入特征数据对应的有向图,所述有向图包括输入特征数据对应的节点以及用于反应所述输入特征数据之间第一依赖关系的各节点之间的指向,并基于所述有向图对应的节点以及各节点之间的指向确定所述输入特征数据的提取顺序,按所述提取顺序以及所述特征提取方式提取目标风控业务对应的输入特征数据。
在该实施例中,基于各类型的输入特征数据对应的第一依赖关系,特征提取模块具体应按所需的各输入特征数据之间的依赖关系提取输入特征数据,具体确定目标风控业务对应的输入特征数据后,特征提前模块可以建立包含各输入特征数据对应节点的有向图,且用有向图中各节点的指向表示出各输入特征数据的第一依赖关系,例如,如图2所示,输入特征数据11、12都依赖于输入特征数据10,输入特征数据10不依赖于任何数据,输入特征数据21依赖于输入特征数据20,输入特征数据13依赖于输入特征数据12、21。具体的不依赖于其他数据提取结果的,可以放在第一阶段并发执行,例如同时提取输入特征数据10、20,另外,还可以依据有向图计算每个节点的深度,对于输入特征数据10的深度为0,依赖于输入特征数据10的输入特征数据11、12的深度为1,依赖于输入特征数据12和21的输入特征数据13的深度为2,不同深度的数据按各自对应的提取顺序进行提取,深度为0的数据先提取,其次是深度为1,再次提取深度为2的数据。
另外,多个业务规则之间可以通过为参数赋值的方式来实现规则间的值传递和结果返回。例如业务规则2的执行依赖于业务规则1的结果,业务规则1产生结果后将该结果传递给业务规则2。
本申请实施例中,可选地,规则引擎系统还可以包括规则加载模块,该方法还可以包括:步骤105,根据所述业务规则之间的第二依赖关系,配置所述规则引擎中规则加载模块对应的匹配规则加载逻辑,以使所述规则加载模块用于在任一策略匹配规则对应的依赖规则已加载的前提下,加载所述任一策略匹配规则,所述任一策略匹配规则的执行依赖于所述依赖规则的执行结果。
在该实施例中,不同的业务规则之间具有第二依赖关系,为避免加载错误,加载任一业务规则之前,应确保该规则所依赖的规则已加载,该依赖规则具体是指上述的任一业务规则执行时需要依赖于该依赖规则的执行结果的规则。
本申请实施例中,可选地,规则引擎系统还可以包括引擎调用接口,该方法还可以包括:步骤106,获取所述风控业务策略对应的业务发起对象,其中,所述业务发起对象包括业务方终端和/或任务终端;步骤107,按照所述业务发起对象,配置所述规则引擎的调用接口,以使所述业务发起对象通过调用所述调用接口对目标风控业务进行策略匹配。
在该实施例中,规则引擎可以由业务方通过业务方终端进行调用,也可以在任务终端内设置定时任务通过任务终端进行调用,具体业务方终端、任务终端可以通过对引擎调用接口进行调用实现利用规则引擎对目标风控业务进行决策。其中,业务方可以直接通过RPC(Remote Procedure Call,远程过程调用)或者HTTP(HyperText TransferProtocol,超文本传输协议)的方式调用规则引擎,也可以选择通过发送MQ(MessageQueue,消息队列)的方式处罚规则引擎执行。直接调用时,又分为以下两种策略调用方式:模块调用,策略配置时,将统一分类的策略会关联在同一模块下。按照模块调用时,会执行模块下关联的策略;场景调用,业务方可以按照风控触发场景,将策略配置在同一场景下。按照场景调用时,会执行该场景关联的策略。定时任务调用,规则引擎可以配置定时任务(这里的定时任务也可以看做是一种风控业务,对应有特定的业务规则),同时,指定任务触发时需要执行的定时任务策略,任务在对应的档期执行时,会执行预先在规则匹配模块中配置的业务规则实现业务决策。
本申请实施例中,可选地,规则引擎系统还可以包括仿真模块,该方法还可以包括:步骤108,配置所述规则引擎的仿真模块,以使所述仿真模块用于将所述规则匹配模块中新发布的策略匹配规则设置为仿真状态,在所述仿真状态下所述规则匹配模块用于将所述目标风控业务中与所述新发布的策略匹配规则相关的仿真决策结果保存在预设仿真存储位置,所述仿真模块还用于在所述预设仿真存储位置的仿真决策结果被确认后将所述规则匹配模块中所述新发布的策略匹配规则设置为发布状态,在所述发布状态下所述规则匹配模块用于对所述目标风控业务进行策略匹配确定决策结果。
在该实施例中,还可以配置仿真模块,仿真模块可以用于管理规则匹配模块中新发布的策略匹配规则的仿真测试,以及策略发布,在具体应用场景中,规则匹配模块新发布了策略匹配规则时,将新发布的策略匹配规则设置为仿真状态,在仿真状态下规则匹配模块可以将目标风控业务中与新发布的策略匹配规则相关的仿真决策结果保存在预设仿真存储位置,测试人员可以对保存在预设仿真存储位置的仿真决策结果进行验证,若测试人员验证仿真决策结果正确,并对其进行确认后,仿真模块还可以将规则匹配模块中新发布的策略匹配规则设置为发布状态,在发布状态下规则匹配模块可以对目标风控业务进行策略匹配确定决策结果。如图3所示,对于需要验证有效性的策略匹配规则,设置为仿真状态,在规则引擎执行时,会异步启用一个线程去再跑一遍策略,其中,会跳过动作、通知的执行,并单独将决策结果进行保存,用于与正常业务作区分,方便查看。
本申请实施例中,可选地,所述规则引擎部署在基于Kubernetes以及Docker laas技术构建的分布式集群中。
在该实施例中,规则引擎支持集群部署,部署在当前流行的Kubernetes、Dockerlaas平台下。借用其服务治理和流量管理机制,提供服务发现、负载均衡、动态扩缩容、限流等功能下,与应用完全解耦,简单,高效的实现了规则引擎在分布式环境下的部署。
本申请实施例中,可选地,步骤103具体可以包括:依据所述业务规则,编译Groovy脚本,并将所述Groovy脚本配置于所述规则匹配模块中,以使所述规则匹配模块通过执行所述Groovy脚本进行策略匹配确定决策结果,所述业务规则包括黑名单、白名单以及灰名单。
在该实施例中,策略匹配过程基于Groovy脚本来实现,Groovy脚本运行在JVM上的机制,让Groovy与Java无缝融合,使其具有非常高的执行效率,远超于已有的Drools、URule等执行速度。在缓存、Groovy脚本的预加载机制下,规则引擎在策略执行过程中的耗时控制在了10ms左右。业务规则具体可以包含黑名单(输入特征数据命中黑名单则风控业务不通过)、白名单(输入特征数据命中白名单则继续进行策略匹配)以及灰名单(基于输入特征数据进行规则评分)。
本申请实施例中,可选地,规则引擎系统还可以包括结果抽取模块、结果发送模块。该方法还包括:步骤109,依据所述预设结果存储位置,配置所述规则引擎对应的结果抽取模块,以使所述结果抽取模块用于响应于结果抽取指令从所述预设结果存储位置读取所述决策结果;和/或,依据所述目标地址,配置所述规则引擎对应的结果发送模块,以使所述结果发送模块用于向所述目标地址发送所述决策结果。
在该实施例中,所述策略匹配动作包括将决策结果写入预设结果存储位置和/或向目标地址发送决策结果。相应的,可以基于结果抽取指令对决策结果进行二次抽取,以使业务方获得相应的决策结果,结果抽取指令可以指示抽取业务、分析人员关心的数据,即对一次目标风控业务对应的决策结果进行部分抽取或全部抽取。或者,也可以将决策结果发送到目标地址中,例如目标地址为业务方终端对应的网络地址,可以将决策结果发送给业务方终端。
另一方面,本申请实施例还提供了一种规则引擎系统(即规则引擎),如图1所示的方法应用于该规则引擎系统中,该系统包括:特征提取模块,用于按照特征提取方式提取所述目标风控业务对应的多条业务规则的输入特征数据;规则匹配模块,用于基于所述输入特征数据,对所述目标风控业务进行策略匹配确定决策结果;决策模块,用于按照所述决策结果执行对应的策略匹配动作。
可选地,所述特征提取模块,具体用于依据所述第一依赖关系,建立与所述目标风控业务的输入特征数据对应的有向图,所述有向图包括输入特征数据对应的节点以及用于反应所述输入特征数据之间第一依赖关系的各节点之间的指向,并基于所述有向图对应的节点以及各节点之间的指向确定所述输入特征数据的提取顺序,按所述提取顺序以及所述特征提取方式提取目标风控业务对应的输入特征数据。
可选地,所述规则引擎系统还包括:规则加载模块,用于基于所述目标风控业务对应的各业务规则之间的第二依赖关系,加载策略匹配规则,以使任一策略匹配规则在对应的依赖规则已加载的前提下被加载,所述任一策略匹配规则的执行依赖于所述依赖规则的执行结果。
可选地,所述规则引擎系统还包括:调用接口,所述调用接口用于接收所述目标风控业务的业务发起对象的调用指令,以及响应于所述调用指令实现对所述目标风控业务的策略匹配,其中,所述业务发起对象包括业务方终端和/或任务终端。
可选地,所述规则引擎系统部署在基于Kubernetes以及Docker laas技术构建的分布式集群中。
可选地,所述系统还包括:仿真模块,用于将所述规则匹配模块中新发布的策略匹配规则设置为仿真状态,在所述仿真状态下所述规则匹配模块用于将所述目标风控业务中与所述新发布的策略匹配规则相关的仿真决策结果保存在预设仿真存储位置,所述仿真模块还用于在所述预设仿真存储位置的仿真决策结果被确认后将所述规则匹配模块中所述新发布的策略匹配规则设置为发布状态,在所述发布状态下所述规则匹配模块用于对所述目标风控业务进行策略匹配确定决策结果。
可选地,所述规则匹配模块,具体用于通过执行Groovy脚本对所述目标风控业务进行策略匹配,其中,所述Groovy脚本依据所述目标风控业务对应的风控业务策略包含的业务规则编译得到,所述业务规则包括黑名单、白名单以及灰名单。
可选地,所述策略匹配动作包括将决策结果写入预设结果存储位置和/或向目标地址发送决策结果;所述规则引擎系统还包括:结果抽取模块,用于响应于结果抽取指令从所述预设结果存储位置读取所述决策结果,其中,所述决策结果由所述决策模块写入所述预设结果存储位置;和/或,结果发送模块,用于将所述决策模块确定的决策结果发送至所述目标地址。
进一步的,作为图1方法的具体实现,本申请实施例提供了一种基于规则引擎的业务决策装置,该装置包括:
规则获取单元,用于接收待决策的目标风控业务,获取所述目标风控业务对应的传入数据以及所述目标风控业务对应的多条策略匹配规则;
特征提取单元,用于根据所述策略匹配规则对应的输入特征数据类型以及所述传入数据,提取所述目标风控业务对应的输入特征数据;
决策确定单元,用于依据所述输入特征数据以及所述策略匹配规则,对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果;
决策执行单元,用于按照所述策略匹配规则的状态,执行与所述决策结果对应的策略匹配动作。
可选地,所述决策执行单元,具体包括:
仿真子单元,用于获取仿真状态下的第一策略匹配规则,将与所述第一策略匹配规则对应的第一决策结果保存在预设仿真存储位置;和/或,
决策子单元,用于获取发布状态下的第二策略匹配规则,将与所述第二策略匹配规则对应的第二决策结果写入预设结果存储位置和/或向目标地址发送所述第二决策结果。
可选地,所述装置还包括:
仿真确认单元,用于所述将与所述第一策略匹配规则对应的决策结果保存在预设仿真存储位置之后,接收所述预设仿真存储位置的第一决策结果对应的仿真确认指令;
状态切换单元,用于基于所述仿真确认指令,将与所述第一决策结果对应的策略匹配规则设置为发布状态,并将所述第一决策结果写入预设结果存储位置和/或向所述目标地址发送所述第一决策结果。
可选地,所述装置还包括:
结果抽取单元,用于所述将与所述第二策略匹配规则对应的第二决策结果写入预设结果存储位置之后,响应于结果抽取指令,从所述预设结果存储位置读取所述第二决策结果。
可选地,所述输入特征数据类型包括所述源数据类型、聚合数据类型以及规则数据类型,其中,源数据直接来源于业务方以及所述传入数据,聚合数据基于对源数据的处理产生,规则数据为依据任一策略匹配规则对所述源数据和/或所述聚合数据进行匹配后产生的匹配结果;
所述特征提取单元,具体包括:
顺序确定子单元,用于根据输入特征数据之间的第一依赖关系建立对应的有向图,确定各类型的输入特征数据的提取顺序,其中,所述有向图包括表示各输入特征数据的节点以及各节点之间的指向,节点之间的指向用于反应各输入特征数据对应的第一依赖关系;
特征获取子单元,用于按照所述提取顺序以及所述输入特征数据类型,获取所述输入特征数据。
可选地,所述装置还包括:
规则加载单元,用于所述依据所述输入特征数据以及所述策略匹配规则,对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果之前,获取所述策略匹配规则之间的第二依赖关系,并根据所述第二依赖关系加载所述策略匹配规则,其中,任一策略匹配规则在其对应的依赖规则已加载的前提下进行加载,所述任一策略匹配规则的执行依赖于所述依赖规则的执行结果。
可选地,所述规则获取单元,具体用于响应于业务发起对象对所述规则引擎的调用接口的调用指令,获取待决策的所述目标风控业务,其中,所述业务发起对象包括业务方终端和/或任务终端。
可选地,所述规则引擎部署在基于Kubernetes以及Docker laas技术构建的分布式集群中。
可选地,所述决策确定单元,具体用于依据所述输入特征数据以及所述策略匹配规则,通过执行与所述策略匹配规则对应的Groovy脚本对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果,其中,所述策略匹配规则包括黑名单、白名单以及灰名单。
需要说明的是,本申请实施例提供的一种基于规则引擎的业务决策装置所涉及各功能单元的其他相应描述,可以参考图1方法中的对应描述,在此不再赘述。
基于上述如图1所示方法,相应的,本申请实施例还提供了一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述如图1所示的方法。
基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。
基于上述如图1所示的方法,以及上述的虚拟装置实施例,为了实现上述目的,本申请实施例还提供了一种计算机设备,具体可以为个人计算机、服务器、网络设备等,该计算机设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图1所示的基于规则引擎的业务决策方法。
可选地,该计算机设备还可以包括用户接口、网络接口、摄像头、射频(RadioFrequency,RF)电路,传感器、音频电路、WI-FI模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard)等,可选用户接口还可以包括USB接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如蓝牙接口、WI-FI接口)等。
本领域技术人员可以理解,本实施例提供的一种计算机设备结构并不构成对该计算机设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储介质中还可以包括操作系统、网络通信模块。操作系统是管理和保存计算机设备硬件和软件资源的程序,支持信息处理程序以及其它软件和/或程序的运行。网络通信模块用于实现存储介质内部各组件之间的通信,以及与该实体设备中其它硬件和软件之间通信。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现利用规则引擎对目标风控业务进行策略匹配,确定决策结果,解决了现有技术中策略逻辑和业务逻辑糅合在一起,代码开发量大、复用率低、系统维护成本高的问题,同时,通过设置不同的策略匹配规则的状态,对不同状态的策略匹配规则对应的决策结果进行不同方式的处理,执行相应的策略匹配动作,新的策略匹配规则可以实时上线,解决了现有技术中新的策略匹配规则必须先测试后上线的问题。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。
Claims (14)
1.一种基于规则引擎的业务决策方法,其特征在于,包括:
接收待决策的目标风控业务,获取所述目标风控业务对应的传入数据以及所述目标风控业务对应的多条策略匹配规则;
根据所述策略匹配规则对应的输入特征数据类型以及所述传入数据,提取所述目标风控业务对应的输入特征数据;
其中,所述输入特征数据类型包括源数据类型、聚合数据类型以及规则数据类型,源数据直接来源于业务方以及所述传入数据,聚合数据基于对源数据的处理产生,规则数据为依据任一策略匹配规则对所述源数据和/或所述聚合数据进行匹配后产生的匹配结果,所述输入特征数据包括属于输入特征数据类型但传入数据未包含的数据,所述根据所述策略匹配规则对应的输入特征数据类型以及所述传入数据,提取所述目标风控业务对应的输入特征数据,具体包括:
根据输入特征数据之间的第一依赖关系建立对应的有向图,确定各类型的输入特征数据的提取顺序,所述有向图包括表示各输入特征数据的节点以及各节点之间的指向,节点之间的指向用于反应各输入特征数据对应的第一依赖关系;
按照所述提取顺序以及所述输入特征数据类型,获取所述输入特征数据;
获取所述策略匹配规则之间的第二依赖关系,并根据所述第二依赖关系加载所述策略匹配规则,其中,任一策略匹配规则在其对应的依赖规则已加载的前提下进行加载,所述任一策略匹配规则的执行依赖于所述依赖规则的执行结果,所述依赖规则指任一业务规则执行时需要依赖于该依赖规则的执行结果的规则,所述策略匹配规则基于目标风控业务的业务规则配置;
依据所述输入特征数据以及所述策略匹配规则,对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果;
按照所述策略匹配规则的状态,执行与所述决策结果对应的策略匹配动作;
其中,所述按照所述策略匹配规则的状态,执行与所述决策结果对应的策略匹配动作,具体包括:
获取仿真状态下的第一策略匹配规则,将与所述第一策略匹配规则对应的第一决策结果保存在预设仿真存储位置;和/或,
获取发布状态下的第二策略匹配规则,将与所述第二策略匹配规则对应的第二决策结果写入预设结果存储位置和/或向目标地址发送所述第二决策结果。
2.根据权利要求1所述的方法,其特征在于,所述将与所述第一策略匹配规则对应的决策结果保存在预设仿真存储位置之后,所述方法还包括:
接收所述预设仿真存储位置的第一决策结果对应的仿真确认指令;
基于所述仿真确认指令,将与所述第一决策结果对应的策略匹配规则设置为发布状态,并将所述第一决策结果写入预设结果存储位置和/或向所述目标地址发送所述第一决策结果。
3.根据权利要求1所述的方法,其特征在于,所述将与所述第二策略匹配规则对应的第二决策结果写入预设结果存储位置之后,所述方法还包括:
响应于结果抽取指令,从所述预设结果存储位置读取所述第二决策结果。
4.根据权利要求1所述的方法,其特征在于,所述接收待决策的目标风控业务,具体包括:
响应于业务发起对象对所述规则引擎的调用接口的调用指令,获取待决策的所述目标风控业务,其中,所述业务发起对象包括业务方终端和/或任务终端。
5.根据权利要求1所述的方法,其特征在于,所述规则引擎部署在基于Kubernetes以及Docker laas技术构建的分布式集群中。
6.根据权利要求1所述的方法,其特征在于,所述依据所述输入特征数据以及所述策略匹配规则,对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果,具体包括:
依据所述输入特征数据以及所述策略匹配规则,通过执行与所述策略匹配规则对应的Groovy脚本对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果,其中,所述策略匹配规则包括黑名单、白名单以及灰名单。
7.一种基于规则引擎的业务决策装置,其特征在于,包括:
规则获取单元,用于接收待决策的目标风控业务,获取所述目标风控业务对应的传入数据以及所述目标风控业务对应的多条策略匹配规则;
特征提取单元,用于根据所述策略匹配规则对应的输入特征数据类型以及所述传入数据,提取所述目标风控业务对应的输入特征数据;
其中,所述输入特征数据类型包括源数据类型、聚合数据类型以及规则数据类型,源数据直接来源于业务方以及所述传入数据,聚合数据基于对源数据的处理产生,规则数据为依据任一策略匹配规则对所述源数据和/或所述聚合数据进行匹配后产生的匹配结果,所述输入特征数据包括属于输入特征数据类型但传入数据未包含的数据,所述特征提取单元,具体包括:
顺序确定子单元,用于根据输入特征数据之间的第一依赖关系建立对应的有向图,确定各类型的输入特征数据的提取顺序,其中,所述有向图包括表示各输入特征数据的节点以及各节点之间的指向,节点之间的指向用于反应各输入特征数据对应的第一依赖关系;
特征获取子单元,用于按照所述提取顺序以及所述输入特征数据类型,获取所述输入特征数据;
规则加载单元,用于获取所述策略匹配规则之间的第二依赖关系,并根据所述第二依赖关系加载所述策略匹配规则,其中,任一策略匹配规则在其对应的依赖规则已加载的前提下进行加载,所述任一策略匹配规则的执行依赖于所述依赖规则的执行结果,所述依赖规则指任一业务规则执行时需要依赖于该依赖规则的执行结果的规则,所述策略匹配规则基于目标风控业务的业务规则配置;
决策确定单元,用于依据所述输入特征数据以及所述策略匹配规则,对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果;
决策执行单元,用于按照所述策略匹配规则的状态,执行与所述决策结果对应的策略匹配动作,其中,所述决策执行单元,具体包括:
仿真子单元,用于获取仿真状态下的第一策略匹配规则,将与所述第一策略匹配规则对应的第一决策结果保存在预设仿真存储位置;和/或,
决策子单元,用于获取发布状态下的第二策略匹配规则,将与所述第二策略匹配规则对应的第二决策结果写入预设结果存储位置和/或向目标地址发送所述第二决策结果。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
仿真确认单元,用于所述将与所述第一策略匹配规则对应的决策结果保存在预设仿真存储位置之后,接收所述预设仿真存储位置的第一决策结果对应的仿真确认指令;
状态切换单元,用于基于所述仿真确认指令,将与所述第一决策结果对应的策略匹配规则设置为发布状态,并将所述第一决策结果写入预设结果存储位置和/或向所述目标地址发送所述第一决策结果。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:
结果抽取单元,用于所述将与所述第二策略匹配规则对应的第二决策结果写入预设结果存储位置之后,响应于结果抽取指令,从所述预设结果存储位置读取所述第二决策结果。
10.根据权利要求7所述的装置,其特征在于,
所述规则获取单元,具体用于响应于业务发起对象对所述规则引擎的调用接口的调用指令,获取待决策的所述目标风控业务,其中,所述业务发起对象包括业务方终端和/或任务终端。
11.根据权利要求7所述的装置,其特征在于,所述规则引擎部署在基于Kubernetes以及Docker laas技术构建的分布式集群中。
12.根据权利要求7所述的装置,其特征在于,
所述决策确定单元,具体用于依据所述输入特征数据以及所述策略匹配规则,通过执行与所述策略匹配规则对应的Groovy脚本对所述目标风控业务进行策略匹配,确定所述目标风控业务对应的决策结果,其中,所述策略匹配规则包括黑名单、白名单以及灰名单。
13.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法。
14.一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110105285.5A CN112767133B (zh) | 2021-01-26 | 2021-01-26 | 业务决策方法及装置、存储介质、计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110105285.5A CN112767133B (zh) | 2021-01-26 | 2021-01-26 | 业务决策方法及装置、存储介质、计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112767133A CN112767133A (zh) | 2021-05-07 |
CN112767133B true CN112767133B (zh) | 2024-02-27 |
Family
ID=75705834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110105285.5A Active CN112767133B (zh) | 2021-01-26 | 2021-01-26 | 业务决策方法及装置、存储介质、计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112767133B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113608796A (zh) * | 2021-06-30 | 2021-11-05 | 北京新氧科技有限公司 | 规则引擎的配置及运行方法、装置、电子设备及存储介质 |
CN114049054B (zh) * | 2022-01-13 | 2022-04-19 | 江苏通付盾科技有限公司 | 一种应用于风险管控的决策方法与系统 |
CN115271933B (zh) * | 2022-09-23 | 2023-02-03 | 天津金城银行股份有限公司 | 贷款决策方法及装置、决策设备及计算机可读存储介质 |
CN115827121B (zh) * | 2023-01-16 | 2023-05-16 | 南京国睿信维软件有限公司 | 基于图元素的异步仿真执行引擎系统及方法 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107025509A (zh) * | 2016-02-01 | 2017-08-08 | 腾讯科技(深圳)有限公司 | 基于业务模型的决策系统和方法 |
CN107316134A (zh) * | 2017-06-16 | 2017-11-03 | 深圳乐信软件技术有限公司 | 一种风险控制方法、装置、服务器及存储介质 |
CN107632842A (zh) * | 2017-09-26 | 2018-01-26 | 携程旅游信息技术(上海)有限公司 | 规则配置和发布方法、系统、设备及存储介质 |
CN109086031A (zh) * | 2018-06-28 | 2018-12-25 | 阿里巴巴集团控股有限公司 | 一种基于规则引擎的业务决策方法和装置 |
CN109213990A (zh) * | 2017-07-05 | 2019-01-15 | 菜鸟智能物流控股有限公司 | 一种特征提取方法、装置和服务器 |
WO2019179056A1 (zh) * | 2018-03-18 | 2019-09-26 | 平安科技(深圳)有限公司 | 基于规则引擎的可配置化系统、方法、设备和存储介质 |
CN110443512A (zh) * | 2019-08-09 | 2019-11-12 | 北京思维造物信息科技股份有限公司 | 一种规则引擎及规则引擎实现方法 |
CN110691084A (zh) * | 2019-09-27 | 2020-01-14 | 武汉极意网络科技有限公司 | 风控规则引擎的适配方法及装置 |
CN110717647A (zh) * | 2019-09-03 | 2020-01-21 | 深圳壹账通智能科技有限公司 | 决策流构建方法、装置、计算机设备和存储介质 |
WO2020037918A1 (zh) * | 2018-08-22 | 2020-02-27 | 平安科技(深圳)有限公司 | 基于预测模型的风险控制策略的确定方法及相关装置 |
CN111507508A (zh) * | 2020-03-26 | 2020-08-07 | 冶金自动化研究设计院 | 一种数据和知识结合的防护决策分析方法 |
CN111951010A (zh) * | 2020-07-26 | 2020-11-17 | 中国建设银行股份有限公司 | 一种基于规则引擎的业务决策方法、装置、电子设备和可读存储介质 |
CN112148260A (zh) * | 2020-09-25 | 2020-12-29 | 京东数字科技控股股份有限公司 | 决策引擎实现方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2505220A (en) * | 2012-08-23 | 2014-02-26 | Ibm | Efficient rule execution in decision services |
-
2021
- 2021-01-26 CN CN202110105285.5A patent/CN112767133B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107025509A (zh) * | 2016-02-01 | 2017-08-08 | 腾讯科技(深圳)有限公司 | 基于业务模型的决策系统和方法 |
CN107316134A (zh) * | 2017-06-16 | 2017-11-03 | 深圳乐信软件技术有限公司 | 一种风险控制方法、装置、服务器及存储介质 |
CN109213990A (zh) * | 2017-07-05 | 2019-01-15 | 菜鸟智能物流控股有限公司 | 一种特征提取方法、装置和服务器 |
CN107632842A (zh) * | 2017-09-26 | 2018-01-26 | 携程旅游信息技术(上海)有限公司 | 规则配置和发布方法、系统、设备及存储介质 |
WO2019179056A1 (zh) * | 2018-03-18 | 2019-09-26 | 平安科技(深圳)有限公司 | 基于规则引擎的可配置化系统、方法、设备和存储介质 |
CN109086031A (zh) * | 2018-06-28 | 2018-12-25 | 阿里巴巴集团控股有限公司 | 一种基于规则引擎的业务决策方法和装置 |
WO2020037918A1 (zh) * | 2018-08-22 | 2020-02-27 | 平安科技(深圳)有限公司 | 基于预测模型的风险控制策略的确定方法及相关装置 |
CN110443512A (zh) * | 2019-08-09 | 2019-11-12 | 北京思维造物信息科技股份有限公司 | 一种规则引擎及规则引擎实现方法 |
CN110717647A (zh) * | 2019-09-03 | 2020-01-21 | 深圳壹账通智能科技有限公司 | 决策流构建方法、装置、计算机设备和存储介质 |
CN110691084A (zh) * | 2019-09-27 | 2020-01-14 | 武汉极意网络科技有限公司 | 风控规则引擎的适配方法及装置 |
CN111507508A (zh) * | 2020-03-26 | 2020-08-07 | 冶金自动化研究设计院 | 一种数据和知识结合的防护决策分析方法 |
CN111951010A (zh) * | 2020-07-26 | 2020-11-17 | 中国建设银行股份有限公司 | 一种基于规则引擎的业务决策方法、装置、电子设备和可读存储介质 |
CN112148260A (zh) * | 2020-09-25 | 2020-12-29 | 京东数字科技控股股份有限公司 | 决策引擎实现方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112767133A (zh) | 2021-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112767133B (zh) | 业务决策方法及装置、存储介质、计算机设备 | |
CN112767135B (zh) | 规则引擎的配置方法及装置、存储介质、计算机设备 | |
US20200137151A1 (en) | Load balancing engine, client, distributed computing system, and load balancing method | |
CN110333947B (zh) | 一种游戏应用的分包资源加载方法、装置、设备及介质 | |
CN110399307A (zh) | 一种测试方法、测试平台及目标服务器 | |
CN112988400B (zh) | 显存优化方法、装置、电子设备以及可读存储介质 | |
Wright et al. | SmartEdge: A smart contract for edge computing | |
CN111163130A (zh) | 一种网络服务系统及其数据传输方法 | |
JP7412594B2 (ja) | データ処理方法、データ処理装置、コンピュータ機器、及びコンピュータプログラム | |
CN110187912A (zh) | 一种节点选择方法和装置 | |
CN106713469B (zh) | 用于分布式容器的动态加载方法、装置及系统 | |
CN114615340B (zh) | 一种请求处理方法、装置、计算机设备和存储装置 | |
CN108399331A (zh) | 应用进程试用方法和系统 | |
CN112346751B (zh) | 应用程序的安装方法、装置、电子设备和存储介质 | |
CN109274534B (zh) | 一种网络切片的监管方法及设备、通信系统 | |
Akbar et al. | Towards the optimization of power and bandwidth consumption in mobile-cloud hybrid applications | |
CN112732547B (zh) | 业务测试方法、装置、存储介质及电子设备 | |
CN112295234A (zh) | 获取游戏道具的方法和装置 | |
CN115454576B (zh) | 一种虚拟机进程管理方法、系统及电子设备 | |
CN111131440A (zh) | 资源调度方法、装置和服务器 | |
CN110971470A (zh) | 支持权重的私有云服务集群的限流方法及系统 | |
CN115811481A (zh) | 一种交互服务测试方法、装置、计算机设备及存储介质 | |
CN110245027A (zh) | 一种进程间通信的方法和设备 | |
US11520866B2 (en) | Controlling processor instruction execution | |
CN108289056A (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100102 201 / F, block C, 2 lizezhong 2nd Road, Chaoyang District, Beijing Applicant after: Beijing Shuidi Technology Group Co.,Ltd. Address before: 100102 201, 2 / F, block C, No.2 lizezhong 2nd Road, Chaoyang District, Beijing Applicant before: Beijing Health Home Technology Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |