Как использовать flume для получения данных от кафки

Теперь мне нужно использовать лоток, чтобы получить данные от кафки. Я хочу получать данные из кафки каждые 30 минут и записывать данные в файл, который я могу использовать для онлайн-обучения. Конфиг выглядит следующим образом:

# Name the components on this agent
a1.sources = r1
a1.sinks = k1
a1.channels = c1

# Describe/configure the source
a1.sources.r1.type = org.apache.flume.source.kafka.KafkaSource
a1.sources.r1.batchSize = 5000
a1.sources.r1.batchDurationMillis = 2000
a1.sources.r1.kafka.zookeeperConnect = host
a1.sources.r1.kafka.topics = topic

# Use a channel which buffers events in memory
a1.channels.c1.type = file


# Bind the source and sink to the channel
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

a1.sinks.k1.type  = file_roll
a1.sinks.k1.sink.directory = /home/flume_log
a1.sinks.k1.sink.rollInterval=30
a1.sinks.k1.channel  =  c1

если в конфиге что-то не так. когда я запускаю test.conf, я не могу получить их в файле, хотя и произвел некоторые данные. Все файлы пусты

Есть ли конкретная причина использовать Flume? Вы можете писать в файл из Kafka, используя Kafka Connect.

Robin Moffatt 10.09.2018 15:07

@RobinMoffatt есть ли методы, которые могут записывать данные из кафки в файл каждые 30 минут? Однажды я написал код для записи данных в файл, если была произведена часть записи, то есть мониторинг в реальном времени. Если данные, полученные за период, были огромными, я полагаю, это будет большой тратой эффективности. Не могли бы вы дать мне больше предложений?

Kwoks 12.09.2018 03:37
0
2
56
0

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