前言

在Kafka中,我们可能会发现两个与retention相关的配置:

  • log.retention.minutes
  • offsets.retention.minutes

那么它们之前的差别是什么呢?

定义

首先让我们看看它们在官方文档中的定义

名称 描述 类型 默认值 有效值 重要性
log.retention.minutes The number of minutes to keep a log file before deleting it (in minutes), secondary to log.retention.ms property. If not set, the value in log.retention.hours is used
在删除日志文件之前保留日志文件的分钟数(以分钟为单位),优先级弱于 log.retention.ms。 如果未设置,则使用log.retention.hours中的值
int null  
offsets.retention.minutes Log retention window in minutes for offsets topic
主题偏移量日志文的保留时长(分钟)
int 1440 [1,...]

两者的差别

log.retention.minutes设定的是消息日志的保留时长,而offsets.retention.minutes则是记录topic的偏移量日志的保留时长。

偏移量是指向消费者已消耗的最新消息的指针。 比如,你消费了10条消息,那么偏移量将移动10个位置。 这个偏移量会被记录到日志中,以便我们下次消费时知道应该从哪个offset开始继续消费。
而offsets.retention.minutes允许我们将偏移量重置,即它会清除过期的记录主题偏移量的日志,一旦记录主题偏移量的日志被清楚,我们将不知道之前消费到具体哪个offset。这个设置并不会影响消息日志的保留时间。

比如我们将offsets.retention.minutes设为10,即十分钟。然后最后一次主题A的消费偏移量是100,十分钟内继续消费,讲会从101开始继续消费,但是十分钟内我们没有继续消费,该记录主题A的消费偏移量100的日志将会被清除,也就是下次继续消费主题A的消息时,我们不知道上一次消费哪里了(注意,主题A所存储的消息依旧在broker上,并没有被删除), 在这种情况下,将会根据auto.offset.reset 的设置,读取最早(smallest)/最晚(largest)的消息。

一般来说,记录topic的偏移量日志的保留时长需要设置的比消息日志的保留时长更大。

Kafka配置offsets.retention.minutes和log.retention.minutes的区别相关推荐

  1. kafka 配置大全(中文,英文)

    配置名 默认值 英文描述  中文描述 zookeeper.connect Zookeeper host string Zookeeper主机字符串 advertised.host.name null ...

  2. Kafka配置消息保存时间的方法

    为什么80%的码农都做不了架构师?>>>    配置参考 然后不废话,直接贴最终的关键配置: # 想实现消息队列中保存2小时的消息,那么配置应该像这样: log.roll.hours ...

  3. Kafka 配置参数汇总及相关说明

    Kafka为broker,producer和consumer提供了很多的配置参数. 了解并理解这些配置参数对于我们使用kafka是非常重要的. 本文列出了一些重要的配置参数. 官方的文档 Config ...

  4. CDH6.3.2之Kafka配置和命令

    文章目录 版本查看 命令 创建主题 查看有哪些主题 查看某个主题的描述 生产和消费 压测 1.创建单分区单副本主题 2.写测试 3.读测试 配置 最大Java堆大小 日志数据存储路径 默认副本数 日志 ...

  5. Kafka 配置指南

    文章目录 一.简介 1.1.概述 1.1.1.Apache Kafka是 一个分布式流处理平台. 1.1.2 .Kafka适合什么样的场景? 1.1.3 Kafka的特性 1.1.4 .Topics和 ...

  6. Kafka配置详解-Consumer配置

    转载自:http://orchome.com/535 3.4 kafka消费者配置 在0.9.0.0中,我们引入了新的Java消费者来替代早期基于Scala的简单和高级消费者.新老客户端的配置如下. ...

  7. kafka集群中常见错误的解决方法:kafka.common.KafkaException: Should not set log end offset on partition

    kafka集群中常见错误的解决方法:kafka.common.KafkaException: Should not set log end offset on partition 参考文章: (1)k ...

  8. Kafka配置SASL_SSL认证传输加密

    Kafka配置SASL_SSL认证传输加密 一.SSL证书配置 1.生成证书 如我输入命令如下:依次是 密码-重输密码-名与姓-组织单位-组织名-城市-省份-国家两位代码-密码-重输密码,后面告警不用 ...

  9. Windos环境下kafka配置启动Zookeeper时,报错:Invalid config, exiting abnormally.

    Windos环境下kafka配置启动ZooKeeper时,报错:Invalid config, exiting abnormally. 执行命令: D:\kafkaOnWindows\kafka_2. ...

最新文章

  1. Tomcat内存溢出解决方案
  2. BGP水平分割的疑惑
  3. Online Shopping网上商城数据库设计
  4. leetcode 739. 每日温度 单调栈解法和暴力法及其优化 c代码
  5. tf.boolean_mask()的详细用法
  6. 跟踪调试JDK源码时遇到的问题及解决方法
  7. WPF多线程UI更新——两种方法
  8. 【转】RNN、LSTM、Transformer、BERT简介与区别
  9. Uvaoj10054 - The Necklace
  10. 如何解释营销能力与技术能力是正交的
  11. golang 数组、指针数组、数组指针使用总结
  12. ThinkPHP Bootstrap简约自适应网址导航网站源码
  13. mysql 触发器 for each row 理解_MySQL触发器中的“ FOR EACH ROW”如何工作?
  14. mysql 数据库连接 w3school_PHP 连接 MySQL
  15. Softmax Derivation
  16. R语言经纬度度分秒转小数点
  17. [CATARC_2017] 第一周
  18. 概率论基础 - 5 - 马尔可夫不等式
  19. android 时钟字体颜色,安卓手机美化之修改状态栏日期时间颜色
  20. ADIS16488与单片机SPI通信返回0xFFFF的问题解决方法

热门文章

  1. Spring中ApplicationContextAware的用法
  2. 祝贺自己操作系统JAVA项目有进展!!
  3. SharePoint 2010 在多台前端环境 还原 网站集 问题解析
  4. 使用jsonp及jquery的$.ajax解决跨域问题
  5. FLASH脚本语言详解
  6. [网络安全提高篇] 一〇六.SQL注入之手工注入和SQLMAP入门案例详解
  7. 【python数据挖掘课程】二十四.KMeans文本聚类分析互动百科语料
  8. 小姐姐教我的 sklearn 逻辑回归
  9. 大数据WEB阶段 Js常用的页面操作
  10. Java中集合(四)LinkedList