【发布时间】:2024-04-25 05:25:01
【问题描述】:
我正在使用融合的 hdfs 接收器连接器,我以 avro 格式插入数据。
我希望使用 snappy 压缩来压缩数据。
Kafka: Does Confluent’s HDFS connector support Snappy compression? 我使用了上面线程中提到的解决方案
我添加了配置
avro.codec=snappy
但是,它对我不起作用 如 中一样,创建的文件未使用 snappy 压缩进行压缩。 通常,当我运行 spark 作业时,我的文件会附加 .snappy 文件扩展名 但是,在这种情况下,我认为不会发生这种情况。我假设我的文件没有被 snappy 压缩。
还有其他我遗漏的配置吗?
【问题讨论】:
-
“没有用”是什么意思?当您设置该属性时,您希望看到什么?
-
与中一样,创建的文件未使用 snappy 压缩进行压缩。通常,当我运行 spark 作业时,我的文件会附加 .snappy 文件扩展名但是,在这种情况下,我没有看到这种情况发生。我假设我的文件没有被 snappy 压缩。
-
文件扩展名没有任何意义,Kafka Connect AvroFormat 总是以 avro 文件扩展名作为后缀。我忘记了我是如何检查的,但我认为您需要使用十六进制查看器来检查数据以查看它在 Avro 标头中显示“snappy”(我使用 S3 Connect,而不是 HDFS,但我认为 Avro 文件编写器是相同的)... 如果您在没有编解码器的情况下编写相同的数据,您可能还会看到更大的文件
-
好的!非常感谢!我使用 [hadoop jar /path/to/avro-tools.jar getmeta FILE_LOCATION_ON_HDFS --key 'avro.codec' ] 来检查我的文件的压缩情况,它显示出来了!这是我的一个错误,它工作得很好!谢谢!
标签: apache-kafka hdfs avro apache-kafka-connect confluent-platform