[发明专利]一种数据写入Kafka的方法、装置及设备有效

专利信息
申请号: 202011283123.2 申请日: 2020-11-17
公开(公告)号: CN112328602B 公开(公告)日: 2023-03-31
发明(设计)人: 周朝卫;毛春阳 申请(专利权)人: 中盈优创资讯科技有限公司
主分类号: G06F16/22 分类号: G06F16/22;G06F16/23;G06F16/27
代理公司: 上海嘉蓝专利代理事务所(普通合伙) 31407 代理人: 卢化宇
地址: 201800 上海市嘉定区安*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 数据 写入 kafka 方法 装置 设备
【说明书】:

发明的实施例提供了一种数据写入Kafka的方法、装置及设备。所述方法包括检索批次号,存在且任务执行状态为任务开始,则合并标识为肯定标识;存在且任务执行状态为任务成功,则设置合并标识为否定标识;不存在,则插入当前任务的批次号及其状态信息,设置合并标识为否定标识;读取最近批次的Topic的偏移量,从偏移量开始消费数据源Kafka的数据;每条消费的数据对应生成一个Key,将消费的数据和对应的Key写入目标存储Kafka的Topic;根据合并标识对数据进行合并,并保存。以此方式,保证在异常场景下,程序重启导致的数据重新处理,再次写入时不会导致数据的重复,从而实现数据存储一致性。

技术领域

本发明的实施例一般涉及数据处理领域,并且更具体地,涉及一种数据写入Kafka的方法、装置及设备。

背景技术

在现实场景中,经常需要通过Spark Structured Streaming读取Kafka,对读取的数据进行清洗处理等操作,例如进行字符串的截取、数据类型的转换、日期格式转换等。然后再将处理后的数据写入Kafka。

然而,将数据写入Kafka的过程中,写入后的数据不能更改和删除;而且SparkStructured Streaming消费Kafka的Topic,并反写Kafka的Topic,只能保证数据不丢失,无法保证数据不重复写入。例如,数据保存到Kafka后,没来得及保存offset,此时程序重启,将从上上次保存的offset开始消费,如此,就重复消费了上一次的数据,导致数据重复。

发明内容

根据本发明的实施例,提供了一种数据写入Kafka的方案。

在本发明的第一方面,提供了一种数据写入Kafka方法。该方法包括:

步骤1:分批次消费数据源Kafka的Topic的数据,在数据库中检索当前任务的批次号,如果数据库中存在所述批次号,则执行步骤2;否则,向所述数据库中插入当前任务的批次号及其状态信息,并设置合并标识为否定标识,执行步骤3;

步骤2:如果当前批次任务的状态为任务开始,则设置合并标识为肯定标识,执行步骤3;如果当前批次任务的状态为任务成功,则设置合并标识为否定标识,执行步骤6;

步骤3:读取最近批次的数据源Kafka的Topic的偏移量,从所述偏移量开始消费数据源Kafka的Topic的数据;

步骤4:每条消费的数据对应生成一个Key,将所述消费的数据和对应的Key写入目标存储Kafka的Topic;

步骤5:判断所述合并标识是否为肯定标识,如果是,则对数据进行合并,执行步骤6;否则,更新当前批次任务的状态信息,执行步骤6;

步骤6:保存当前批次的数据源Kafka的Topic的偏移量。

进一步地,所述每条消费的数据对应生成一个Key,包括:

将每条数据对应的Topic名称、分区以及偏移量的字段按特定顺序顺次拼接为一个字符串,形成该条数据的Key。

进一步地,在所述对数据进行合并时,判断待合并的数据中是否存在相同的Key,如果是,则从Key相同的数据中,根据每条数据的写入时间戳,保留最新的一条数据;否则,在数据合并时保留每条数据。

进一步地,所述状态信息包括批次号和任务执行状态,用于标识当前批次任务的执行状态;所述任务执行状态包括任务开始和任务成功。

在本发明的第二方面,提供了一种数据写入Kafka装置。该装置包括:

第一判断模块,用于分批次消费数据源Kafka的Topic的数据,在数据库中检索当前任务的批次号,如果数据库中存在所述批次号,则调用第二判断模块;否则,向所述数据库中插入当前任务的批次号及其状态信息,并设置合并标识为否定标识,调用消费模块;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中盈优创资讯科技有限公司,未经中盈优创资讯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202011283123.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top