本文概述
- 消息压缩的需要
- 生产者批次/记录批次
- 消息压缩格式
- 消息压缩的缺点
消息压缩的需要可能有以下原因可以更好地说明减少消息大小的需要:
- 它将减少将数据发送到Kafka所需的延迟和大小。
- 它将减少带宽,这将使用户增加发送到代理的净消息。
- 当数据通过云平台存储在Kafka中时,可以降低成本。这是因为云服务是付费的。因此,它计算存储在Kafka中的数据量。
- 消息压缩不需要对代理和使用者的配置进行任何更改。
- 消息压缩不需要对代理和使用者的配置进行任何更改。
- 减少的磁盘负载将导致快速的读写操作。
文章图片
注意:消息大小不应超过批处理大小。否则,该消息将不会被批量处理。此外,批次是按分区分配的,因此请勿将其设置为很高的数量。生产者批次更大,有效使用消息压缩技术。
消息压缩格式消息压缩总是在生产者端进行,因此不需要在消费者或代理端更改配置。
文章图片
在该图中,创建了200 MB的生产者批次。压缩后,它减少到101 MB。
为了压缩数据,使用了“ compression.type”。这使用户可以确定压缩类型。类型可以是’ gzip’ ,’ snappy’ ,’ lz4’ 或’ none’ (默认)。 “ gzip”具有最大的压缩率。
消息压缩的缺点消息压缩有以下缺点:
- 生产者将一些CPU周期用于压缩。
- 使用者使用一些CPU周期进行解压缩。
- 这些缺点导致CPU使用率增加。
推荐阅读
- kafka安全性
- kafka流处理的关键概念
- kafka流处理
- kafka实时例子
- kafka创建twitter生产者(producer)
- kafka连接(connect)
- kafka监控和管理
- 在java中创建kafka消费者(consumer)
- kafka生产者回调(callback)