Flume-ng приемник hdfs

Я пытаюсь обновлять файл.tmp дополнительными событиями каждые 5 минут, мой источник работает медленно, и требуется 30 минут, чтобы получить файл размером 128 МБ в мой приемник hdfs.

Есть ли какое-либо свойство в приемнике flume hdfs, где я могу контролировать частоту обновления файла.tmp до того, как файл будет добавлен в HDFS.

Мне нужно это, чтобы увидеть данные в HDFS с помощью таблицы кустов из файла.tmp.

В настоящее время я просматриваю данные из файла.tmp, используя таблицу кустов, но файл.tmp долго не обновляется, так как размер рулона составляет 128 МБ.

1 ответ

Решение

Подумайте об уменьшении пропускной способности вашего канала и настроек транзакции:

capacity    100 The maximum number of events stored in the channel
transactionCapacity 100 The maximum number of events the channel will take from a source or give to a sink per transaction

Эти параметры отвечают за управление тем, сколько событий будет помещено в очередь перед их сбросом в ваш приемник. Например, если вы уменьшите это значение до 10, каждые 10 событий будут сброшены в ваш файл tmp.

Второе значение, которое вам понадобится для изменения batchSize в вашем приемнике hdfs:

hdfs.batchSize  100 number of events written to file before it is flushed to HDFS

Значение по умолчанию 100, вероятно, будет слишком высоким, если у вас очень медленный источник, и вы хотите чаще видеть события.

Другие вопросы по тегам