一种基于go-streams的边缘数据实时计算方法及系统技术方案

技术编号:36827295 阅读:13 留言:0更新日期:2023-03-12 01:32
本发明专利技术公开一种基于go

【技术实现步骤摘要】
一种基于go

streams的边缘数据实时计算方法及系统


[0001]本专利技术涉及边缘数据
,具体的说是一种基于go

streams的边缘数据实时计算方法及系统。

技术介绍

[0002]目前,通常通过采集用户历史行为数据并进行分析的方式给用户推荐内容或商品。但是,碰到用户的历史行为数据量庞大的情况时,很难快速捕捉到有价值的用户数据,进而实现内容或商品的有效推荐。
[0003]实时推荐是实时流计算技术的一个常见应用场景,其通过实时分析从用户手机上收集而来的行为数据,发掘用户的兴趣、偏好,给用户推荐可能感兴趣的内容或商品。
[0004]基于此,设计研发一种基于go

streams的边缘数据实时计算方法及系统。

技术实现思路

[0005]本专利技术针对目前技术发展的需求和不足之处,提供一种基于go

streams的边缘数据实时计算方法及系统,以实时分析流数据并一次性精准处理海量的高并发数据,快速捕捉对用户有价值的信息并进行分发,实现对数据的更新发布和实时发布。
[0006]首先,本专利技术的一种基于go

streams的边缘数据实时计算方法,解决上述技术问题采用的技术方案如下:
[0007]一种基于go

streams的边缘数据实时计算方法,该方法基于流式处理库go

streams实现,具体实现内容包括:
[0008](一)更新发布:采集边缘实时数据,对采集数据进行分解,根据过滤条件执行过滤,筛选出数据目标并整合为目标格式,实现数据更新发布;
[0009](二)定时发布:采集边缘实时数据并按照相同时间要求执行归类,随后通过分区函数根据参数列表进行不同分区处理操作,实现数据的定时发布;
[0010](三)更新发布与定时发布合并优化:通过分区函数,将更新发布的数据传入指定分区做更新发布的处理,定时发布逻辑不变,对无效数据做出处理。
[0011]可选的,执行步骤(一),基于流式处理库go

streams实现数据更新发布的具体流程如下:
[0012]数据从Source流出,进入一个FlatMap,该FlatMap将数据分解成单点数据并流出,
[0013]流出的数据进入Filter进行过滤,
[0014]不满足过滤条件的数据被丢弃,
[0015]满足过滤条件的数据进入下一个FlatMap,该FlatMap将数据整合为目标格式,并后传至Sink。
[0016]可选的,执行步骤(二),基于流式处理库go

streams实现数据定时发布的具体流程如下:
[0017]数据从Source流出,进入FlatMap,该FlatMap将数据分解成单点数据并流出,
[0018]使用Partition分区函数根据参数列表对FlatMap流出的数据进行不同分区处理,使时间频率相同的数据进入同一个flow中,
[0019]对任一个flow,数据按照设定规则进入相应的TumblingWindow滚动窗口,流入TumblingWindow滚动窗口的数据达到设定时间间隔后传入FlatMap,FlatMap对传入数据进行处理并流出,
[0020]对不同flow中FlatMap的流出数据进行Merge操作,并通过一个新的FlatMap传送至Sink。
[0021]可选的,执行步骤(三)时,更新发布与定时发布数据从Source流出,进入FlatMap,FlatMap将数据分解成单点数据并流出,
[0022]使用Partition分区函数判断FlatMap流出的数据是否满足参数列表的参数要求,
[0023]若参数列表中找不到当前数据对应的参数要求,则将此数据传入ignoreFilter,
[0024]若参数列表中找到当前数据对应的参数要求,则根据参数条件将需要变位的数据传入Filter,需要定时上送的数据传入不同flow中,最后将所有数据进行Merge操作,并通过一个新的FlatMap传送至Sink。
[0025]其次,本专利技术的一种基于go

streams的边缘数据实时计算系统,解决上述技术问题采用的技术方案如下:
[0026]一种基于go

streams的边缘数据实时计算系统,其包括基于流式处理库go

streams的如下模块:
[0027]数据实时处理模块,用于采集边缘实时数据,对采集数据进行分解,并根据过滤条件执行过滤,筛选出数据目标并整合为目标格式,实现数据更新发布;
[0028]数据定时处理模块,用于采集边缘实时数据并按照相同时间要求执行归类,随后通过分区函数根据参数列表进行不同分区处理操作,实现数据的定时发布;
[0029]数据合并处理模块,用于通过分区函数,将更新发布的数据传入指定分区做更新发布的处理,定时发布逻辑不变,对无效数据做出处理。
[0030]可选的,所涉及数据实时处理模块基于流式处理库go

streams实现数据更新发布的具体流程如下:
[0031]数据从Source流出,进入一个FlatMap,该FlatMap将数据分解成单点数据并流出,
[0032]流出的数据进入Filter进行过滤,
[0033]不满足过滤条件的数据被丢弃,
[0034]满足过滤条件的数据进入下一个FlatMap,该FlatMap将数据整合为目标格式,并后传至Sink。
[0035]可选的,所涉及数据定时处理模块基于流式处理库go

streams实现数据定时发布的具体流程如下:
[0036]数据从Source流出,进入FlatMap,该FlatMap将数据分解成单点数据并流出,
[0037]使用Partition分区函数根据参数列表对FlatMap流出的数据进行不同分区处理,使时间频率相同的数据进入同一个flow中,
[0038]对任一个flow,数据按照设定规则进入相应的TumblingWindow滚动窗口,流入TumblingWindow滚动窗口的数据达到设定时间间隔后传入FlatMap,FlatMap对传入数据进行处理并流出,
[0039]对不同flow中FlatMap的流出数据进行Merge操作,并通过一个新的FlatMap传送至Sink。
[0040]可选的,所涉及数据合并处理模块基于流式处理库go

streams执行的具体流程如下:
[0041]更新发布与定时发布数据从Source流出,进入FlatMap,FlatMap将数据分解成单点数据并流出,
[0042]使用Partition分区函数判断FlatMap流出的数据是否满足参数列表的参数要求,
[0043]若参数列表中本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于go

streams的边缘数据实时计算方法,其特征在于,该方法基于流式处理库go

streams实现,具体实现内容包括:(一)更新发布:采集边缘实时数据,对采集数据进行分解,根据过滤条件执行过滤,筛选出数据目标并整合为目标格式,实现数据更新发布;(二)定时发布:采集边缘实时数据并按照相同时间要求执行归类,随后通过分区函数根据参数列表进行不同分区处理操作,实现数据的定时发布;(三)更新发布与定时发布合并优化:通过分区函数,将更新发布的数据传入指定分区做更新发布的处理,定时发布逻辑不变,对无效数据做出处理。2.根据权利要求1所述的一种基于go

streams的边缘数据实时计算方法,其特征在于,执行步骤(一),基于流式处理库go

streams实现数据更新发布的具体流程如下:数据从Source流出,进入一个FlatMap,该FlatMap将数据分解成单点数据并流出,流出的数据进入Filter进行过滤,不满足过滤条件的数据被丢弃,满足过滤条件的数据进入下一个FlatMap,该FlatMap将数据整合为目标格式,并后传至Sink。3.根据权利要求2所述的一种基于go

streams的边缘数据实时计算方法,其特征在于,执行步骤(二),基于流式处理库go

streams实现数据定时发布的具体流程如下:数据从Source流出,进入FlatMap,该FlatMap将数据分解成单点数据并流出,使用Partition分区函数根据参数列表对FlatMap流出的数据进行不同分区处理,使时间频率相同的数据进入同一个flow中,对任一个flow,数据按照设定规则进入相应的TumblingWindow滚动窗口,流入TumblingWindow滚动窗口的数据达到设定时间间隔后传入FlatMap,FlatMap对传入数据进行处理并流出,对不同flow中FlatMap的流出数据进行Merge操作,并通过一个新的FlatMap传送至Sink。4.根据权利要求3所述的一种基于go

streams的边缘数据实时计算方法,其特征在于,执行步骤(三)时,更新发布与定时发布数据从Source流出,进入FlatMap,FlatMap将数据分解成单点数据并流出,使用Partition分区函数判断FlatMap流出的数据是否满足参数列表的参数要求,若参数列表中找不到当前数据对应的参数要求,则将此数据传入ignoreFilter,若参数列表中找到当前数据对应的参数要求,则根据参数条件将需要变位的数据传入Filter,需要定时上送的数据传入不同flow中,最后将所有数据进行Merge操作,并通过一个新的FlatMap传送至Sink。5.一种基于go

stre...

【专利技术属性】
技术研发人员:李新志李刘鹏金宁
申请(专利权)人:上海沄熹科技有限公司
类型:发明
国别省市:

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

1