[发明专利]一种自定义保存Kafka Offset的方法在审
申请号: | 202011576775.5 | 申请日: | 2020-12-28 |
公开(公告)号: | CN112506862A | 公开(公告)日: | 2021-03-16 |
发明(设计)人: | 董可伦;刘传涛;胡清 | 申请(专利权)人: | 浪潮云信息技术股份公司 |
主分类号: | G06F16/13 | 分类号: | G06F16/13;G06F16/182;G06F8/41 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 郗艳荣 |
地址: | 250100 山东省济南市高*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 自定义 保存 kafka offset 方法 | ||
本发明特别涉及一种自定义保存Kafka Offset的方法。该自定义保存Kafka Offset的方法,使用Spark程序计算每个批次数据中最大offset消息,并将获得的最大offset消息解析为json字符串,然后用源码HDFSMetadataLog将json字符串保存到HDFS目录中。该自定义保存Kafka Offset的方法,能够保证之前消费并输出过的数据在程序重启后不再重复消费,而是从上次断开(停止或者报错导致)的位置开始消费,不但能够避免程序重启时报错,并且方便可靠,不用单独维护其他的外部数据源,降低了维护成本。
技术领域
本发明涉及大数据实时计算技术领域,特别涉及一种自定义保存Kafka Offset的方法。
背景技术
近年来,DT(Data Technology,数据处理技术)这个术语逐渐走进人们的视野,DT也被视为在未来社会发展的形态之一。数据资源成为最为宝贵的资源之一,如何采集、存储和计算数据成为了当前热点话题,Spark作为当前大数据领域内使用最多的技术,引起了工业界的广泛关注。
Spark是基于内存的分布式计算框架,并且对Hadoop生态系统有高度的支持,比如支持从HDFS、Hbase、Hive等分布式文件系统读取数据。目前,Spark发展非常迅速,支持的持久层框架越来越多,随着SparkSQL的出现,通过SparkSQL直接访问Hive更加方便,数据开发人员直接用SQL语句便可以做数据分析,降低了Spark和大数据开发难度。同时SparkStreaming/Structured Streaming作为目前最为流行的一种实时流计算框架,具有良好的扩展性、高吞吐量以及容错机制,能够满足多种场景应用,在大数据时代,企业搭建实时计算平台中占据着举足轻重的地位。
Spark+Hadoop的组合,是未来大数据领域最热门的组合,也是最有前景的组合。Structured Streaming是Spark2.0版本提出的新的实时流框架,由于现在SparkStreaming已经非常稳定,研究重点已转移到Structured Streaming。
为了保证之前消费并输出过的数据在程序重启后不再重复消费,而是从上次断开(停止或者报错导致)的位置开始消费,本发明提出了一种自定义保存Kafka Offset的方法。
发明内容
本发明为了弥补现有技术的缺陷,提供了一种简单高效的自定义保存KafkaOffset的方法。
本发明是通过如下技术方案实现的:
一种自定义保存Kafka Offset的方法,其特征在于:使用Spark程序计算每个批次数据中最大offset消息,并将获得的最大offset消息解析为json字符串,然后用源码HDFSMetadataLog将json字符串保存到HDFS目录中。
包括以下步骤:
第一步,获取最新的offset消息作为Spark Structured Streaming程序启动时对应的Kafka的起始偏移量Starting Offsets;
第二步,获取该批次数据中最大offset消息,并将其解析为json字符串;
第三步,在Spark程序消费完该批次数据后将json字符串和对应的批号batchId添加到检查点Check Point目录中。
所述第一步中,用Offset日志的getLatest方法获取最新的offset消息和批号batchId,然后将获取的最新offset消息作为Spark Structured Streaming程序启动时对应的Kafka的起始偏移量Starting Offsets。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮云信息技术股份公司,未经浪潮云信息技术股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011576775.5/2.html,转载请声明来源钻瓜专利网。