У меня есть данные в теме Kafka, которые я хочу сохранить на своем озере данных.
Прежде чем беспокоиться о ключах, я смог сохранить значения Avro в файлах на данных, используя HdfsSinkConnector.Количество значений сообщений в каждом файле определялось свойством «flush.size» HdfsSinkConnector.
Все хорошо.Затем я хотел сохранить ключи.Для этого я использовал kafka-connect-transform-archive, который упаковывает ключ String и значение Avro в новую схему Avro.
Это прекрасно работает ... за исключением того, что flush.size для HdfsSinkConnector теперь игнорируется.Каждый файл, сохраненный в озере данных, содержит ровно 1 сообщение.
Итак, два случая: 1) только значения сохранения, при этом количество значений в каждом файле определяется с помощью flush.size и 2) ключи сохраненияи значения с каждым файлом, содержащим ровно одно сообщение и flush.size, игнорируемыми.
Единственное различие между этими двумя ситуациями заключается в конфигурации для HdfsSinkConnector, которая задает преобразование архива.
"transforms": "tran",
"transforms.tran.type": "com.github.jcustenborder.kafka.connect.archive.Archive"
Может ли kafka-connect-transform-archive игнорировать размер сброса в зависимости от конструкции или есть какая-то дополнительная конфигурация, которая мне нужна для того, чтобы иметь возможность сохранять сообщения с несколькими ключами и значениями на файл в озере данных?