5.2. 消息保留
消息保留策略定义消息存储在 Kafka 代理中的时长。它可根据时间、分区大小或两者定义。
例如,您可以定义应保留信息:
- 7 天
- 直到 parition 有 1GB 的消息。达到限制后,将删除最旧的消息。
- 持续 7 天,或者直到达到 1GB 限制为止。将首先使用任何限制。
警告
Kafka 代理将信息存储在日志片段中。只有在创建新日志分段时,才会删除超过其保留策略的消息。当上一个日志片段超过配置的日志片段大小时,会创建新的日志片段。此外,用户可以要求定期创建新的片段。
另外,Kafka 代理支持紧凑策略。
对于包含紧凑策略的主题,代理始终只保留每个密钥的最后一条消息。使用相同密钥的旧消息将从分区中删除。由于压缩是一种定期执行的操作,因此当具有相同密钥的新消息被发送到分区时,它不会立即发生。相反,可能需要稍等片刻后,旧消息才会被删除。
有关消息保留配置选项的详情请参考 第 5.5 节 “主题配置”。