首页 > 解决方案 > kafka 与 Apache Spark 的集成

问题描述

我正在学习 apache spark 与 kafka 的集成,这样每当新消息到达 Kafka 的主题时,我的代码就可以自动运行。

我也读过官方文档

https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html

但我仍然很困惑它是如何工作的。我在 java spark 中编写了我的字数统计程序,而另一边 Kafka 正在运行。

结构化流是 kafka 和 spark java 代码之间的桥梁吗?它是否一直在听 kafka 并且每当消息到达时,它会从 kafka 中提取并将其传递给 spark java 代码..?这是对的吗 ..?

如果没有,任何人都可以与我分享,它是如何用简单的话来工作的..?任何其他参考将不胜感激。

我应该如何将我的 java spark 代码集成到 Kafka,以便每当新消息到达 kafka 时它会自动触发..?

谢谢

标签: javaapache-sparkapache-kafka

解决方案


Spark 委托给基本的 Kafka 消费者 API,这些 API 在消息到达主题时分批轮询消息。

在这方面,结构化流和常规 Spark 流的工作方式相同。

如果您有兴趣了解 Kafka 记录传递的工作原理,您可能希望从 Kafka 基本消费者或 Kafka Streams 开始,因为 Spark 可能会过大,具体取决于任务


推荐阅读