java - 一个处理HDFS数据的Kafka消费者应该跑到哪里去?

标签 java hadoop apache-kafka

我是 Hadoop 和 Kafka 的新手。我继承了在桌面 Windows 机器上运行的 Kafka 消费者的代码,接收远程集群上可用的新 XML 数据的 HDFS 位置,下载数据进行处理,并将结果写回 HDFS 集群。

在我看来,消费者应该在集群上运行,因为那是数据所在的地方,但我看到的所有示例 Kafka 消费者代码都表明生产者/消费者在常规桌面计算机上运行。 Kafka 消费者的典型目标平台是什么?

最佳答案

生产者和消费者可以在任何地方运行。您看到的示例暗示桌面执行,因为该代码比在 Storm 拓扑中运行的代码简单得多,并且示例往往过于简单。桌面环境的唯一原因是存在应用程序的 UI。

如果应用程序是 headless 的,那么将执行移动到尽可能靠近数据(包括 Kafka 和 HDFS)确实很有意义。

关于java - 一个处理HDFS数据的Kafka消费者应该跑到哪里去?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35784005/

相关文章:

apache-kafka - Kafka Broker vs Topic

python - Kafka-python Producer执行Send,但是没有数据到达Kafka

java - 使用 Splitter 并行处理的 Camel route 的事务

hadoop - HDFS FileSplit位置

hadoop减少拆分大小

eclipse - Nutch/Hadoop:如何配置URL来跟踪作业?

java - 安排排序和打印大型 HashMap 的最快方法?

java - 具有接近双值的 JSlider

java - 如何实时连接Java和Flex?

string - Kafka 消息键 - 同时使用 byte[] 和 String