【发布时间】:2019-11-24 11:33:49
【问题描述】:
Databricks 中使用的集群管理器是什么? 如何更改 Databricks 集群中的执行程序数量?
【问题讨论】:
标签: apache-spark databricks azure-databricks
Databricks 中使用的集群管理器是什么? 如何更改 Databricks 集群中的执行程序数量?
【问题讨论】:
标签: apache-spark databricks azure-databricks
回答问题:
Databricks 中使用的集群管理器是什么?
我试图挖掘这些信息,但我无法从官方文档中找到任何相关信息。
Databricks 似乎没有使用提到的任何来自 Spark 的集群管理器 here
根据this presentation,在第23页,它提到了Databricks集群管理器的3个部分
所以我猜 Databricks 使用它自己的专有集群管理器。
【讨论】:
Databricks 中使用的集群管理器是什么?
Azure Databricks 以 Spark 的功能为基础,提供零管理云平台,其中包括:
Databricks 运行时构建在 Apache Spark 之上,并且是为 Azure 云原生构建的。
借助 无服务器 选项,Azure Databricks 完全抽象出基础架构的复杂性以及设置和配置数据基础架构所需的专业知识。无服务器选项可帮助数据科学家作为一个团队快速迭代。
对于关心生产作业性能的数据工程师,Azure Databricks 通过 I/O 层和处理层 (Databricks I/O) 的各种优化提供了更快、性能更高的 Spark 引擎。
如何更改 Databricks 集群中的执行程序数量?
创建集群时,您可以为集群提供固定数量的工作人员或为集群提供最小和最大工作人员数量。 p>
当您提供固定大小的集群时: Azure Databricks 可确保您的集群具有指定数量的工作人员。当您提供工作人员数量范围时,Databricks 会选择运行您的作业所需的适当工作人员数量。这称为自动缩放。
使用自动缩放:Azure Databricks 会动态重新分配工作人员以适应您的工作特征。管道的某些部分可能比其他部分对计算的要求更高,Databricks 会在您工作的这些阶段自动添加额外的工作人员(并在不再需要时将其删除)。
自动扩缩可以更轻松地实现高集群利用率,因为您无需配置集群来匹配工作负载。这尤其适用于需求随时间变化的工作负载(例如在一天中探索数据集),但它也适用于供应要求未知的一次性较短工作负载。因此,自动缩放提供了两个优势:
注意:根据集群的恒定大小和工作负载,自动缩放可以同时为您提供这些好处中的一项或两项。当云提供商终止实例时,集群大小可以低于选择的最小工作人员数量。在这种情况下,Azure Databricks 会不断重试以重新预配实例,以保持最少的工作人员数量。
集群自动缩放不适用于 spark-submit 作业。要了解有关自动缩放的更多信息,请参阅 Cluster autoscaling。
希望这会有所帮助。
【讨论】: