基于流式数据处理的用户标签获取方法及装置制造方法及图纸

技术编号:28978412 阅读:17 留言:0更新日期:2021-06-23 09:24
本发明专利技术公开了基于流式数据处理的用户标签获取方法、装置、计算机设备及存储介质,涉及大数据技术,通过利用流式计算框架和在线存储数据库,不仅能够在指定时间段启动离线流程基于当前用户数据集更新标签,而且也能在其他非离线更新标签时间段秒级捕捉用户的行为数据,根据实时变化的数据做出相应的标签更新,提高了用户兴趣挖掘结果的准确性。

【技术实现步骤摘要】
基于流式数据处理的用户标签获取方法及装置
本专利技术涉及大数据的数据分析
,尤其涉及一种基于流式数据处理的用户标签获取方法、装置、计算机设备及存储介质。
技术介绍
用户兴趣挖掘是现今互联网用户端产品非常重要的基础技术手段,结合采集到的用户行为数据,运用不同的技术手段去表达用户信息以满足不同的产品需求,如广告投放、信息流推荐、小视频推荐等等,不同的技术实现方案对兴趣标签的准确性和时效性有不同侧重。传统的用户兴趣挖掘,更倾向于刻画出长期稳定的用户兴趣,而难以捕捉即时用户行为带来的兴趣变化。现阶段,业内出现同样有对用户兴趣的近实时刻画,但是缺乏对整体架构系统的设计,程序稳定性,数据一致性,计算性能等全方面考虑。
技术实现思路
本专利技术实施例提供了一种基于流式数据处理的用户标签获取方法、装置、计算机设备及存储介质,旨在解决现有技术中传统的用户兴趣挖掘,更倾向于刻画出长期稳定的用户兴趣,而难以捕捉即时用户行为带来的兴趣变化,导致分析结果准确率降低的问题。第一方面,本专利技术实施例提供了一种基于流式数据处理的用户标签获取方法,其包括:获取当前系统时间,判断所述当前系统时间是否满足标签离线更新流程启动条件;其中,所述标签离线更新流程启动条件对应一个标签离线更新流程启动时间点;若所述当前系统时间满足所述标签离线更新流程启动条件,获取Hive数据库中已存储的当前用户数据集;将根据所述当前用户数据集及调用对应的离线标签更新策略,计算得到与所述当前用户数据集中各用户分别对应的当前用户标签集,并获取和存储当前用户标签集对应的当前更新标识时间;将所述各用户分别对应的当前用户标签集存储至HBase数据库和/或Redis数据库;若所述当前系统时间不满足所述标签离线更新流程启动条件,消费Kafka平台中的实时用户数据集;以及根据所述实时用户数据集及调用对应的在线标签更新策略,得到与所述实时用户数据集中各用户分别对应的实时用户标签集。第二方面,本专利技术实施例提供了一种基于流式数据处理的用户标签获取装置,其包括:流程启动判断单元,用于获取当前系统时间,判断所述当前系统时间是否满足标签离线更新流程启动条件;其中,所述标签离线更新流程启动条件对应一个标签离线更新流程启动时间点;离线流程启动单元,用于若所述当前系统时间满足所述标签离线更新流程启动条件,获取Hive数据库中已存储的当前用户数据集;离线标签更新单元,用于将根据所述当前用户数据集及调用对应的离线标签更新策略,计算得到与所述当前用户数据集中各用户分别对应的当前用户标签集,并获取和存储当前用户标签集对应的当前更新标识时间;标签集存储单元,用于将所述各用户分别对应的当前用户标签集存储至HBase数据库和/或Redis数据库;在线流程启动单元,用于若所述当前系统时间不满足所述标签离线更新流程启动条件,消费Kafka平台中的实时用户数据集;以及在线标签更新单元,用于根据所述实时用户数据集及调用对应的在线标签更新策略,得到与所述实时用户数据集中各用户分别对应的实时用户标签集。第三方面,本专利技术实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的基于流式数据处理的用户标签获取方法。第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的基于流式数据处理的用户标签获取方法。本专利技术实施例提供了一种基于流式数据处理的用户标签获取方法、装置、计算机设备及存储介质,通过利用流式计算框架和在线存储数据库,不仅能够在指定时间段启动离线流程基于当前用户数据集更新标签,而且也能在其他非离线更新标签时间段秒级捕捉用户的行为数据,根据实时变化的数据做出相应的标签更新,提高了用户兴趣挖掘结果的准确性。附图说明为了更清楚地说明本专利技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的基于流式数据处理的用户标签获取方法的应用场景示意图;图2为本专利技术实施例提供的基于流式数据处理的用户标签获取方法的流程示意图;图3为本专利技术实施例提供的基于流式数据处理的用户标签获取装置的示意性框图;图4为本专利技术实施例提供的计算机设备的示意性框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本专利技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。请参阅图1和图2,图1为本专利技术实施例提供的基于流式数据处理的用户标签获取方法的应用场景示意图;图2为本专利技术实施例提供的基于流式数据处理的用户标签获取方法的流程示意图,该基于流式数据处理的用户标签获取方法应用于服务器中,该方法通过安装于服务器中的应用软件进行执行。如图2所示,该方法包括步骤S101~S106。S101、获取当前系统时间,判断所述当前系统时间是否满足标签离线更新流程启动条件;其中,所述标签离线更新流程启动条件对应一个标签离线更新流程启动时间点。在本实施例中,为了更清楚的理解本申请的技术方案,下面对所涉及的终端进行详细介绍。本申请是在服务器的角度描述技术方案。其中,本申请的技术方案的应用场景是服务器根据用户对目标应用程序中各信息的访问和点击行为产生的用户数据进行用户兴趣标签的挖掘。第一是服务器,本申请中的服务器可以理解为服务器集群,其中部署有Spark计算引擎、Streaming流式计算引擎、Hive数据库、HBase数据库、Redis数据库、Kafka平台。也即通过服务器可以根据用户对目标应用程序中各信息的访问和点击行为产生的用户数据进行用户兴趣标签的挖掘。第二是接收端,服务器分析并挖掘得到的用户标签,可以及本文档来自技高网...

【技术保护点】
1.一种基于流式数据处理的用户标签获取方法,其特征在于,包括:/n获取当前系统时间,判断所述当前系统时间是否满足标签离线更新流程启动条件;其中,所述标签离线更新流程启动条件对应一个标签离线更新流程启动时间点;/n若所述当前系统时间满足所述标签离线更新流程启动条件,获取Hive数据库中已存储的当前用户数据集;/n根据所述当前用户数据集及调用对应的离线标签更新策略,计算得到与所述当前用户数据集中各用户分别对应的当前用户标签集,并获取和存储当前用户标签集对应的当前更新标识时间;/n将所述当前用户标签集存储至HBase数据库和/或Redis数据库;/n若所述当前系统时间不满足所述标签离线更新流程启动条件,消费Kafka平台中的实时用户数据集;以及/n根据所述实时用户数据集及调用对应的在线标签更新策略,得到与所述实时用户数据集中各用户分别对应的实时用户标签集,将所述实时用户标签集存储至HBase数据库。/n

【技术特征摘要】
1.一种基于流式数据处理的用户标签获取方法,其特征在于,包括:
获取当前系统时间,判断所述当前系统时间是否满足标签离线更新流程启动条件;其中,所述标签离线更新流程启动条件对应一个标签离线更新流程启动时间点;
若所述当前系统时间满足所述标签离线更新流程启动条件,获取Hive数据库中已存储的当前用户数据集;
根据所述当前用户数据集及调用对应的离线标签更新策略,计算得到与所述当前用户数据集中各用户分别对应的当前用户标签集,并获取和存储当前用户标签集对应的当前更新标识时间;
将所述当前用户标签集存储至HBase数据库和/或Redis数据库;
若所述当前系统时间不满足所述标签离线更新流程启动条件,消费Kafka平台中的实时用户数据集;以及
根据所述实时用户数据集及调用对应的在线标签更新策略,得到与所述实时用户数据集中各用户分别对应的实时用户标签集,将所述实时用户标签集存储至HBase数据库。


2.根据权利要求1所述的基于流式数据处理的用户标签获取方法,其特征在于,所述根据所述当前用户数据集及调用对应的离线标签更新策略,计算得到与所述当前用户数据集中各用户分别对应的当前用户标签集,并获取和存储当前用户标签集对应的当前更新标识时间,包括:
获取所述当前用户数据集中各用户分别对应的初始用户标签集;
根据所述离线标签更新策略中的第一离线标签更新子策略及所述初始用户数据集中各用户分别对应的初始用户标签集,计算获取每一个初始用户标签集中各标签对应的累计点击量产生标签得分;
其中,所述第一离线标签更新子策略对应公式为:



scoret,i(tagj)表示第t-1日的24小时内用户i对第j个标签的累计点击量产生标签得分;表示第t-1日的24小时内用户i对第j个标签的累计点击量;表示第t-1日的24小时内用户i对第j个标签的累计曝光次数;
根据离线标签更新策略中的第二离线标签更新子策略及所述初始用户数据集中各标签对应的累计点击量产生标签得分,计算获取每一个初始用户标签集中各标签对应的当日最终得分;
其中,所述第二离线标签更新子策略对应公式为:
score_newt,i(tagj)=score_newt-1,i(tagj)*factor+scoret,i(tagj),
score_newt,i(tagj)表示第t-1日的24小时内用户i对第j个标签的累计点击量产生标签得分与第t-2日的24小时内用户i对第j个标签的累计点击量产生标签得分相综合后的第t-1日的综合得分;score_newt-1,i(tagj)表示第t-2日的24小时内用户i对第j个标签的累计点击量产生标签得分与第t-3日的24小时内用户i对第j个标签的累计点击量产生标签得分相综合后的第t-2日的综合得分;factor表示衰减因子,且factor=e-(ln2)/day,day表示预设的衰减天数;
将每一个初始用户标签集中各标签按分别对应的当日最终得分进行降序排序,并根据各标签的排名值筛选获取排名值未超出预设的排名阈值的标签,组成各用户分别对应的当前用户标签集。


3.根据权利要求2所述的基于流式数据处理的用户标签获取方法,其特征在于,所述获取所述当前用户数据集中各用户分别对应的初始用户标签集,包括:
根据所述当前用户数据集中各条用户数据分别对应的用户唯一识别标签进行用户数据分组,将同一用户的用户数据划分在同一数据组内;
根据各用户对应数据组统计得到对应的初始用户标签集。


4.根据权利要求1所述的基于流式数据处理的用户标签获取方法,其特征在于,所述将所述当前用户标签集存储至HBase数据库和/或Redis数据库,包括:
将各用户对应的当前用户标签集分别按一列数据加入到HBase数据库中的中间数据表,且对应列的列名为当前系统时间对应的日期及其前一日日期组合组成。


5.根据权利要求1所述的基于流式数据处理的用户标签获取方法,其特征在于,所述将所述当前用户标签集存储至HBase数据库和/或Redis数据库,包括:
将各用户分别对应的当前用户标签集存储至Redis数据库中的结果表,或是将各用户分别对应的当前用户标签集存储至HBase数据库中的结...

【专利技术属性】
技术研发人员:江林章
申请(专利权)人:中国平安人寿保险股份有限公司
类型:发明
国别省市:广东;44

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

1