java - 如何使用Kafka传输文件

标签 java apache-kafka kafka-consumer-api kafka-producer-api

我的进程时不时地创建大量文件,我想将文件从本地目录传输到 HDFS 中的某个位置,除了使用 NiFi 之外,是否可以在 java 中开发该流程。如果是的话,请通过提供一些 Java 引用代码来指导我。

请帮帮我!

最佳答案

你可以做几件事:-

1) 使用 Apache Flume :- https://www.dezyre.com/hadoop-tutorial/flume-tutorial 。此页面显示:-“Apache Flume 是一个分布式系统,用于将文件聚合到单个位置。”此解决方案应该比使用 kafka 更好,因为它是专门为文件设计的。

2) 编写 Java 代码以 ssh 连接到您的计算机,并扫描在特定时间戳之后修改的文件。如果您发现此类文件,请打开输入流并将其保存在您的 java 代码正在运行的机器上。

3) 或者,您的 java 代码可以在正在创建文件的计算机上运行,​​您可以扫描在特定时间戳之后创建的文件并将它们移动到任何新计算机

4)如果你只想使用kafka。您可以编写 java 代码来读取文件、查找最新文件/行并将其发布到 kafka 主题。 Flume 可以开箱即用地完成这一切。

关于java - 如何使用Kafka传输文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47136130/

相关文章:

java - 如何查看页面输出的java错误?

apache-kafka - -bash : kafka-server-start. sh:找不到命令

apache-kafka - 只允许特定主机/IP的消费者访问kafka主题

java - 有时,确实会创建唯一 id 的消费者组,并且消费者会在没有分区的情况下卡住

java - 不建议在没有服务器身份验证的情况下建立 SSL 连接

java - 错误:应该在名为X.java的文件中声明X类是公共(public)的

java - 什么是NullPointerException,我该如何解决?

mysql - 设置Kafka连接器管道时出错

apache-kafka - 了解 kafka 主题的现有生产者

apache-kafka - 在汇合模式注册表中自动注册模式或手动注册哪个更好?