## 概述
Kafka通过基于时间与大小的保留策略管理日志数据,日志压缩在键级别保留最新值以减少冗余。结合合理的分区与副本设置,在保证消费语义的同时优化存储与查询效率。
## 关键实践与参数
- 保留时间与大小: `retention.ms` `retention.bytes`
- 压缩开关: `cleanup.policy=compact,delete`
- 压缩阈值: `min.cleanable.dirty.ratio` `segment.ms`
- 键语义: 以业务键写入,删除使用空值
- 监测: 段文件数量、压缩进度与磁盘使用
## 示例/配置/实现
```bash
kafka-configs --bootstrap-server kafka:9092 --alter --topic orders --add-config retention.ms=604800000
kafka-configs --bootstrap-server kafka:9092 --alter --topic kv_state --add-config cleanup.policy=compact
kafka-configs --bootstrap-server kafka:9092 --alter --topic kv_state --add-config min.cleanable.dirty.ratio=0.5
```
```bash
kafka-topics --bootstrap-server kafka:9092 --describe --topic kv_state
```
```java
Properties p = new Properties();
p.put("bootstrap.servers", "kafka:9092");
KafkaProducer

发表评论 取消回复