使用flume将数据从kafka topic导入hdfs文件夹
Posted
技术标签:
【中文标题】使用flume将数据从kafka topic导入hdfs文件夹【英文标题】:Using flume to import data from kafka topic to hdfs folder 【发布时间】:2018-02-14 08:19:27 【问题描述】:我正在使用水槽从 kafka 主题 HDFS 文件夹中加载消息。所以,
-
我创建了一个主题TT
我通过 kafka 控制台生产者向 TT 发送了消息
我配置了flume代理FF
运行水槽代理flume-ng agent -n FF -c conf -f flume.conf - Dflume.root.logger=INFO,console
代码执行停止,没有错误,它不会向 HDFS 写入任何内容。日志文件包含此警告 主题的消费者线程flume_-0没有使用代理分区。
非常感谢任何帮助。在此先感谢。:)
【问题讨论】:
尝试使用Flafka [ blog.cloudera.com/blog/2014/11/… ],你可以在cloudera网站找到一个例子并解释 您最好使用 HDFS connector 进行 Kafka Connect。它是开源的,可用standalone 或作为Confluent Platform 的一部分。 Flume 已经走到了尽头;我同意@RobinMoffatt 的观点,即 Kafka Connect 是现在解决此问题的标准方法。如果您想继续此操作,请查看您的flume.conf
。
【参考方案1】:
这个 conf 解决了问题
FF.sources=kafka-source FF.channels = kafka 通道 FF.sinks =hdfs-sink FF.channels.kafka-channel.type org.apache.flume.channel.kafka.KafkaChannel FF.channels.kafka-channel.kafka.bootstrap.servers = 宽纬度:9092 FF.channels.kafka-channel.kafka.topic = TT FF.channels.kafka-channel.parseAsFlumeEvent = 假 FF.sinks.hdfs-sink.hdfs.writeFormat = 文本 FF.sinks.hdfs-sink.channel = kafka-channel FF.sinks.hdfs-sink.type = hdfs FF.sinks.hdfs-sink.hdfs.path = hdfs://***:8020/spark/【讨论】:
以上是关于使用flume将数据从kafka topic导入hdfs文件夹的主要内容,如果未能解决你的问题,请参考以下文章
关于从kafka采集数据到flume,然后落盘到hdfs上生成的一堆小文件的总结
Flume推送数据到Kafka的Topic的时候,Kafka的多个Partition怎么均衡
[Flume][Kafka]Flume 与 Kakfa结合例子(Kakfa 作为flume 的sink 输出到 Kafka topic)