为Kafka调整S3文件大小

问题描述 投票:1回答:1

我试图深入了解S3连接器的flush.sizerotate.interval.ms配置。我部署了S3连接器,文件大小似乎从6 kb一直到30 mb,不知道这里有人可以帮助我如何获得几乎相等的文件大小的建议。

这是我的设置:flush.size= 200000rotate.interval.ms=10min

[我们也根据git https://github.com/canelmas/kafka-connect-field-and-time-partitioner中的示例尝试滚动自己的连接器,但仍然无法使文件大小保持相同。

amazon-s3 apache-kafka apache-kafka-connect confluent
1个回答
0
投票

S3 Sink连接器将数据写入每个Kafka分区的分区路径以及partitione.class定义的分区路径。

基本上是S3连接器,将缓冲区刷新到以下条件。

  1. rotate.schedule.interval.ms:如果已过去此时间
  2. rotate.interval.ms:ime在timestamp.extractor时间方面已过去

注意:此有用的清晰的后退数据让我们假设rotation.interval.ms然后我们有6个小时的延迟数据,因此每个时间戳超过10相反,如果没有数据,分钟刷新将延迟几秒钟正在流动,它将等待接收通过的下一个rotate.interval.ms

  1. flush.size:假设数据流量很高,并且如果消息在点1和点2之前到达了flush.size,则刷新将被触发。同时,如果数据量不足,则刷新将基于点1和点2获得trigget

如果使用基于时间的分区程序

  1. partition.duration.ms:定义单个编码分区目录中刷新到s3的最长时间。
© www.soinside.com 2019 - 2024. All rights reserved.