【问题标题】:Where does Spark Streaming run?Spark Streaming 在哪里运行?
【发布时间】:2017-01-24 17:18:05
【问题描述】:

据我了解,Spark 可以使用 Spark Streaming 分析流。 Kafka 可以接收来自多个来源的数据。 我不明白的是,如果我有一个 Kafka 集群从多个源接收数据,数据会发送到运行 Spark Streaming 的数据库吗?还是 Spark Streaming 在应用服务器上运行?

【问题讨论】:

  • 您可以尝试将Spark集群部署在Kafka(Zookeeper)同一个集群中。我们在生产中的环境很少,一个是 Kafka + zookeeper(在同一个集群中)和 spark 独立的独立集群的主要优点是维护(版本升级,......)但我们也有在生产中运行的 Kafka zookeeper 和 Apache Storm 在同一个集群上(物理服务器100T)。您可以尝试将 Spark(作为独立的一个 jar)添加到您的 Kafka 集群(具有所有必要的配置端口,...)。
  • 另外忘记添加,如果你是运行在 Kubernetes 或 Mesos 上,那么无论你使用哪个服务器,资源管理都会由它们来完成。

标签: apache-spark spark-streaming


【解决方案1】:

如果您使用 Spark Streaming,则需要设置一个 Spark 集群,然后将 Spark Streaming 作业提交到集群。因此,您将需要 2 个集群:Kafka + Spark(或者实际上是 3 个,因为您还需要一个用于 Kafka 的 Zookeeper 集群)。

【讨论】:

  • 所以如果我有一个 spark 集群,那么 spark 作业是在应用服务器上运行的吗?并以 mapreduce 样式分发到 spark 集群?
猜你喜欢
  • 2016-09-13
  • 2023-03-26
  • 2017-12-31
  • 2016-08-03
  • 2014-10-14
  • 1970-01-01
  • 2019-03-18
  • 2021-09-19
  • 2016-09-21
相关资源
最近更新 更多