在独立模式和Yarn / Mesos上运行spark群集

时间:2016-04-01 12:56:02

标签: hadoop apache-spark yarn mesos

目前我正在以独立模式运行我的spark群集。我正在从平面文件或Cassandra(取决于作业)读取数据,并将处理后的数据写回Cassandra本身。

我想知道我是否切换到Hadoop并开始使用Resource manager YARNmesos这样的YARN,它是否给了我额外的性能优势,如执行时间和更好资源管理?

目前有时我在洗牌过程中处理大量数据时可能会出现阶段性故障。如果我迁移到Resource manager,可以{{1}}解决此问题吗?

2 个答案:

答案 0 :(得分:3)

Spark独立集群管理器还可以为您提供集群模式功能。

如果您只运行Spark,Spark独立群集将提供与其他群集管理器几乎所有相同的功能。

当您以群集模式提交应用程序时,所有与作业相关的文件都将被复制到群集中的一台计算机上,然后代表您提交作业,如果您以客户端模式提交应用程序的机器正在提交的工作将负责与驾驶员相关的活动。这意味着已从中提交作业的计算机无法脱机,而在群集模式下,已提交作业的计算机可以脱机。

拥有一个Cassandra集群也不会改变任何这些行为,除非你可以获得火花执行器最近的联系点(就像数据位置一样),它可以节省你的网络流量。

如果使用任一集群管理器,则会重新安排失败的阶段。

答案 1 :(得分:3)

  

我想知道如果我切换到Hadoop并开始使用像YARN或mesos这样的资源管理器,它是否为我提供了额外的性能优势,如执行时间和更好的资源管理?

独立群集模型中,每个应用程序都使用群集中的所有可用节点。

来自spark-standalone文档页面:

  

独立群集模式目前仅支持跨应用程序的简单FIFO调度程序。但是,要允许多个并发用户,您可以控制每个应用程序将使用的最大资源数。默认情况下,它将获取群集中的所有核心,这只有在您一次只运行一个应用程序时才有意义。

在其他情况下(当您在群集中运行多个应用程序时),您可以选择 YARN

  

目前有时我在洗牌过程中处理大量数据时可能会出现阶段性故障。如果我迁移到YARN,资源管理器可以解决此问题吗?

不确定,因为您的应用程序逻辑未知。但你可以试试 YARN

查看相关的SE问题,了解 YARN 优于独立 Mesos 的好处:

Which cluster type should I choose for Spark?