gpt4 book ai didi

apache-spark - Apache Spark 中的 Spark 驱动程序

转载 作者:行者123 更新时间:2023-12-02 19:53:04 25 4
gpt4 key购买 nike

我已经有一个由 3 台机器组成的集群(VM virtualbox 的 ubuntu1、ubuntu2、ubuntu3),运行 Hadoop 1.0.0。我在每台机器上安装了 Spark。 ub1 是我的主节点,其他节点作为从节点工作。我的问题是 Spark 驱动器到底是什么?我们是否应该通过 spark.driver.host 设置 Spark 驱动程序的 IP 和端口以及它将在哪里执行和定位? (主或从)

最佳答案

spark driver 是声明数据 RDD 上的转换和操作并向 master 提交此类请求的程序。

实际上,驱动程序是创建 SparkContext 的程序,连接到给定的 Spark Master。对于本地集群,就像您的情况一样,master_url=spark://<host>:<port>

它的位置独立于主/从。您可以与主节点位于同一位置或从另一个节点运行它。唯一的要求是它必须位于 Spark Workers 可寻址的网络中。

驱动程序的配置如下所示:

val conf = new SparkConf()
.setMaster("master_url") // this is where the master is specified
.setAppName("SparkExamplesMinimal")
.set("spark.local.ip","xx.xx.xx.xx") // helps when multiple network interfaces are present. The driver must be in the same network as the master and slaves
.set("spark.driver.host","xx.xx.xx.xx") // same as above. This duality might disappear in a future version

val sc = new spark.SparkContext(conf)
// etc...

详细解释一下不同的角色:

  • 驱动程序准备上下文并使用 RDD 转换和操作声明对数据的操作。
  • 驱动程序将序列化的 RDD 图提交给 master。 master从中创建任务并将其提交给worker执行。它协调不同的工作阶段。
  • workers 是任务实际执行的地方。它们应该拥有执行 RDD 上请求的操作所需的资源和网络连接。

关于apache-spark - Apache Spark 中的 Spark 驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24637312/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com