如何减少分区占用的磁盘空间?

时间:2019-02-13 16:21:08

标签: apache-kafka broker

在我的特定用例中,我们每天将摄取1000GB的数据。如果我在本地压缩文件,则大约为100GB。

我编写了一个示例应用程序来流100MB文件(压缩后将转换为10MB)。单一生产者,单一主题,单一分区。

我已使用事务并启用了压缩(gzip)。我运行命令来查找分区的总大小,它大约为85MB。作为Kafka,可能正在添加一些数据。为了保证一次语义。我创建大量消息并将其提交到事务中。每个消息都被压缩。

我还查看了卡夫卡内部存储的内容:

  • 0000.index
  • 0000.log(这消耗了最多的磁盘空间)
  • 0000.timeindex
  • 0000。快照
  • leader-epoch-checkpoint

我有2个问题:

  1. 为什么Kafka主题即使在压缩后也会占用这么多磁盘空间?

  2. 如何减少分区的磁盘空间?仅供参考,对于我来说,日志压缩将无效,因为每条消息都将具有唯一的密钥。

0 个答案:

没有答案