Apache Bookkeeper 删除日志

Apache Bookkeeper delete log

在 Apache bookkeeper 中,我们如何删除分类帐中的日志条目?如果 ledge 是不可变的并且不能删除条目,pulsar 如何从 bookies 中删除过期的消息?

BookKeeper 不提供删除分类帐中单个条目的接口。它只提供方法 delete ledgers。一旦分类账被删除,博彩公司将 garbage-collect 他们的条目在后台回收磁盘 space。

一个 Pulsar 主题分区由多个分类帐组成。在任何时候,pulsar broker 都在为一个分区写入一个分类账。当账本达到给定大小或经过一定时间后,pulsar broker 将关闭正在写入的账本,并打开一个新的账本进行写入。 pulsar 将分类帐列表作为主题分区元数据的一部分。如果一个账本中的所有消息都已被消费或过期,则该账本将被 pulsar broker 删除。

以下链接有助于理解这一点:

[1] how a segment-based architecture delivers better performance, scalability, and resilience

[2] pulsar faq