池配置参考
本文介绍使用 UI 创建池时的可用设置。 若要了解如何使用 Databricks CLI 创建池,请参阅 Databricks CLI 命令。 若要了解如何使用 REST API 创建池,请参阅实例池 API。
池大小
创建池时,若要控制其大小,你可以设置三个参数:最小空闲实例数、最大容量和空闲实例自动终止。
最小空闲实例数
池保持空闲状态的最小实例数。 无论自动终止设置如何,这些实例都不会终止。 如果群集使用池中的空闲实例,则 Azure Databricks 会预配更多的实例,以维持此最小值。
最大容量
池可以预配的最大实例数目。 如果设置了此项,则此值约束所有实例(空闲 + 已使用)。 如果使用池的群集在自动缩放期间请求比此数目更多的实例,则请求会失败并出现 INSTANCE_POOL_MAX_CAPACITY_FAILURE
错误。
此配置是可选的。 Azure Databricks 建议仅在以下情况下设置值:
- 你有一个不能超过的实例配额。
- 你想要防止一组工作影响另一组工作。 例如,假设你的实例配额为 100,你的团队 A 和 B 需要运行作业。 你可以创建最大配额为 50 的池 A 和最大配额为 50 的池 B,以便两个团队公平地共享配额 100。
- 你需要控制成本。
空闲实例自动终止
实例空闲时间在超出最小空闲实例数中设置的值多长时间(以分钟为单位)之后将被池终止。
实例类型
池由为新群集准备好的空闲实例和正在运行的群集使用的实例组成。 所有这些实例都属于相同的实例提供程序类型,该类型是在创建池时选择的。
无法编辑池的实例类型。 附加到池的群集为驱动程序和工作器节点使用相同的实例类型。 不同的实例类型系列适用于不同的用例,例如内存密集型工作负荷或计算密集型工作负荷。
Azure Databricks 在停止支持实例类型之前,始终会提供为期一年的弃用通知。
注意
如果安全要求包括计算隔离,请选择一个 Standard_F72s_V2 实例作为工作器类型。 这些实例类型表示使用整个物理主机的隔离虚拟机,并提供为特定工作负载提供支持所需的隔离级别。
预加载的 Databricks Runtime 版本
可以通过选择要在池中空闲实例上加载的 Databricks Runtime 版本来加快群集启动。 如果用户在创建受池支持的群集时选择了该运行时,则该群集甚至会比未使用预加载 Databricks Runtime 版本的池支持的群集更快启动。
将此选项设置为 None 会减慢群集启动的速度,因为它会导致 Databricks Runtime 版本按需下载到池中的空闲实例。 当群集释放池中的实例时,Databricks Runtime 版本将在这些实例上保持缓存状态。 使用相同 Databricks Runtime 版本的下一个群集创建操作可能受益于此缓存行为,但不能保证如此。
预加载的 Docker 映像
如果使用实例池 API 创建池,则池支持 Docker 映像。
池标记
可以使用池标记轻松地监视组织中各种组所使用的云资源的成本。 你可以在创建池时将标记指定为键值对,Azure Databricks 会将这些标记应用于 VM 和磁盘卷等云资源以及 DBU 使用情况报告。
为了方便起见,Azure Databricks 对每个池应用三个默认标记:Vendor
、DatabricksInstancePoolId
和 DatabricksInstancePoolCreatorId
。 你还可以在创建池时添加自定义标记。 最多可以添加 41 个自定义标记。
自定义标记
若要将更多标记添加到池,请导航到“创建池”页面底部的“标记”选项卡。 单击“+ 添加”按钮,然后输入键值对。
池支持的群集从池配置继承默认的和自定义的标记。 若要详细了解池标记和群集标记如何协同工作,请参阅使用标记监视使用情况。
自动缩放本地存储
通常,估算特定作业会占用的磁盘空间量十分困难。 为了让你不必估算在创建时要附加到池的托管磁盘的 GB 数,Azure Databricks 会自动在所有 Azure Databricks 池上启用自动缩放本地存储。
自动缩放本地存储时,Azure Databricks 会监视池的实例上提供的可用磁盘空间量。 如果某个实例的磁盘空间太少,系统会在该实例的磁盘空间不足之前自动附加新的托管磁盘。 附加磁盘时,每个虚拟机的总磁盘空间(包括虚拟机的初始本地存储)存在 5 TB 的限制。
仅当虚拟机返回到 Azure 时,才会拆离附加到虚拟机的托管磁盘。 也就是说,只要虚拟机属于某个池,就永远不会将托管磁盘从该虚拟机中拆离。