用于实时推荐的Flink流式处理引擎方法、装置及计算机设备制造方法及图纸

技术编号:28837523 阅读:13 留言:0更新日期:2021-06-11 23:35
本申请公开一种用于实时推荐的Flink流式处理引擎方法、装置及计算机设备,属于大数据推荐技术领域,方法包括:根据计算模型文件对消息队列中的日志进行短期特征计算,将计算得到的短期特征存储到分布式存储层,分布式存储层存储有预先获取的长期特征;在接收到来自消息队列的事件时,从分布式存储层中读取待推荐用户的长期特征以及短期特征;根据预测模型文件、待推荐用户的长期特征以及短期特征进行实时预测,得到待推荐用户的偏好预测结果;将待推荐用户的偏好预测结果写入分布式存储层中。本申请能够实现推荐系统中近线流式推荐的功能需求,同时兼顾推荐系统工作过程中可能出现的消息可靠性、容灾、性能、事务性等问题。

【技术实现步骤摘要】
用于实时推荐的Flink流式处理引擎方法、装置及计算机设备
本申请涉及大数据推荐
,尤其涉及一种用于实时推荐的Flink流式处理引擎方法、装置及计算机设备。
技术介绍
随着用户体验的升级,推荐的实时性要求也相应的越来越高。传统的两层式推荐架构(应用层、离线层)会导致应用层功能复杂、响应超时以及数据不一致的现象产生。此外,在离线层实现推荐虽然快速但推荐时间精度只能到天;而由于用户的兴趣一般随着时间衰减急剧减小,如果不能在第一时间推送给用户感兴趣的物品则会导致转化率下降乃至用户流失。这使得构建一套能够实时分析用户行为并进行预测的实时推荐系统,使系统能够及时响应就变得非常有价值。实时推荐指的是可以实时感知用户行为的变化,并且根据用户实时产生的用户行为给用户推送精准的内容。目前典型的推荐系统分为三层架构,即:在线、近线和离线。通过离线或者近线的模型训练,近线的实时特征工程以及召回、排序,最后由在线层进行业务强制干扰以及兜底,充分体现了其在海量场景高速响应方面的价值。基于流式处理的推荐算法引擎则在近线部分处于核心地位,而传统做法例如有使用STORM或者SPARKSTREAMING来实现,存在着如下问题:1)缺乏对最新的用户行为数据的利用,不能对用户特征模型进行更新,故无法实时感知用户兴趣的实时变化;2)无法同时兼具消息可靠性、容灾性、性能、通用性,导致算法模型部署困难难以完成实时响应;3)使用JAVA或PYTHON语言进行开发技术细节过多,导致开发缓慢,难以及时响应业务需求。>
技术实现思路
为了解决上述
技术介绍
中提到的至少一个问题,本申请提供了一种用于实时推荐的Flink流式处理引擎方法、装置及计算机设备。本申请的技术方案如下:第一方面,提供了一种用于实时推荐的Flink流式处理引擎方法,包括:根据计算模型文件对消息队列中的日志进行短期特征计算,将计算得到的短期特征存储到分布式存储层,所述分布式存储层存储有预先获取的长期特征;在接收到来自所述消息队列的事件时,从所述分布式存储层中读取待推荐用户的长期特征以及短期特征;根据预测模型文件、所述待推荐用户的长期特征以及短期特征进行实时预测,得到所述待推荐用户的偏好预测结果;将所述待推荐用户的偏好预测结果写入所述分布式存储层中。进一步地,所述根据计算模型文件对消息队列中的日志进行短期特征计算之前,所述方法还包括:获取配置文件,所述配置文件中包含配置参数;从模型仓库中加载所述配置参数对应的预先训练好的模型文件,将所述模型文件发送至所述Flink流式处理引擎的各个分布式节点,所述模型文件包括所述计算模型文件及所述预测模型文件。进一步地,所述获取配置文件,包括:从分布式配置集群中同步至少一个配置文件,并将至少一个所述配置文件加载至内存中。进一步地,所述从模型仓库中加载所述配置参数对应的模型文件,包括:从所述配置参数中读取预先配置的模型标识参数,所述模型标识参数包括命名空间、模型名称以及模型版本;从模型仓库中加载所述模型标识参数对应的模型文件。进一步地,所述根据计算模型文件对消息队列中的日志进行短期特征计算,包括:通过各个所述分布式节点根据所述计算模型文件对所述日志进行短期特征计算;所述根据预测模型文件、所述待推荐用户的长期特征以及短期特征进行实时预测,得到所述待推荐用户的偏好预测结果,包括:通过各个所述分布式节点根据所述预测模型文件,生成预测模型;将所述待推荐用户的长期特征以及短期特征输入到所述预测模型进行实时预测,得到所述待推荐用户的偏好预测结果。进一步地,所述分布式存储层包括缓存组件和持久化组件,所述在接收到来自所述消息队列的事件时,从所述分布式存储层中读取待推荐用户的长期特征以及短期特征,包括:通过各个所述分布式节点从本地缓存中读取所述待推荐用户的长期特征以及短期特征;若所述本地缓存读取失败,则从所述缓存组件中读取所述待推荐用户的长期特征以及短期特征;若所述缓存组件读取失败,则从所述持久化组件中读取所述待推荐用户的长期特征以及短期特征,并通过异步方式将读取到的特征写入所述缓存组件中。进一步地,所述计算模型文件为SQL模型文件,所述预测模型文件为PMML模型文件。第二方面,提供了一种用于实时推荐的Flink流式处理引擎装置,包括:算法计算模块,用于根据计算模型文件对消息队列中的日志进行短期特征计算;数据推送模块,用于将计算得到的短期特征存储到分布式存储层,所述分布式存储层存储有预先获取的长期特征;特征查询模块,用于在接收到来自所述消息队列的事件时,从所述分布式存储层中读取待推荐用户的长期特征以及短期特征;所述算法计算模块,还用于根据预测模型文件、所述待推荐用户的长期特征以及短期特征进行实时预测,得到所述待推荐用户的偏好预测结果;所述数据推送模块,还用于将所述待推荐用户的偏好预测结果写入所述分布式存储层中。进一步地,所述装置还包括:配置同步模块,用于获取配置文件,所述配置文件中包含配置参数;模型加载模块,用于从模型仓库中加载所述配置参数对应的预先训练好的模型文件,将所述模型文件发送至所述Flink流式处理引擎的各个分布式节点,所述模型文件包括所述计算模型文件及所述预测模型文件。进一步地,所述配置同步模块具体用于:从分布式配置集群中同步至少一个配置文件,并将至少一个所述配置文件加载至内存中。进一步地,所述模型加载模块具体用于:从所述配置参数中读取预先配置的模型标识参数,所述模型标识参数包括命名空间、模型名称以及模型版本;从模型仓库中加载所述模型标识参数对应的模型文件。进一步地,所述算法计算模块具体用于:通过各个所述分布式节点根据所述计算模型文件对所述日志进行短期特征计算;所述算法计算模块具体还用于:通过各个所述分布式节点根据所述预测模型文件,生成预测模型;将所述待推荐用户的长期特征以及短期特征输入到所述预测模型进行实时预测,得到所述待推荐用户的偏好预测结果。进一步地,所述分布式存储层包括缓存组件和持久化组件,所述特征查询模块具体用于:通过各个所述分布式节点从本地缓存中读取所述待推荐用户的长期特征以及短期特征;若所述本地缓存读取失败,则从所述缓存组件中读取所述待推荐用户的长期特征以及短期特征;若所述缓存组件读取失败,则从所述持久化组件中读取所述待推荐用户的长期特征以及短期特征,并通过异步方式将读取到的特征写入所述缓存组件中。进一步地,所述计算模型文件为SQL模型文件,所述预测模型文件为PMML模型文件。第三方面,提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下操作步骤:根据计算模型文件对消本文档来自技高网...

【技术保护点】
1.一种用于实时推荐的Flink流式处理引擎方法,其特征在于,包括:/n根据计算模型文件对消息队列中的日志进行短期特征计算,将计算得到的短期特征存储到分布式存储层,所述分布式存储层存储有预先获取的长期特征;/n在接收到来自所述消息队列的事件时,从所述分布式存储层中读取待推荐用户的长期特征以及短期特征;/n根据预测模型文件、所述待推荐用户的长期特征以及短期特征进行实时预测,得到所述待推荐用户的偏好预测结果;/n将所述待推荐用户的偏好预测结果写入所述分布式存储层中。/n

【技术特征摘要】
1.一种用于实时推荐的Flink流式处理引擎方法,其特征在于,包括:
根据计算模型文件对消息队列中的日志进行短期特征计算,将计算得到的短期特征存储到分布式存储层,所述分布式存储层存储有预先获取的长期特征;
在接收到来自所述消息队列的事件时,从所述分布式存储层中读取待推荐用户的长期特征以及短期特征;
根据预测模型文件、所述待推荐用户的长期特征以及短期特征进行实时预测,得到所述待推荐用户的偏好预测结果;
将所述待推荐用户的偏好预测结果写入所述分布式存储层中。


2.根据权利要求1所述的方法,其特征在于,所述根据计算模型文件对消息队列中的日志进行短期特征计算之前,所述方法还包括:
获取配置文件,所述配置文件中包含配置参数;
从模型仓库中加载所述配置参数对应的预先训练好的模型文件,将所述模型文件发送至所述Flink流式处理引擎的各个分布式节点,所述模型文件包括所述计算模型文件及所述预测模型文件。


3.根据权利要求2所述的方法,其特征在于,所述获取配置文件,包括:
从分布式配置集群中同步至少一个配置文件,并将至少一个所述配置文件加载至内存中。


4.根据权利要求2所述的方法,其特征在于,所述从模型仓库中加载所述配置参数对应的模型文件,包括:
从所述配置参数中读取预先配置的模型标识参数,所述模型标识参数包括命名空间、模型名称以及模型版本;
从模型仓库中加载所述模型标识参数对应的模型文件。


5.根据权利要求2所述的方法,其特征在于,
所述根据计算模型文件对消息队列中的日志进行短期特征计算,包括:
通过各个所述分布式节点根据所述计算模型文件对所述日志进行短期特征计算;
所述根据预测模型文件、所述待推荐用户的长期特征以及短期特征进行实时预测,得到所述待推荐用户的偏好预测结果,包括:
通过各个所述分布式节点根据所述预测模型文件,生成预测模型;
将所述待推荐用户的长...

【专利技术属性】
技术研发人员:何肖明周睿
申请(专利权)人:苏宁金融科技南京有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1