kafka中的数据清理策略

Kafka 中的数据清理策略主要用于控制数据的保留时间和存储空间,确保系统不会因为数据积累过多而影响性能。Kafka 提供了两种主要的数据清理策略:

1、基于时间的清理策略:

  • 配置参数:log.retention.hours 或 log.retention.ms
  • 工作原理:Kafka 会根据配置的时间阈值自动删除超过该时间的消息。
  • 示例:如果设置 log.retention.hours=72,则 Kafka 会删除超过72小时的消息。

2、基于大小的清理策略:

  • 配置参数:log.retention.bytes
  • 工作原理:Kafka 会根据配置的存储空间阈值自动删除最早的消息,以确保每个分区的总大小不超过设定的值。
  • 示例:如果设置 log.retention.bytes=1073741824,则 Kafka 会确保每个分区的总大小不超过1GB,超出部分的最早消息将被删除。

Kafka的消息存储在磁盘中,为了控制磁盘占用空间,Kafka需要不断地对过去的一些消息进行清理工作。Kafka的每个分区都有很多的日志文件,这样也是为了方便进行日志的清理。在Kafka中,提供两种日志清理方式:

  • 日志删除(Log Deletion):按照指定的策略直接删除 不符合条件的日志。
  • 日志压缩(Log Compaction):按照消息的key进行整合,有相同key的但有不同value值,只保留最后一个版本。
相关推荐
w-w0w-w1 小时前
SQL注入
网络·数据库·sql
tianyuanwo1 小时前
NetBox 数据库详解:当“关系型数据库”被装进一个网络运维的领域模型里
运维·数据库·netbox
一条泥憨鱼1 小时前
【计算机网络】短连接、长连接与连接池:从 TCP 握手到池化复用的完整链路
网络·数据库·网络协议·tcp/ip·计算机网络
IvorySQL1 小时前
深入 PostgreSQL WAL:从崩溃恢复到逻辑复制
数据库·postgresql
幽灵诶3 小时前
Mysql(基于测试的学习)
数据库·mysql
砚底藏山河3 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
宇宙无敌暴龙战士6663 小时前
MySQL 8 库表操作学习笔记:SQL 基础、库表管理、约束与用户授权全流程
数据库·sql·mysql·学习笔记·后端开发
猿究院_夏燊3 小时前
MySQL 的四种隔离级别
java·数据库·mysql
say_fall4 小时前
【Linux系统编程】Ext 文件系统:磁盘与存储、文件与目录、现代计算机究竟如何寻找文件
linux·运维·服务器·数据库·c++
共享家95275 小时前
408 操作系统第一章
服务器·数据库·windows