【问题标题】:How can I verify if compression is working correctly in Kafka 0.8.2.2?如何验证压缩在 Kafka 0.8.2.2 中是否正常工作?
【发布时间】:2016-04-13 06:39:41
【问题描述】:

我正在使用 Kafka 0.8.2.2 并尝试设置压缩。我将压缩编解码器 (gzip) 作为参数提供给控制台生产者,如下所示。

./kafka-console-producer.sh --broker-list localhost:171 --compression-codec gzip --topic testTopic

问题 这是我需要指定压缩的唯一地方吗? 如何验证压缩是否确实发生? 我如何量化我从压缩中获得的好处? 我应该查找哪些文件(.index、.log)并比较压缩和不压缩的大小以估计收益?

【问题讨论】:

    标签: apache-kafka


    【解决方案1】:

    如何验证是否发生压缩?

    使用DumpLogSegments 工具并替换您的目录位置/日志文件名(默认log.dir/tmp/kafka-logs

    bin/kafka-run-class.sh kafka.tools.DumpLogSegments --files /your_kafka_logs_dir/your_topic-your_partition/00000000000000000000.log --print-data-log | grep compresscodec
    

    您将看到如下所示:

    baseOffset: 0 lastOffset: 0 count: 1 ... compresscodec: NONE ...
    baseOffset: 1 lastOffset: 1 count: 1 ... compresscodec: GZIP ...
    baseOffset: 2 lastOffset: 2 count: 1 ... compresscodec: SNAPPY ...
    baseOffset: 3 lastOffset: 3 count: 1 ... compresscodec: LZ4 ...
    

    更多信息可以在这里的文档中找到https://kafka.apache.org/documentation/#design_compression

    【讨论】:

    • 谢谢,我可以验证
    • 当使用--print-data-log 运行它时,输出也会打印记录。我用--verify-index-only 替换了那个标志,只打印元数据。这是您使用此不同标志的示例bin/kafka-run-class.sh kafka.tools.DumpLogSegments --files /your_kafka_logs_dir/your_topic-your_partition/00000000000000000000.log --verify-index-only | grep compresscodec
    • @marina Confluent Cloud 是如何做到这一点的?
    • @Marina 这可以在 AWS MSK 代理上完成吗?
    猜你喜欢
    • 2019-06-22
    • 2010-09-19
    • 2015-11-04
    • 2020-10-28
    • 1970-01-01
    • 1970-01-01
    • 2015-12-17
    • 2014-02-20
    • 1970-01-01
    相关资源
    最近更新 更多