在 Kafka producer 中设置 `compression.type` 与在 broker 中定义它有什么区别?

问题描述 投票:0回答:2

我正在尝试设置

compression.type
,目前正在我的代理配置中进行设置。如果我不在我的生产者中定义属性,它会生效吗?我没有在我的生产者部署中指定任何
compression.type
值甚至属性。

apache-kafka kafka-producer-api
2个回答
2
投票

这两个属性有不同的用途,请参阅Kafka 参考文档.

在生产者端定义时,

compression.type
编解码器用于压缩每个批次以进行传输,从而提高通道吞吐量。

在主题(代理)级别,

compression.type
定义用于 store 数据在 Kafka 日志中的编解码器,即最小化磁盘使用。特殊值
producer
允许 Kafka 保留生产者设置的原始编解码器。


0
投票

这取决于你想压缩什么。您可以压缩发送的数据,也可以压缩存储在主题中的数据。因此,在代理端定义它以配置数据的保存方式或在生产者端定义它以配置数据的发送方式

经纪方:

指定给定主题的最终压缩类型。此配置接受标准压缩编解码器('gzip'、'snappy'、'lz4'、'zstd')

参考confluent文档

生产方:

生产者生成的所有数据的压缩类型。默认值为无(即不压缩)。有效值为 none、gzip、snappy、lz4 或 zstd。

参考confluent文档

© www.soinside.com 2019 - 2024. All rights reserved.