【技术实现步骤摘要】
基于流计算框架和RETE算法的大数据实时决策引擎
[0001]本专利技术涉及大数据
,具体涉及一种基于流计算框架和RETE算法的大数据实时决策引擎。
技术介绍
[0002]决策引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件。规则引擎实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策,接受数据输入,解释业务规则,并根据规则做出业务决策,即触发应用程序中相应的操作。
[0003]Flink是一个分布式流处理计算框架,用于对无界和有界数据流进行有状态计算。Flink在所有常见的分布式集群环境中运行,以高性能的内存执行速度和灵活的可伸缩集群规模来执行计算。
[0004]RETE算法是一种进行大量模式集合和大量对象集合间比较的高效方法,通过网络筛选的方法找出所有匹配各个模式的对象和规则。其核心思想是用分离的匹配项构造匹配网络,同时缓存中间结果,以空间换时间。其工作过程大致分为规则编译(rule compilation)和运行时执行(runtime execution)两个阶段。
[0005]目前基于RETE算法的决策引擎,主要的缺点是数据处理吞吐量偏小,当需要处理的数据量庞大且需匹配的规则数多的情况下,系统处理时间大大增加,内存和CPU等计算资源消耗很大,数据处理严重延迟,系统性能严重下降。
技术实现思路
[0006]针对上述问题,本专利技术提供一种基于流计算框架和RETE算法的大数据实时决策引擎,通过把分布式流计算处理框架FLINK和RETE模式匹 ...
【技术保护点】
【技术特征摘要】
1.基于流计算框架和RETE算法的大数据实时决策引擎,其特征在于,包括以下步骤:S1、通过决策规则图形设计器的推送功能把存储在规则文件数据库中的XML规则文件提交到决策规则管理器中;S2、用户根据业务实际需求发送决策请求到决策引擎服务接口上,RETE
‑
FLINK规则编译器根据决策引擎服务接口转发的用户请求参数中包含的规则编码,从决策规则管理器中获取相应的规则文件;RETE
‑
FLINK规则编译器解析规则文件,从中获取用户定义的业务含义,并把这些业务含义映射到内存的JAVA对象中;S3、RETE
‑
FLINK规则编译器根据RETE算法规范,把已经存储在内存中带有业务含义的JAVA对象再封装成符合RETE算法规范的JAVA对象,为生成RETE网络树做准备;S4、RETE
‑
FLINK规则编译器构建RETE网络树:RETE
‑
FLINK规则编译器根据规则文件中具体的规则定义读取此规则的引用类、参数定义、规则条件以及如果满足规则条件需要执行的动作,并将引用类、参数定义、规则条件以及动作与封装成符合RETE算法规范的JAVA对象中的数据结构进行匹配,RETE
‑
FLINK规则编译器从封装成符合RETE算法规范的JAVA对象中的Root Node节点开始向下一直到Terminal Node节点,构建一个完整的规则RETE网络树;S5、RETE
‑
FLINK规则编译器通过RETE网络树进行规则匹配,同步生成基于Flink算子的JAVA代码:RETE网络树构建完成后,RETE
‑
FLINK规则编译器从工作存储器里取Fact事实集并与规则文件数据库进行匹配,匹配过程中,RETE
‑
FLINK规则编译器根据相应规则的RETE网络树、RETE算法规范、Flink框架规范同步进行编译操作,生成相应的基于Flink算子的JAVA程序代码;S6、RETE
‑
FLINK规则编译器把编译好的基于Flink算子的JAVA代码提交到Flink流计算框架执行环境中,Flink流计算框架将编译好的基于Flink算子的JAVA代码映射成Stream Graph计算逻辑流图,然后提交Stream Graph计算逻辑流图到Flink Job Graph生成器中;S7、Flink Job Graph生成器将Stream Grap计算逻辑流图生成对应的Job Graph任务图,然后再提交到Flink Job Manager中;S8、 Flink Job Manager向FLINK ResourceManager资源管理器申请执行分布式任务必要的资源,该资源包括Flink Task Manager集群资源和其上的任务运行插槽Task slot;Flink Job Manager根据实际获取到的资源将Job Graph任务图生成可并行运行的Execution Graph执行图,然后根据Execution Graph执行图调度计算子任务到Flink Task Manager集群资源和其上的任务运行插槽Task slot中进行分布式并行处理;S9、Flink Job Manager协调资源集群中所有Fl...
【专利技术属性】
技术研发人员:林少疆,张珧江,蒋韬,蒋炜,
申请(专利权)人:四川兴川贷数字科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。