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值,只保留最后一个版本。
相关推荐
Alan_752 小时前
API 接口慢调用根因定位:从 TCP 建连到数据库 IO 的全栈排查实战
数据库
多巴胺梦想家2 小时前
事务与并发控制:当多人同时操作数据库
服务器·数据库·oracle
howard20053 小时前
PostgreSQL起步
数据库·postgresql
秋田君4 小时前
QT_QT布局详解
开发语言·数据库·qt
长不胖的路人甲4 小时前
RabbitMQ 死信队列 DLQ
分布式·rabbitmq
可乐ea4 小时前
【Redis八股|第8篇】Redis 分布式锁原理与 Redisson 使用
数据库·redis·分布式·面试题·redis八股
李燚4 小时前
Eino devops 调试系统源码:GraphCompileCallback 怎么工作(第50篇-E36)
数据库·golang·agent·devops·graphql·aiagent·eino
ClouGence5 小时前
Oracle 到 OceanBase 迁移方案横评:停机导出/导入 vs OMS vs CDC 工具
数据库·oracle
Meya11275 小时前
不同规模机房怎么选 U 位系统?8 柜小型机房、40 柜数据中心完整选型参考
服务器·网络·数据库
从此以后自律6 小时前
MySQL 删除数据全方式详解
数据库·mysql