集群API 2.0

集群API允许您创建、启动、编辑、列出、终止和删除集群。群集API请求的最大允许大小是10MB。

集群生命周期方法需要一个集群ID,该ID从创建.要获得集群列表,请调用列表

Databricks将集群节点实例类型映射到称为DBUs的计算单元。看到实例类型定价页面获取受支持的实例类型及其对应的DBUs的列表。有关实例提供程序信息,请参见AWS实例类型规范而且定价

Databricks总是在停止支持某个实例类型之前提供一年的弃用通知。

警告

你不应该硬编码秘密或者以纯文本的形式存储它们。使用秘密API 2.0来管理秘密数据库命令行设置和文档.使用秘密实用程序(dbutils.secrets)在笔记本和工作中提及秘密。

重要的

要访问Databricks REST api,必须进行身份验证

创建

端点

HTTP方法

2.0 / /创建的集群

帖子

创建新的Apache Spark集群。如果需要,此方法将从云提供程序获取新实例。这个方法是异步的;返回的cluster_id可用于轮询集群状态。当此方法返回时,集群处于等待状态。集群一旦进入运行状态。看到ClusterState

请注意

由于云提供商的限制或瞬时网络问题,Databricks可能无法获取某些请求的节点。如果Databricks获得了至少85%的请求按需节点,则集群创建将成功。否则,集群将终止并提示错误消息。

例子

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/create——数据@create-cluster.json

create-cluster.json

“cluster_name”“my-cluster”“spark_version”“7.3.x-scala2.12”“node_type_id”“i3.xlarge”“spark_conf”“spark.speculation”真正的},“aws_attributes”“可用性”“现货”“zone_id”“us-west-2a”},“num_workers”25
“cluster_id”“1234 - 567890 cited123”

下面是一个自动伸缩集群的示例。这个集群开始时最少有两个节点。

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/create——数据@create-cluster.json

create-cluster.json

“cluster_name”“autoscaling-cluster”“spark_version”“7.3.x-scala2.12”“node_type_id”“i3.xlarge”“自动定量”“min_workers”2“max_workers”50
“cluster_id”“1234 - 567890 batch123”

此示例创建一个单节点集群.创建单节点集群。

  • spark_conf而且custom_tags到示例中的确切值。

  • num_workers0

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/create——数据@create-cluster.json

create-cluster.json

“cluster_name”“single-node-cluster”“spark_version”“7.6.x-scala2.12”“node_type_id”“i3.xlarge”“num_workers”0“spark_conf”“spark.databricks.cluster.profile”“singleNode”“spark.master”“(* 4)”},“custom_tags”“ResourceClass”“SingleNode”
“cluster_id”“1234 - 567890 ruins123”

本示例创建一个集群并挂载一个Amazon EFS文件系统。

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/create——数据@create-cluster.json

create-cluster.json

“cluster_name”“efs-cluster”“spark_version”“7.6.x-scala2.12”“node_type_id”“i3.xlarge”“instance_type”“i3.xlarge”“cluster_mount_infos”:[“network_filesystem_info”: {“server_address”“hostname.efs.us -东- 1. amazonaws.com”“mount_options”“rsize = 1048576, wsize = 1048576,硬,timeo = 600”},“remote_mount_dir_path”“/”“local_mount_dir_path”“/ mnt / efs-mount”),“aws_attributes”: {“可用性”“现货”“zone_id”“us-east-2”},“num_workers”25
“cluster_id”“1234 - 567890 pouch123”

若要使用策略创建作业或提交带有新集群的运行,请设置policy_id到策略ID:

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/create——数据@create-cluster.json

create-cluster.json

“num_workers”“自动定量”“min_workers”2“max_workers”8},“cluster_name”“my-cluster”“spark_version”“7.3.x-scala2.12”“spark_conf”{},“aws_attributes”“first_on_demand”1“可用性”“SPOT_WITH_FALLBACK”“zone_id”“us-west-2a”“instance_profile_arn”“spot_bid_price_percent”One hundred.“ebs_volume_count”0},“node_type_id”“i3.xlarge”“ssh_public_keys”[],“custom_tags”{},“spark_env_vars”“PYSPARK_PYTHON”“砖/ python3 / bin / python3”},“autotermination_minutes”120“init_scripts”[],“policy_id”“C65B864F02000008”
“cluster_id”“1234 - 567890 buyer123”

中定义集群的属性,以创建新集群new_cluster

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/jobs/create——数据@create-job.json

create-job.json

“run_name”“我的火花任务”“new_cluster”“spark_version”“7.3.x-scala2.12”“node_type_id”“r3.xlarge”“aws_attributes”“可用性”“ON_DEMAND”},“num_workers”10“policy_id”“ABCD000000000000”},“库”“罐子”“dbfs: / my-jar.jar”},“专家”“坐标”“org.jsoup: jsoup: 1.7.2”),“spark_jar_task”“main_class_name”“com.databricks.ComputeModels”
“job_id”244

集群定义的请求结构

字段名

类型

描述

num_workers或自动缩放

INT32自动定量

如果是num_workers,表示该集群应该拥有的工作节点的数量。一个集群有一个Spark驱动程序和num_workers执行程序,共num_workers + 1个Spark节点。

注意:当读取集群的属性时,该字段反映所需的worker数量,而不是实际的worker数量。例如,如果一个集群从5个工作人员调整为10个工作人员,该字段将立即更新以反映10个工作人员的目标大小,而在执行人随着新节点的准备,将从5个逐渐增加到10个。

如果是自动伸缩,则需要根据负载自动上下伸缩集群所需的参数。

cluster_name

字符串

用户请求的集群名称。这个不一定是唯一的。如果在创建时未指定,则集群名称将为空字符串。

spark_version

字符串

集群的运行时版本。控件可以检索可用运行时版本的列表运行时版本API调用。该字段为必填项。

spark_conf

SparkConfPair

一个对象,包含一组可选的、用户指定的Spark配置键值对。您还可以通过将一串额外的JVM选项传递给驱动程序和执行程序spark.driver.extraJavaOptions而且spark.executor.extraJavaOptions分别。使用实例Spark conf。{“spark.speculation”:真的,“spark.streaming.ui.retainedBatches”:5}{“spark.driver.extraJavaOptions”:“- verbose: gc- xx: + PrintGCDetails "}

aws_attributes

AwsAttributes

与在Amazon Web Services上运行的集群相关的属性。如果在创建集群时未指定,则使用一组默认值。

node_type_id

字符串

该字段通过单个值编码该集群中每个Spark节点可用的资源。例如,Spark节点可以针对内存或计算密集型工作负载进行配置和优化列表节点类型API调用。该字段为必填项。

driver_node_type_id

字符串

Spark驱动的节点类型。该字段是可选的;如果不设置,驱动节点类型将被设置为相同的值node_type_id上面的定义。

ssh_public_keys

的数组字符串

将添加到该集群中每个Spark节点的SSH公钥内容。可以使用对应的私钥以用户名登录ubuntu在端口2200.最多可以指定10个键。

custom_tags

ClusterTag

一个对象,包含一组用于集群资源的标记。Databricks除了default_tags之外,还使用这些标记标记所有集群资源(例如AWS实例和EBS卷)。

请注意

  • 在计算优化和内存优化等遗留节点类型上不支持标记。

  • Databricks最多允许45个自定义标记。

  • 如果集群是在实例池上创建的,则集群标记不会复制到集群资源中。若要标记实例池的资源,请参见custom_tags实例池API 2.0

cluster_log_conf

ClusterLogConf

将Spark日志下发到长期存储目的地的配置。一个集群只能指定一个目标。如果设置了该参数,则每隔一段时间将日志发送到目的地5分钟.驱动日志的目的为<目标> / < cluster-ID > /司机,执行器日志的目的地为<目标> / < cluster-ID > /执行人

init_scripts

的数组InitScriptInfo

存储init脚本的配置。可以指定任意数量的目的地。脚本按照提供的顺序依次执行。如果cluster_log_conf时,init脚本日志发送到<目标> / < cluster-ID > / init_scripts

docker_image

DockerImage

的Docker映像自定义容器

spark_env_vars

SparkEnvPair

包含一组用户指定的可选环境变量键值对的对象。表单(X,Y)的键值对按原样导出(即,出口X = Y),同时启动司机和工人。以便指定额外的一组SPARK_DAEMON_JAVA_OPTS,我们建议将它们附加到SPARK_DAEMON_JAVA_OPTS美元如下例所示。这确保了所有默认的Databricks管理的环境变量也包括在内。使用实例Spark环境变量。{“SPARK_WORKER_MEMORY”:“28000米”,“SPARK_LOCAL_DIRS”:" / local_disk0 "}{“SPARK_DAEMON_JAVA_OPTS”:" $ SPARK_DAEMON_JAVA_OPTS-Dspark.shuffle.service.enabled = true "}

autotermination_minutes

INT32

在集群处于非活动状态后自动终止集群,以分钟为单位。如果没有设置,该集群将不会自动终止。如果指定,阈值必须在10到10000分钟之间。还可以将此值设置为0以显式禁用自动终止。

enable_elastic_disk

保龄球

自动伸缩本地存储:启用后,当Spark worker的磁盘空间不足时,该集群将动态获取额外的磁盘空间。此功能需要特定的AWS权限才能正确运行-请参阅自动缩放本地存储获取详细信息。

driver_instance_pool_id

字符串

用于驱动程序节点的实例池的可选ID。您还必须指定instance_pool_id.指实例池API 2.0获取详细信息。

instance_pool_id

字符串

用于集群节点的实例池的可选ID。如果driver_instance_pool_id存在,instance_pool_id仅用于工作节点。否则,它将同时用于驱动程序和工作节点。指实例池API 2.0获取详细信息。

idempotency_token

字符串

一个可选的令牌,可用于保证集群创建请求的幂等性。类中未指定等幂令牌的群集终止状态时,请求不会创建新的集群,而是返回现有集群的ID。否则,将创建新的集群。当群集终止时,幂等令牌将被清除

如果指定了幂等令牌,则在失败时可以重试,直到请求成功。Databricks保证只有一个集群将使用该等幂令牌启动。

这个标记最多应该有64个字符。

apply_policy_default_values

保龄球

是否使用政策缺少集群属性的默认值。

enable_local_disk_encryption

保龄球

集群本地绑定磁盘的加密功能是否开启。

runtime_engine

字符串

要使用的运行时引擎的类型。类型推断运行时引擎类型spark_version价值。允许的值包括:

  • 光子:使用光子运行时引擎类型。

  • 标准:使用标准的运行时引擎类型。

该字段可选。

cluster_mount_infos

的数组MountInfo

一个对象,包含网络文件系统挂载的可选规范。

响应结构

字段名

类型

描述

cluster_id

字符串

集群的规范标识符。

编辑

端点

HTTP方法

2.0 /集群/编辑

帖子

编辑集群的配置以匹配提供的属性和大小。

类型中的集群,可以编辑该集群运行终止状态。如果在集群中编辑集群运行状态时,它将重新启动,以便新属性生效。如果在集群中编辑集群终止国家,它将继续存在终止.在下次启动时使用集群/启动API,新的属性将生效。在任何其他状态下编辑集群的尝试将被拒绝INVALID_STATE错误代码。

Databricks Jobs服务创建的集群不能被编辑。

例子

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/edit——数据@edit-cluster.json

edit-cluster.json

“cluster_id”“1202 - 211320 brick1”“num_workers”10“spark_version”“7.3.x-scala2.12”“node_type_id”“i3.2xlarge”
{}

请求结构

字段名

类型

描述

num_workers或自动缩放

INT32自动定量

如果是num_workers,表示该集群应该拥有的工作节点的数量。一个集群有一个Spark驱动程序和num_workers执行程序,共num_workers + 1个Spark节点。

注意:当读取集群的属性时,该字段反映所需的worker数量,而不是实际的worker数量。例如,如果一个集群从5个工作人员调整为10个工作人员,该字段将立即更新以反映10个工作人员的目标大小,而在执行人随着新节点的准备,将从5个逐渐增加到10个。

如果是自动伸缩,则需要根据负载自动上下伸缩集群所需的参数。

cluster_id

字符串

集群的规范标识符。该字段为必填项。

cluster_name

字符串

用户请求的集群名称。这个不一定是唯一的。如果在创建时未指定,则集群名称将为空字符串。

spark_version

字符串

集群的运行时版本。控件可以检索可用运行时版本的列表运行时版本API调用。该字段为必填项。

spark_conf

SparkConfPair

一个对象,包含一组可选的、用户指定的Spark配置键值对。您还可以通过将一串额外的JVM选项传递给驱动程序和执行程序spark.driver.extraJavaOptions而且spark.executor.extraJavaOptions分别。

使用实例Spark conf。{“spark.speculation”:真的,“spark.streaming.ui.retainedBatches”:5}{“spark.driver.extraJavaOptions”:“- verbose: gc- xx: + PrintGCDetails "}

aws_attributes

AwsAttributes

与在Amazon Web Services上运行的集群相关的属性。如果在创建集群时未指定,则将使用一组默认值。

node_type_id

字符串

该字段通过单个值编码该集群中每个Spark节点可用的资源。例如,Spark节点可以针对内存或计算密集型工作负载进行配置和优化列表节点类型API调用。该字段为必填项。

driver_node_type_id

字符串

Spark驱动的节点类型。该字段是可选的;如果不设置,驱动节点类型将被设置为相同的值node_type_id上面的定义。

ssh_public_keys

的数组字符串

将添加到该集群中每个Spark节点的SSH公钥内容。可以使用对应的私钥以用户名登录ubuntu在端口2200.最多可以指定10个键。

custom_tags

ClusterTag

一个对象,包含一组用于集群资源的标记。Databricks除了default_tags之外,还使用这些标记标记所有集群资源(例如AWS实例和EBS卷)。

请注意

  • 在计算优化和内存优化等遗留节点类型上不支持标记。

  • Databricks最多允许45个自定义标记。

  • 如果集群是在实例池上创建的,则集群标记不会复制到集群资源中。若要标记实例池的资源,请参见custom_tags实例池API 2.0

cluster_log_conf

ClusterLogConf

将Spark日志下发到长期存储目的地的配置。一个集群只能指定一个目标。如果设置了该参数,则每隔一段时间将日志发送到目的地5分钟.驱动日志的目的为<目标> / < cluster-ID > /司机,执行器日志的目的地为<目标> / < cluster-ID > /执行人

init_scripts

的数组InitScriptInfo

存储init脚本的配置。可以指定任意数量的目的地。脚本按照提供的顺序依次执行。如果cluster_log_conf时,init脚本日志发送到<目标> / < cluster-ID > / init_scripts

docker_image

DockerImage

的Docker映像自定义容器

spark_env_vars

SparkEnvPair

包含一组用户指定的可选环境变量键值对的对象。表单(X,Y)的键值对按原样导出(即,出口X = Y),同时启动司机和工人。

以便指定额外的一组SPARK_DAEMON_JAVA_OPTS,我们建议将它们附加到SPARK_DAEMON_JAVA_OPTS美元如下例所示。这确保了所有默认的Databricks管理的环境变量也包括在内。

使用实例Spark环境变量。{“SPARK_WORKER_MEMORY”:“28000米”,“SPARK_LOCAL_DIRS”:" / local_disk0 "}{“SPARK_DAEMON_JAVA_OPTS”:" $ SPARK_DAEMON_JAVA_OPTS-Dspark.shuffle.service.enabled = true "}

autotermination_minutes

INT32

在集群处于非活动状态后自动终止集群,以分钟为单位。如果没有设置,该集群将不会自动终止。如果指定,阈值必须在10到10000分钟之间。还可以将此值设置为0以显式禁用自动终止。

enable_elastic_disk

保龄球

自动伸缩本地存储:启用后,当Spark worker的磁盘空间不足时,该集群将动态获取额外的磁盘空间。此功能需要特定的AWS权限才能正确运行-请参阅自动缩放本地存储获取详细信息。

instance_pool_id

字符串

集群所属实例池的可选ID。指获取详细信息。

apply_policy_default_values

保龄球

是否使用政策缺少集群属性的默认值。

enable_local_disk_encryption

保龄球

集群本地绑定磁盘的加密功能是否开启。

runtime_engine

字符串

要使用的运行时引擎的类型。类型推断运行时引擎类型spark_version价值。允许的值包括:

  • 光子:使用光子运行时引擎类型。

  • 标准:使用标准的运行时引擎类型。

该字段可选。

cluster_mount_infos

的数组MountInfo

一个对象,包含网络文件系统挂载的可选规范。

开始

端点

HTTP方法

2.0 /集群/开始

帖子

启动给定ID的终止集群。这类似于createCluster,除了:

  • 终止的集群ID和属性将被保留。

  • 集群从最后一个指定的集群大小开始。如果终止的集群是自动伸缩集群,则该集群以最小节点数开始。

  • 如果集群处于重新启动状态,一个400返回错误。

  • 不能启动为运行作业而启动的集群。

例子

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/start——数据'{"cluster_id": "1234-567890-reef123"}'
{}

请求结构

字段名

类型

描述

cluster_id

字符串

待启动的集群。该字段为必填项。

重新启动

端点

HTTP方法

2.0 /集群/重新启动

帖子

重新启动给定ID的集群。集群必须在运行状态。

例子

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/restart——数据'{"cluster_id": "1234-567890-reef123"}'
{}

请求结构

字段名

类型

描述

cluster_id

字符串

待启动的集群。该字段为必填项。

调整

端点

HTTP方法

2.0 /集群/调整

帖子

调整集群的大小,使其具有所需数量的工作人员。集群必须在运行状态。

例子

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/resize——数据“{"cluster_id": "1234-567890-reef123", "num_workers": 30}”
{}

请求结构

字段名

类型

描述

num_workers或自动缩放

INT32自动定量

如果是num_workers,表示该集群应该拥有的工作节点的数量。一个集群有一个Spark驱动程序和num_workers执行程序,共num_workers + 1个Spark节点。

注意:当读取集群的属性时,该字段反映所需的worker数量,而不是实际的worker数量。例如,如果一个集群从5个工作人员调整为10个工作人员,该字段将立即更新以反映10个工作人员的目标大小,而在执行人随着新节点的准备,将从5个逐渐增加到10个。

如果是自动伸缩,则需要根据负载自动上下伸缩集群所需的参数。

cluster_id

字符串

需要调整大小的集群。该字段为必填项。

删除(终止)

端点

HTTP方法

2.0 /集群/删除

帖子

终止给定ID的集群。异步移除集群。终止完成后,集群将处于终止状态。如果集群已经在终止终止状态,什么都不会发生。

除非集群是固定的,否则在集群终止后30天,它就是固定的永久删除

例子

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/delete——数据'{"cluster_id": "1234-567890-frays123"}'
{}

请求结构

字段名

类型

描述

cluster_id

字符串

要终止的集群。该字段为必填项。

永久删除

端点

HTTP方法

2.0 /集群/ permanent-delete

帖子

永久删除集群。如果集群正在运行,则将终止它,并异步删除其资源。如果集群终止,则立即删除它。

你不能执行任何行动,包括在永久删除的集群上检索集群的权限。永久删除的集群也不再返回到集群列表中。

例子

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/permanent-delete——数据'{"cluster_id": "1234-567890-frays123"}'
{}

请求结构

字段名

类型

描述

cluster_id

字符串

待永久删除的集群。该字段为必填项。

得到

端点

HTTP方法

2.0 /集群

得到

检索给定标识符的集群的信息。集群可以在运行时描述,也可以在终止后最多30天描述。

例子

—netrc -X GEThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/get——数据'{"cluster_id": "1234-567890-reef123"}'|金桥。
“cluster_id”“1234 - 567890 reef123”“spark_context_id”4020997813441462000“cluster_name”“my-cluster”“spark_version”“8.2.x-scala2.12”“aws_attributes”“zone_id”“us-west-2c”“first_on_demand”1“可用性”“SPOT_WITH_FALLBACK”“spot_bid_price_percent”One hundred.“ebs_volume_count”0},“node_type_id”“i3.xlarge”“driver_node_type_id”“i3.xlarge”“autotermination_minutes”120“enable_elastic_disk”“disk_spec”“disk_count”0},“cluster_source”“用户界面”“enable_local_disk_encryption”“instance_source”“node_type_id”“i3.xlarge”},“driver_instance_source”“node_type_id”“i3.xlarge”},“状态”“终止”“state_message”“非活动集群终止(非活动120分钟)。”“start_time”1618263108824“terminated_time”1619746525713“last_state_loss_time”1619739324740“num_workers”30.“default_tags”“供应商”“砖”“创造者”“someone@example.com”“ClusterName”“my-cluster”“ClusterId”“1234 - 567890 reef123”},“creator_user_name”“someone@example.com”“termination_reason”“代码”“活动”“参数”“inactivity_duration_min”“120”},“类型”“成功”},“init_scripts_safe_mode”

请求结构

字段名

类型

描述

cluster_id

字符串

要检索信息的集群。该字段为必填项。

响应结构

字段名

类型

描述

num_workers或自动缩放

INT32自动定量

如果是num_workers,表示该集群应该拥有的工作节点的数量。一个集群有一个Spark驱动程序和num_workers执行程序,共num_workers + 1个Spark节点。

注意:当读取集群的属性时,该字段反映所需的worker数量,而不是实际的worker数量。例如,如果一个集群从5个工作人员调整为10个工作人员,该字段将立即更新以反映10个工作人员的目标大小,而在执行人随着新节点的准备,将从5个逐渐增加到10个。

如果是自动伸缩,则需要根据负载自动上下伸缩集群所需的参数。

cluster_id

字符串

集群的规范标识符。这个ID在集群重新启动和调整大小时保留,而每个新集群都有一个全局唯一的ID。

creator_user_name

字符串

创建者用户名。如果用户已被删除,则该字段将不包含在响应中。

司机

SparkNode

Spark驱动所在节点。驱动程序节点包含Spark master和Databricks应用程序,该应用程序管理每个笔记本的Spark reps。

执行人

的数组SparkNode

Spark执行器所在的节点。

spark_context_id

INT64

规范的SparkContext标识符。这个值重启Spark驱动时,修改如下。这一对(cluster_idspark_context_id)是所有Spark上下文的全局唯一标识符。

jdbc_port

INT32

驱动节点中Spark JDBC服务器侦听的端口。在执行节点中,没有服务在此端口上侦听。

cluster_name

字符串

用户请求的集群名称。这个不一定是唯一的。如果在创建时未指定,则集群名称将为空字符串。

spark_version

字符串

集群的运行时版本。控件可以检索可用运行时版本的列表运行时版本API调用。

spark_conf

SparkConfPair

一个对象,包含一组可选的、用户指定的Spark配置键值对。您还可以通过将一串额外的JVM选项传递给驱动程序和执行程序spark.driver.extraJavaOptions而且spark.executor.extraJavaOptions分别。

使用实例Spark conf。{“spark.speculation”:真的,“spark.streaming.ui.retainedBatches”:5}{“spark.driver.extraJavaOptions”:“- verbose: gc- xx: + PrintGCDetails "}

aws_attributes

AwsAttributes

与在Amazon Web Services上运行的集群相关的属性。如果在创建集群时未指定,则将使用一组默认值。

node_type_id

字符串

该字段通过单个值编码该集群中每个Spark节点可用的资源。例如,Spark节点可以针对内存或计算密集型工作负载进行配置和优化列表节点类型API调用。该字段为必填项。

driver_node_type_id

字符串

Spark驱动的节点类型。该字段是可选的;如果不设置,驱动节点类型将被设置为相同的值node_type_id上面的定义。

ssh_public_keys

的数组字符串

将添加到该集群中每个Spark节点的SSH公钥内容。可以使用对应的私钥以用户名登录ubuntu在端口2200.最多可以指定10个键。

custom_tags

ClusterTag

一个对象,包含一组用于集群资源的标记。Databricks除了default_tags外,还使用这些标签标记所有集群资源。

请注意

  • 在计算优化和内存优化等遗留节点类型上不支持标记。

  • Databricks最多允许45个自定义标记。

  • 如果集群是在实例池上创建的,则集群标记不会复制到集群资源中。若要标记实例池的资源,请参见custom_tags实例池API 2.0

cluster_log_conf

ClusterLogConf

将Spark日志下发到长期存储目的地的配置。一个集群只能指定一个目标。如果设置了该参数,则每隔一段时间将日志发送到目的地5分钟.驱动日志的目的为<目标> / < cluster-ID > /司机,执行器日志的目的地为<目标> / < cluster-ID > /执行人

init_scripts

的数组InitScriptInfo

存储init脚本的配置。可以指定任意数量的目的地。脚本按照提供的顺序依次执行。如果cluster_log_conf初始化脚本日志将发送到该位置。

docker_image

DockerImage

的Docker映像自定义容器

spark_env_vars

SparkEnvPair

包含一组用户指定的可选环境变量键值对的对象。表单(X,Y)的键值对按原样导出(即,出口X = Y),同时启动司机和工人。

以便指定额外的一组SPARK_DAEMON_JAVA_OPTS,我们建议将它们附加到SPARK_DAEMON_JAVA_OPTS美元如下例所示。这确保了所有默认的Databricks管理的环境变量也包括在内。

使用实例Spark环境变量。{“SPARK_WORKER_MEMORY”:“28000米”,“SPARK_LOCAL_DIRS”:" / local_disk0 "}{“SPARK_DAEMON_JAVA_OPTS”:" $ SPARK_DAEMON_JAVA_OPTS-Dspark.shuffle.service.enabled = true "}

autotermination_minutes

INT32

在集群处于非活动状态后自动终止集群,以分钟为单位。如果没有设置,该集群将不会自动终止。如果指定,阈值必须在10到10000分钟之间。还可以将此值设置为0以显式禁用自动终止。

enable_elastic_disk

保龄球

自动伸缩本地存储:启用后,当Spark worker的磁盘空间不足时,该集群将动态获取额外的磁盘空间。此功能需要特定的AWS权限才能正确运行-请参阅自动缩放本地存储获取详细信息。

instance_pool_id

字符串

集群所属实例池的可选ID。指获取详细信息。

cluster_source

ClusterSource

确定集群是由用户通过UI、Databricks Jobs调度器、API请求还是由Delta Live Tables运行时创建的。示例值包括API用户界面,或管道

状态

ClusterState

集群的状态。

state_message

字符串

与最近的状态转换相关的消息(例如,集群进入状态转换的原因终止状态)。

start_time

INT64

接收到集群创建请求的时间(以epoch毫秒为单位)等待状态)。

terminated_time

INT64

集群终止的时间(以epoch毫秒为单位)(如果适用的话)。

last_state_loss_time

INT64

集群驱动程序最后一次失去状态的时间(由于重新启动或驱动程序故障)。

last_activity_time

INT64

集群最后一次活动的时间(以epoch毫秒为单位)。如果集群上至少有一个命令没有完成,则集群是活动的。该字段在集群到达运行状态。对该字段的更新是尽力而为。某些版本的Spark不支持报告集群活动。指自动终止获取详细信息。

cluster_memory_mb

INT64

集群内存总量,以兆字节为单位。

cluster_cores

浮动

此集群可用的CPU核数。这可能是分数,因为某些节点类型被配置为在同一实例上的Spark节点之间共享核心。

default_tags

ClusterTag

一个包含Databricks添加的一组标记的对象,与任何custom_tags无关,包括:

  • 供应商:砖

  • 创造者:< username-of-creator >

  • ClusterName: < name-of-cluster >

  • ClusterId: < id-of-cluster >

  • 名称:<数据库内部使用>

    关于作业集群:

  • RunName: < name-of-job >

  • JobId: < id-of-job >

    关于Databricks SQL使用的资源:

  • SqlWarehouseId: < id-of-warehouse >

cluster_log_status

LogSyncStatus

集群日志下发状态。

termination_reason

TerminationReason

关于集群终止原因的信息。该字段仅当集群处于终止终止状态。

请注意

你一定是个数据专家管理员调用此API。

端点

HTTP方法

2.0 /集群/销

帖子

即使在终止集群超过30天之后,也要确保保留通用集群配置。方法返回群集列表API。钉住一个已经钉住的集群没有效果。

例子

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/pin——数据'{"cluster_id": "1234-567890-reef123"}'
{}

请求结构

字段名

类型

描述

cluster_id

字符串

要固定的集群。该字段为必填项。

拔掉

请注意

你一定是个数据专家管理员调用此API。

端点

HTTP方法

2.0 /集群/拔掉

帖子

属性返回的列表中移除集群列表API。解绑定未绑定的集群没有效果。

例子

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/unpin——数据'{"cluster_id": "1234-567890-reef123"}'
{}

请求结构

字段名

类型

描述

cluster_id

字符串

要解除固定的集群。该字段为必填项。

列表

端点

HTTP方法

2.0 /集群列表中

得到

返回关于所有固定集群、活动集群、过去30天内最多200个最近终止的通用集群以及过去30天内最多30个最近终止的作业集群的信息。例如,如果有1个固定集群,4个活动集群,过去30天内有45个终止的通用集群,过去30天内有50个终止的作业集群,那么这个API将返回1个固定集群,4个活动集群,全部45个终止的通用集群,以及最近终止的30个作业集群。

例子

—netrc -X GEThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/list|金桥。
“集群”“cluster_id”“1234 - 567890 reef123”“spark_context_id”4020997813441462000“cluster_name”“my-cluster”“spark_version”“8.2.x-scala2.12”“aws_attributes”“zone_id”“us-west-2c”“first_on_demand”1“可用性”“SPOT_WITH_FALLBACK”“spot_bid_price_percent”One hundred.“ebs_volume_count”0},“node_type_id”“i3.xlarge”“driver_node_type_id”“i3.xlarge”“autotermination_minutes”120“enable_elastic_disk”“disk_spec”“disk_count”0},“cluster_source”“用户界面”“enable_local_disk_encryption”“instance_source”“node_type_id”“i3.xlarge”},“driver_instance_source”“node_type_id”“i3.xlarge”},“状态”“终止”“state_message”“非活动集群终止(非活动120分钟)。”“start_time”1618263108824“terminated_time”1619746525713“last_state_loss_time”1619739324740“num_workers”30.“default_tags”“供应商”“砖”“创造者”“someone@example.com”“ClusterName”“my-cluster”“ClusterId”“1234 - 567890 reef123”},“creator_user_name”“someone@example.com”“termination_reason”“代码”“活动”“参数”“inactivity_duration_min”“120”},“类型”“成功”},“init_scripts_safe_mode”},“…”

响应结构

字段名

类型

描述

集群

的数组ClusterInfo

集群列表。

列表节点类型

端点

HTTP方法

2.0 /集群/ list-node-types

得到

返回支持的Spark节点类型列表。这些节点类型可用于启动集群。

例子

—netrc -X GEThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/list-node-types|金桥。
“node_type”“node_type_id”“r4.xlarge”“memory_mb”31232“num_cores”4“描述”“r4.xlarge”“instance_type_id”“r4.xlarge”“is_deprecated”“类别”“内存优化”“support_ebs_volumes”真正的“support_cluster_tags”真正的“num_gpus”0“node_instance_type”“instance_type_id”“r4.xlarge”“local_disks”0“local_disk_size_gb”0“instance_family”“EC2 r4系列vcpu”“swap_size”“10 g”},“is_hidden”“support_port_forwarding”真正的“display_order”0“is_io_cache_enabled”},“…”

响应结构

字段名

类型

描述

node_type

的数组NodeType

可用的Spark节点类型列表。

运行时版本

端点

HTTP方法

2.0 /集群/ spark-versions

得到

返回可用的列表运行时版本.这些版本可用于启动集群。

例子

—netrc -X GEThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/spark-versions|金桥。
“版本”“关键”“8.2.x-scala2.12”“名称”8.2(包括Apache Spark 3.1.1, Scala 2.12)},“…”

响应结构

字段名

类型

描述

版本

的数组SparkVersion

所有可用的运行时版本。

列表区域

端点

HTTP方法

2.0 /集群/ list-zones

得到

返回一个可用分区列表,可以在其中创建集群(例如:us-west-2a)。这些区域可用于启动集群。

例子

—netrc -X GEThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/list-zones|金桥。
“区域”“us-west-2c”“us-west-2a”“us-west-2b”),“default_zone”“us-west-2c”

响应结构

字段名

类型

描述

的数组字符串

可用区域列表(如[' us-west-2c ', ' us-east-2 '])。

default_zone

字符串

如果没有可用分区zone_id在集群创建请求中提供。

事件

端点

HTTP方法

2.0 /集群/事件

帖子

检索关于集群活动的事件列表。您可以从活动集群(正在运行、挂起或重新配置)和已终止集群中检索事件,这些集群在最后一次终止后的30天内。这个API是分页的。如果要读取更多事件,则响应包含请求下一页事件所需的所有参数。

例子:

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/events——数据@list-events.json|金桥。

list-events.json

“cluster_id”“1234 - 567890 reef123”“start_time”1617238800000“end_time”1619485200000“秩序”“DESC”“抵消”5“限制”5“event_types”“运行”
“事件”“cluster_id”“1234 - 567890 reef123”“时间戳”1619471498409“类型”“运行”“细节”“current_num_workers”2“target_num_workers”2},“…”),“next_page”“cluster_id”“1234 - 567890 reef123”“start_time”1617238800000“end_time”1619485200000“秩序”“DESC”“抵消”10“限制”5},“total_count”25

检索下一页事件的示例请求:

—netrc -X POSThttps://dbc-a1b2345c-d6e7.cloud.www.neidfyre.com/api/2.0/clusters/events——数据@list-events.json|金桥。

list-events.json

“cluster_id”“1234 - 567890 reef123”“start_time”1617238800000“end_time”1619485200000“秩序”“DESC”“抵消”10“限制”5“event_types”“运行”
“事件”“cluster_id”“1234 - 567890 reef123”“时间戳”1618330776302“类型”“运行”“细节”“current_num_workers”2“target_num_workers”2},“…”),“next_page”“cluster_id”“1234 - 567890 reef123”“start_time”1617238800000“end_time”1619485200000“秩序”“DESC”“抵消”15“限制”5},“total_count”25

请求结构

检索与特定集群相关的事件。

字段名

类型

描述

cluster_id

字符串

要检索事件的集群ID。该字段为必填项。

start_time

INT64

开始时间(以epoch毫秒为单位)。如果为空,则返回从时间起点开始的事件。

end_time

INT64

以epoch毫秒为单位的结束时间。如果为空,返回到当前时间的事件。

订单

ListOrder

中列出事件的顺序;要么ASCDESC.默认为DESC

event_types

的数组ClusterEventType

要筛选的可选事件类型集。如果为空,则返回所有事件类型。

抵消

INT64

结果集中的偏移量。默认为0(没有偏移量)。当指定偏移量并且按降序请求结果时,需要end_time字段。

限制

INT64

事件页中包含的最大事件数。默认为50,最大允许值为500。

响应结构

字段名

类型

描述

事件

的数组ClusterEvent

匹配事件的列表。

next_page

请求结构

检索下一页事件所需的参数。如果没有更多事件要读取,则省略。

total_count

INT64

由start_time、end_time和event_type筛选的事件总数。

数据结构

自动定量

定义集群工作者的最小和最大数量的范围。

字段名

类型

描述

min_workers

INT32

集群在未充分利用时可以缩减到的最小工作者数。它也是集群创建后将拥有的初始工作者数量。

max_workers

INT32

集群在超载时可以扩展到的最大工作者数。Max_workers必须严格大于min_workers。

ClusterInfo

集群元数据。

字段名

类型

描述

num_workers或自动缩放

INT32自动定量

如果是num_workers,表示该集群应该拥有的工作节点的数量。一个集群有一个Spark驱动程序和num_workers执行程序,共num_workers + 1个Spark节点。

注意:当读取集群的属性时,该字段反映所需的worker数量,而不是实际的worker数量。例如,如果一个集群从5个工作人员调整为10个工作人员,该字段将立即更新以反映10个工作人员的目标大小,而在执行人随着新节点的准备,将从5个逐渐增加到10个。

如果是自动伸缩,则需要根据负载自动上下伸缩集群所需的参数。

cluster_id

字符串

集群的规范标识符。这个ID在集群重新启动和调整大小时保留,而每个新集群都有一个全局唯一的ID。

creator_user_name

字符串

创建者用户名。如果用户已被删除,则该字段将不包含在响应中。

司机

SparkNode

Spark驱动所在节点。驱动程序节点包含Spark master和Databricks应用程序,该应用程序管理每个笔记本的Spark reps。

执行人

的数组SparkNode

Spark执行器所在的节点。

spark_context_id

INT64

规范的SparkContext标识符。这个值重启Spark驱动时,修改如下。这一对(cluster_idspark_context_id)是所有Spark上下文的全局唯一标识符。

jdbc_port

INT32

驱动节点中Spark JDBC服务器侦听的端口。在执行节点中,没有服务在此端口上侦听。

cluster_name

字符串

用户请求的集群名称。这个不一定是唯一的。如果在创建时未指定,则集群名称将为空字符串。

spark_version

字符串

集群的运行时版本。控件可以检索可用运行时版本的列表运行时版本API调用。

spark_conf

SparkConfPair

一个对象,包含一组可选的、用户指定的Spark配置键值对。您还可以通过将一串额外的JVM选项传递给驱动程序和执行程序spark.driver.extraJavaOptions而且spark.executor.extraJavaOptions分别。

使用实例Spark conf。{“spark.speculation”:真的,“spark.streaming.ui.retainedBatches”:5}{“spark.driver.extraJavaOptions”:“- verbose: gc- xx: + PrintGCDetails "}

aws_attributes

AwsAttributes

与在Amazon Web Services上运行的集群相关的属性。如果在创建集群时未指定,则将使用一组默认值。

node_type_id

字符串

该字段通过单个值编码该集群中每个Spark节点可用的资源。例如,Spark节点可以针对内存或计算密集型工作负载进行配置和优化。方法可以检索可用节点类型的列表列表节点类型API调用。

driver_node_type_id

字符串

Spark驱动的节点类型。该字段是可选的;如果不设置,驱动节点类型将被设置为相同的值node_type_id上面的定义。

ssh_public_keys

的数组字符串

将添加到该集群中每个Spark节点的SSH公钥内容。可以使用对应的私钥以用户名登录ubuntu在端口2200.最多可以指定10个键。

custom_tags

的数组ClusterTag

包含一组标记的对象。Databricks除了default_tags外,还使用这些标签标记所有集群资源。

请注意

  • 在计算优化和内存优化等遗留节点类型上不支持标记。

  • Databricks最多允许45个自定义标记。

  • 如果集群是在实例池上创建的,则集群标记不会复制到集群资源中。若要标记实例池的资源,请参见custom_tags实例池API 2.0

cluster_log_conf

ClusterLogConf

将Spark日志下发到长期存储目的地的配置。一个集群只能指定一个目标。如果设置了该参数,则每隔一段时间将日志发送到目的地5分钟.驱动日志的目的为<目标> / < cluster-ID > /司机,执行器日志的目的地为<目标> / < cluster-ID > /执行人

init_scripts

的数组InitScriptInfo

存储init脚本的配置。可以指定任意数量的目的地。脚本按照提供的顺序依次执行。如果指定了cluster_log_conf, init脚本日志发送到<目标> / < cluster-ID > / init_scripts

docker_image

DockerImage

的Docker映像自定义容器

spark_env_vars

SparkEnvPair

包含一组用户指定的可选环境变量键值对的对象。表单(X,Y)的键值对按原样导出(即,出口X = Y),同时启动司机和工人。

指定一组附加的SPARK_DAEMON_JAVA_OPTS,我们建议将它们附加到SPARK_DAEMON_JAVA_OPTS美元如下例所示。这确保所有默认数据库管理的环境变量也包括在内。

使用实例Spark环境变量。{“SPARK_WORKER_MEMORY”:“28000米”,“SPARK_LOCAL_DIRS”:" / local_disk0 "}{“SPARK_DAEMON_JAVA_OPTS”:" $ SPARK_DAEMON_JAVA_OPTS-Dspark.shuffle.service.enabled = true "}

autotermination_minutes

INT32

在集群处于非活动状态后自动终止集群,以分钟为单位。如果没有设置,该集群将不会自动终止。如果指定,阈值必须在10到10000分钟之间。还可以将此值设置为0以显式禁用自动终止。

enable_elastic_disk

保龄球

自动伸缩本地存储:启用后,当Spark worker的磁盘空间不足时,该集群将动态获取额外的磁盘空间。此功能需要特定的AWS权限才能正确运行-请参阅自动缩放本地存储获取详细信息。

instance_pool_id

字符串

集群所属实例池的可选ID。指获取详细信息。

cluster_source

ClusterSource

确定集群是由用户通过UI、Databricks Jobs调度器、API请求还是由Delta Live Tables运行时创建的。示例值包括API用户界面,或管道

状态

ClusterState

集群的状态。

state_message

字符串

与最近的状态转换相关联的消息(例如,集群为什么进入一个终止状态)。该字段是非结构化的,其确切格式可能会发生变化。

start_time

INT64

接收到集群创建请求的时间(以epoch毫秒为单位)等待状态)。

terminated_time

INT64

集群终止的时间(以epoch毫秒为单位)(如果适用的话)。

last_state_loss_time

INT64

集群驱动程序最后一次失去状态的时间(由于重新启动或驱动程序故障)。

last_activity_time

INT64

集群最后一次活动的时间(以epoch毫秒为单位)。如果集群上至少有一个命令没有完成,则集群是活动的。该字段在集群达到a后可用运行状态。对该字段的更新是尽力而为。某些版本的Spark不支持报告集群活动。指自动终止获取详细信息。

cluster_memory_mb

INT64

集群内存总量,以兆字节为单位。

cluster_cores

浮动

此集群可用的CPU核数。这可能是分数,因为某些节点类型被配置为在同一实例上的Spark节点之间共享核心。

default_tags

ClusterTag

一个包含Databricks添加的一组标记的对象,与任何custom_tags无关,包括:

  • 供应商:砖

  • 创造者:< username-of-creator >

  • ClusterName: < name-of-cluster >

  • ClusterId: < id-of-cluster >

  • 名称:<数据库内部使用>

    关于作业集群:

  • RunName: < name-of-job >

  • JobId: < id-of-job >

    关于Databricks SQL使用的资源:

  • SqlWarehouseId: < id-of-warehouse >

cluster_log_status

LogSyncStatus

集群日志下发状态。

termination_reason

TerminationReason

关于集群终止原因的信息。此字段仅在集群处于终止终止状态。

ClusterEvent

集群事件信息。

字段名

类型

描述

cluster_id

字符串

集群的规范标识符。该字段为必填项。

时间戳

INT64

事件发生时的时间戳,存储为自unix纪元以来的毫秒数。由Timeline服务指定。

类型

ClusterEventType

事件类型。该字段为必填项。

细节

EventDetails

事件详细信息。该字段为必填项。

ClusterEventType

集群事件类型。

事件类型

描述

创建

表示正在创建集群。

DID_NOT_EXPAND_DISK

指示磁盘空间不足,但添加磁盘将使其超过最大容量。

EXPANDED_DISK

磁盘空间不足,进行了扩容。

FAILED_TO_EXPAND_DISK

磁盘空间不足,无法扩容。

INIT_SCRIPTS_STARTING

指示集群作用域的初始化脚本已启动。

INIT_SCRIPTS_FINISHED

指示集群作用域的初始化脚本已完成。

开始

表示集群正在启动。

重新启动

表示集群正在启动。

终止

表示集群正在终止。

编辑

表示集群已被编辑。

运行

表示集群创建完成。包括集群中的节点数量以及无法获取某些节点时的失败原因。

调整

指示集群目标大小的变化(增大或减小)。

UPSIZE_COMPLETED

节点加入集群完成。包括集群中的节点数量以及无法获取某些节点时的失败原因。

NODES_LOST

表示集群中有节点丢失。

DRIVER_HEALTHY

指示驱动程序运行正常,并且集群可以使用。

DRIVER_UNAVAILABLE

表示该驱动不可用。

SPARK_EXCEPTION

指示从驱动程序抛出Spark异常。

DRIVER_NOT_RESPONDING

指示驱动程序启动但没有响应,可能是由于GC。

DBFS_DOWN

指示驱动程序处于up状态,而DBFS处于down状态。

METASTORE_DOWN

表示驱动是向上的,而亚metastore是向下的。

NODE_BLACKLISTED

表示该节点不被Spark使用。

固定

表示集群被固定。

拔掉

集群被解除固定。

EventDetails

集群事件的详细信息。

字段名

类型

描述

current_num_workers

INT32

集群中的节点数量。

target_num_workers

INT32

集群中的目标节点数量。

previous_attributes

AwsAttributes

编辑集群之前的集群属性。

属性

AwsAttributes

  • 对于已创建的集群,该集群的属性。

  • 对于已编辑的集群,为集群的新属性。

previous_cluster_size

ClusterSize

编辑或调整大小之前的群集大小。

cluster_size

ClusterSize

在创建或编辑集群时设置的集群大小。

导致

ResizeCause

目标大小改变的原因。

原因

TerminationReason

一、终止原因:

  • 在一个终止事件,终止的原因。

  • 在一个RESIZE_COMPLETE事件,表示获取某些节点失败的原因。

用户

字符串

导致事件发生的用户。(如果是Databricks做的,则为空。)

AwsAttributes

创建集群时设置的与Amazon Web Services相关的属性。

字段名

类型

描述

first_on_demand

INT32

集群的第一个first_on_demand节点将放置在按需实例上。如果该值大于0,则集群驱动程序节点将被放置在按需实例上。如果该值大于或等于当前集群大小,则所有节点都将放在按需实例上。如果该值小于当前集群大小,first_on_demand节点将被放置在按需实例上,其余节点将被放置在按需实例上可用性实例。该值不影响集群大小,并且不能在集群的生命周期内发生变化。

可用性

AwsAvailability

用于first_on_demand节点之后的所有后续节点的可用性类型。注意:如果first_on_demand为零,则该可用性类型将用于整个集群。

zone_id

字符串

集群所在可用分区/数据中心的标识符。你有三个选择:

以字符串形式指定可用分区例如:“us-west-2a”。提供的可用分区必须与Databricks部署在同一个区域。例如,如果Databricks部署在“us-east-1”区域,“us-west-2a”不是有效的zone ID。

启用自动选择可用分区功能(Auto-AZ),通过设置值“auto”。如果AWS返回容量不足的错误,Databricks会根据工作空间子网中可用的ip选择可用分区,并在其他可用分区中重试。

没有指定值.如果未指定,将使用默认区域。

属性可以找到可用分区的列表以及默认值列表区域API。

instance_profile_arn

字符串

此集群的节点将仅放置在具有此实例配置文件的AWS实例上。如果省略,节点将被放置在没有实例配置文件的实例上。实例概要文件以前必须由帐户管理员添加到Databricks环境。

此功能可能仅适用于某些客户计划。

spot_bid_price_percent

INT32

AWS现货实例的最高价格,占相应实例类型按需价格的百分比。例如,如果该字段设置为50,并且集群需要一个新的i3.xlarge现货实例,则最高价格是按需价格的一半i3.xlarge实例。类似地,如果该字段设置为200,则最大价格是按需价格的两倍i3.xlarge实例。如果不指定,默认值为100。当此集群请求现货实例时,只有其最大价格百分比与此字段匹配的现货实例才会被考虑。为了安全起见,我们强制该字段不超过10000。

ebs_volume_type

EbsVolumeType

将与此集群一起启动的EBS卷的类型。

ebs_volume_count

INT32

为每个实例启动的卷数。您最多可以选择10个卷。该特性仅对受支持的节点类型启用。传统节点类型无法指定自定义EBS卷。对于没有实例存储的节点类型,至少需要指定一个EBS卷;否则将导致创建集群失败。

这些EBS卷将挂载在/ ebs0/ ebs1等等。实例存储卷将挂载在/ local_disk0/ local_disk1等等。

如果连接了EBS卷,Databricks将配置Spark仅使用EBS卷作为临时存储,因为大小不同的临时存储设备会导致磁盘利用率不高。如果没有连接EBS卷,Databricks将配置Spark以使用实例存储卷。

如果指定了EBS卷,则Spark配置spark.local.dir将被覆盖。

ebs_volume_size

INT32

为每个实例启动的每个EBS卷(GiB)的大小。对于通用SSD,该值必须在100 - 4096之间。对于吞吐量优化的HDD,该值必须在500 - 4096的范围内。无法为遗留节点类型指定自定义EBS卷(memory-optimized而且compute-optimized).

ebs_volume_iops

INT32

每个EBS gp3卷的IOPS数。

该值必须在3000到16000之间。

IOPS和吞吐量的值根据AWS文档计算,以匹配相同卷大小的gp2卷的最大性能。

有关更多信息,请参见EBS音量限制计算器

ebs_volume_throughput

INT32

每个EBS gp3卷的吞吐量,单位是每秒MiB。

该值必须在125和1000之间。

如果既不ebs_volume_iops也不ebs_volume_throughput,则从磁盘大小推断出值:

磁盘大小

IOPS

吞吐量

大于1000

磁盘大小的3倍,最大可达16000

250

170到1000之间

3000

250

低于170

3000

125

ClusterAttributes

创建集群时设置的公共属性集。在集群的生命周期内不能更改这些属性。

字段名

类型

描述

cluster_name

字符串

用户请求的集群名称。这个不一定是唯一的。如果在创建时未指定,则集群名称将为空字符串。

spark_version

字符串

集群的运行时版本,例如“5.0.x-scala2.11”。控件可以检索可用运行时版本的列表运行时版本API调用。

spark_conf

SparkConfPair

一个对象,包含一组可选的、用户指定的Spark配置键值对。您还可以通过将一串额外的JVM选项传递给驱动程序和执行程序spark.driver.extraJavaOptions而且spark.executor.extraJavaOptions分别。

使用实例Spark conf。{“spark.speculation”:真的,“spark.streaming.ui.retainedBatches”:5}{“spark.driver.extraJavaOptions”:“- verbose: gc- xx: + PrintGCDetails "}

aws_attributes

AwsAttributes

与在Amazon Web Services上运行的集群相关的属性。如果在创建集群时未指定,则将使用一组默认值。

node_type_id

字符串

该字段通过单个值编码该集群中每个Spark节点可用的资源。例如,Spark节点可以针对内存或计算密集型工作负载进行配置和优化列表节点类型API调用。

driver_node_type_id

字符串

Spark驱动的节点类型。该字段是可选的;如果不设置,驱动节点类型将被设置为相同的值node_type_id上面的定义。

ssh_public_keys

的数组字符串

将添加到该集群中每个Spark节点的SSH公钥内容。可以使用对应的私钥以用户名登录ubuntu在端口2200.最多可以指定10个键。

custom_tags

ClusterTag

一个对象,包含一组用于集群资源的标记。Databricks除了default_tags外,还使用这些标签标记所有集群资源。

请注意

  • 在计算优化和内存优化等遗留节点类型上不支持标记。

  • Databricks最多允许45个自定义标记。

  • 如果集群是在实例池上创建的,则集群标记不会复制到集群资源中。若要标记实例池的资源,请参见custom_tags实例池API 2.0

cluster_log_conf

ClusterLogConf

将Spark日志下发到长期存储目的地的配置。一个集群只能指定一个目标。如果设置了该参数,则每隔一段时间将日志发送到目的地5分钟.驱动日志的目的为<目标> / < cluster-ID > /司机,执行器日志的目的地为<目标> / < cluster-ID > /执行人

init_scripts

的数组InitScriptInfo

存储init脚本的配置。可以指定任意数量的目的地。脚本按照提供的顺序依次执行。如果cluster_log_conf时,init脚本日志发送到<目标> / < cluster-ID > / init_scripts

docker_image

DockerImage

的Docker映像自定义容器

spark_env_vars

SparkEnvPair

包含一组用户指定的可选环境变量键值对的对象。表单(X,Y)的键值对按原样导出(即,出口X = Y),同时启动司机和工人。

以便指定额外的一组SPARK_DAEMON_JAVA_OPTS,我们建议将它们附加到SPARK_DAEMON_JAVA_OPTS美元如下例所示。这确保所有默认数据库管理的环境变量也包括在内。

使用实例Spark环境变量。{“SPARK_WORKER_MEMORY”:“28000米”,“SPARK_LOCAL_DIRS”:" / local_disk0 "}{“SPARK_DAEMON_JAVA_OPTS”:" $ SPARK_DAEMON_JAVA_OPTS-Dspark.shuffle.service.enabled = true "}

autotermination_minutes

INT32

在集群处于非活动状态后自动终止集群,以分钟为单位。如果没有设置,该集群将不会自动终止。如果指定,阈值必须在10到10000分钟之间。还可以将此值设置为0以显式禁用自动终止。

enable_elastic_disk

保龄球

自动伸缩本地存储:启用后,当Spark worker的磁盘空间不足时,该集群将动态获取额外的磁盘空间。此功能需要特定的AWS权限才能正常运行。指自动缩放本地存储获取详细信息。

instance_pool_id

字符串

集群所属实例池的可选ID。指获取详细信息。

cluster_source

ClusterSource

确定集群是由用户通过UI、Databricks Jobs调度器、API请求还是由Delta Live Tables运行时创建的。示例值包括API用户界面,或管道

policy_id

字符串

一个集群政策ID。

cluster_mount_infos

的数组MountInfo

一个对象,包含网络文件系统挂载的可选规范。

ClusterSize

集群大小规范。

字段名

类型

描述

num_workers或自动缩放

INT32自动定量

如果是num_workers,表示该集群应该拥有的工作节点的数量。一个集群有一个Spark驱动程序和num_workers执行程序,共num_workers + 1个Spark节点。

当读取集群的属性时,该字段反映所需的worker数量,而不是实际的worker数量。例如,如果集群从5个工作人员调整为10个工作人员,则该字段将更新以反映10个工作人员的目标大小,而在executor中列出的工作人员随着新节点的供应逐渐从5增加到10。

如果是自动伸缩,则需要根据负载自动上下伸缩集群所需的参数。

ListOrder

基于列表的查询的通用排序枚举。

订单

描述

DESC

降序排列。

ASC

升序排序。

ResizeCause

集群调整大小的原因。

导致

描述

自动定量

根据负载自动调整大小。

USER_REQUEST

用户请求新的大小。

AUTORECOVERY

自动恢复监控器在丢失节点后调整了集群的大小。

ClusterLogConf

集群日志路径。

字段名

类型

描述

dbfs OR s3

DbfsStorageInfo

S3StorageInfo

集群日志的DBFS位置。必须提供目的地。例如,“dbfs”“目的地”“dbfs: / home / cluster_log”

集群日志的S3位置。目的地,要么地区仓库必须提供。例如,“s3”:“目的地”“s3: / / cluster_log_bucket /前缀”,“地区”“us-west-2”

InitScriptInfo

初始化脚本路径。有关使用init脚本的说明Databricks容器服务,请参阅使用初始化脚本

请注意

该文件存储类型仅适用于使用Databricks容器服务

字段名

类型

描述

dbfs或文件或S3

DbfsStorageInfo

FileStorageInfo

S3StorageInfo

初始化脚本的DBFS位置。必须提供目的地。例如,“dbfs”“目的地”“dbfs: / home / init_script”

初始化脚本的文件位置。必须提供目的地。例如,“文件”“目的地”“文件:/我的/地方/ file.sh”

初始化脚本的S3位置。必须提供目的地和区域或仓库。例如,“s3”:“目的地”“s3: / / init_script_bucket /前缀”,“地区”“us-west-2”

ClusterTag

集群标记定义。

类型

描述

字符串

标签的键。密钥长度必须在1到127个UTF-8字符之间。有关所有限制的列表,请参见AWS标签限制:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-restrictions

字符串

标记的值。长度必须小于等于255个UTF-8字符。有关所有限制的列表,请参见AWS标签限制:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-restrictions

DbfsStorageInfo

DBFS存储信息。

字段名

类型

描述

目的地

字符串

DBFS目的地。例子:dbfs: /我/路径

FileStorageInfo

文件存储信息。

请注意

此位置类型仅适用于使用Databricks容器服务

字段名

类型

描述

目的地

字符串

文件的目的地。例子:文件:/我/ file.sh

DockerImage

Docker映像连接信息。

类型

描述

url

字符串

Docker映像的URL。

basic_auth

DockerBasicAuth

Docker存储库的基本身份验证信息。

DockerBasicAuth

Docker存储库基本身份验证信息。

描述

用户名

Docker存储库的用户名。

密码

Docker存储库的密码。

LogSyncStatus

日志下发状态。

字段名

类型

描述

last_attempted

INT64

最后一次尝试的时间戳。如果最后一次尝试失败,last_exception包含最后一次尝试中的异常。

last_exception

字符串

在最后一次尝试中抛出的异常,如果在最后一次尝试中没有异常,则该异常将为空(在响应中省略)。

NodeType

Spark节点类型的描述,包括节点的尺寸和承载该节点的实例类型。

字段名

类型

描述

node_type_id

字符串

此节点类型的唯一标识符。该字段为必填项。

memory_mb

INT32

该节点类型的可用内存(单位:MB)。该字段为必填项。

num_cores

浮动

该节点类型的可用CPU核数。如果机器实例上的内核数不能被该机器上的Spark节点数整除,则这可能是小数。该字段为必填项。

描述

字符串

与此节点类型关联的字符串描述。该字段为必填项。

instance_type_id

字符串

运行此节点的硬件类型的标识符。该字段为必填项。

is_deprecated

保龄球

节点类型是否已弃用。未弃用的节点类型提供了更好的性能。

node_info

ClusterCloudProviderNodeInfo

云提供商上报的节点类型信息。

ClusterCloudProviderNodeInfo

关于云提供商提供的实例的信息。

字段名

类型

描述

状态

ClusterCloudProviderNodeStatus

由云提供商报告的状态。

available_core_quota

INT32

CPU可用内核配额。

total_core_quota

INT32

总CPU内核配额。

ClusterCloudProviderNodeStatus

由云提供商提供的实例的状态。

状态

描述

NotEnabledOnSubscription

无法订阅节点类型。

NotAvailableInRegion

区域中没有节点类型。

ParameterPair

参数,该参数提供有关集群终止原因的附加信息。

类型

描述

TerminationParameter

终止信息的类型。

字符串

终止信息。

SparkConfPair

Spark配置键值对。

类型

描述

字符串

配置属性名。

字符串

配置属性值。

SparkEnvPair

Spark环境变量键值对。

重要的

在作业集群中指定环境变量时,此数据结构中的字段仅接受拉丁字符(ASCII字符集)。使用非ascii字符将返回错误。无效的、非ascii字符的例子有中文、日本汉字和表情符号。

类型

描述

字符串

环境变量名。

字符串

环境变量值。

SparkNode

Spark驱动或执行器配置。

字段名

类型

描述

private_ip

字符串

私有IP地址(通常是10.x.x x。Spark节点的x.x.x.x地址)。这与主机实例的私有IP地址不同。

public_dns

字符串

该节点的公网DNS地址。该地址可用于在驱动节点上访问Spark JDBC服务器。要与JDBC服务器通信,必须通过通过AWS控制台将安全组规则添加到“工作人员-非托管”安全组来手动授权流量。

node_id

字符串

此节点的全局唯一标识符。

即instance_id

字符串

来自云提供商的主机实例的全局唯一标识符。

start_timestamp

INT64

Spark节点启动时的时间戳(毫秒)。

node_aws_attributes

SparkNodeAwsAttributes

Spark节点AWS特有的属性。

host_private_ip

字符串

主机实例的私有IP地址。

SparkVersion

Databricks集群运行时版本号。

字段名

类型

描述

关键

字符串

Databricks运行时版本号比如键7.3.x-scala2.12.类型提供的值spark_version创建新集群时。对于“通配符”版本,确切的运行时版本可能随着时间的推移而改变(即,7.3.x-scala2.12是一个“通配符”版本)与小错误修复。

的名字

字符串

运行时版本的描述性名称,例如“Databricks runtime 7.3 LTS”。

TerminationReason

集群被终止的原因。

字段名

类型

描述

代码

TerminationCode

指示集群终止原因的状态代码。

类型

TerminationType

指示集群被终止的原因。

参数

ParameterPair

对象,该对象包含一组参数,这些参数提供有关集群终止原因的信息。

PoolClusterTerminationCode

状态代码,指示由于池故障而终止集群的原因。

代码

描述

INSTANCE_POOL_MAX_CAPACITY_FAILURE

已达到池的最大容量。

INSTANCE_POOL_NOT_FOUND_FAILURE

集群指定的池不再活动或不存在。

ClusterSource

创建集群的服务。

服务

描述

用户界面

通过UI创建的集群。

工作

由Databricks作业调度器创建的集群。

API

通过API调用创建的集群。

ClusterState

集群的状态。允许的状态转换如下:

  • 等待->运行

  • 等待->终止

  • 运行->调整

  • 运行->重新启动

  • 运行->终止

  • 重新启动->运行

  • 重新启动->终止

  • 调整->运行

  • 调整->终止

  • 终止->终止

状态

描述

等待

表示集群正在创建过程中。

运行

表示集群已经启动,可以使用。

重新启动

表示集群正在重新启动。

调整

表示集群正在进行节点的增加或移除操作。

终止

表示集群正在被销毁。

终止

表示集群已被成功销毁。

错误

这种状态不再使用。用于表示创建集群失败。终止而且终止被用来代替。

未知的

表示集群处于未知状态。集群不应该处于这种状态。

TerminationCode

指示集群终止原因的状态代码。

代码

描述

USER_REQUEST

用户直接终止集群。参数应包括用户名字段,表示终止集群的特定用户。

JOB_FINISHED

集群由作业启动,并在作业完成时终止。

不活动

由于集群处于空闲状态,因此已终止集群。

CLOUD_PROVIDER_SHUTDOWN

承载Spark驱动程序的实例已被云提供商终止。例如,在AWS中,AWS可以退役实例并直接关闭它们。参数应包括aws_instance_state_reason字段,指示aws提供的终止实例的原因。

COMMUNICATION_LOST

数据库与驱动程序实例上的服务失去连接。例如,当云网络基础设施出现问题时,或者当实例本身变得不健康时,就会发生这种情况。

CLOUD_PROVIDER_LAUNCH_FAILURE

Databricks在请求实例启动集群时遇到云提供商故障。例如,AWS限制正在运行的实例和EBS卷的数量。如果要求Databricks启动需要实例或EBS卷超过AWS限制的集群,则集群将使用此状态代码失败。参数应该包含其中之一aws_api_error_codeaws_instance_state_reason,或aws_spot_request_status表示aws提供的Databricks无法为集群请求所需实例的原因。

SPARK_STARTUP_FAILURE

集群初始化失败。可能的原因包括未能为Spark创建环境或启动Spark主进程和工作进程出现问题。

INVALID_ARGUMENT

无法启动群集,因为用户指定的参数无效。例如,用户可能为集群指定了无效的运行时版本。

UNEXPECTED_LAUNCH_FAILURE

在启动此集群时,Databricks未能完成关键设置步骤,从而终止集群。

INTERNAL_ERROR

Databricks遇到意外错误,迫使正在运行的集群终止。有关更多详细信息,请联系Databricks支持。

SPARK_ERROR

日志含义Spark驱动启动失败。可能的原因包括不兼容的库和初始化脚本损坏了Spark容器。

METASTORE_COMPONENT_UNHEALTHY

由于无法到达外部亚瘤,群集启动失败。指故障排除

DBFS_COMPONENT_UNHEALTHY

无法连接数据库文件系统(DBFS),集群启动失败。

DRIVER_UNREACHABLE

Databricks无法访问Spark驱动程序,因为它不可达。

DRIVER_UNRESPONSIVE

Databricks无法访问Spark驱动程序,因为它没有响应。

INSTANCE_UNREACHABLE

Databricks无法访问实例以启动集群。这可能是一个短暂的网络问题。如果问题仍然存在,这通常表明网络环境配置错误。

CONTAINER_LAUNCH_FAILURE

Databricks无法在集群的工作节点上启动容器。让管理员检查网络配置。

INSTANCE_POOL_CLUSTER_FAILURE

池支持的集群特定故障。指获取详细信息。

REQUEST_REJECTED

数据中心目前无法处理该请求。稍后再试,如果问题仍然存在,请联系Databricks。

INIT_SCRIPT_FAILURE

数据库无法在集群的某个节点上加载和运行集群范围的init脚本,或者init脚本以非零退出码终止。指初始化脚本日志

TRIAL_EXPIRED

Databricks试用订阅过期。

TerminationType

集群被终止的原因。

类型

描述

成功

终止成功了。

CLIENT_ERROR

Non-retriable。客户端在重新尝试创建集群之前必须修复参数。

SERVICE_FAULT

数据服务问题。客户端可以重试。

CLOUD_FAILURE

云提供商基础设施问题。客户端可以在解决基础问题后重试。

TerminationParameter

提供关于终止群集原因的附加信息的键。

关键

描述

用户名

终止集群的用户的用户名。

aws_api_error_code

AWS提供了错误代码,描述了无法提供集群节点的原因。例如,InstanceLimitExceeded表示已超过特定实例类型的EC2实例的限制。参考:https://docs.aws.amazon.com/AWSEC2/latest/APIReference/query-api-troubleshooting.html

aws_instance_state_reason

AWS提供了描述驱动程序节点终止原因的状态原因。例如,客户端。VolumeLimitExceeded表示已超过EBS卷或EBS卷存储总量的限制。参考资料,请参阅https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_StateReason.html

aws_spot_request_status

描述无法满足现货请求的原因。例如,price-too-low表示最大价格低于当前现货价格。参考:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html#spot-instance-bid-status-understand

aws_spot_request_fault_code

提供点请求失败时的其他详细信息。例如InsufficientFreeAddressesInSubnet表示子网没有空闲IP地址来容纳新实例。参考资料,请参阅https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-spot-instance-requests.html

aws_impaired_status_details

AWS提供的状态检查失败,导致节点丢失。此状态可能对应于失败的实例或系统检查。参考资料,请参阅https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-system-instance-status-check.html

aws_instance_status_event

AWS提供了导致节点丢失的预定事件(例如重新启动)。参考资料,请参阅https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-instances-status-check_sched.html

aws_error_message

来自AWS的各种故障的人类可读上下文。该字段是非结构化的,其确切格式可能会发生变化。

databricks_error_message

解释集群终止原因的其他上下文。该字段是非结构化的,其确切格式可能会发生变化。

inactivity_duration_min

空闲集群处于非活动状态一段时间后被关闭。

即instance_id

承载Spark驱动程序的实例的ID。

instance_pool_id

集群正在使用的实例池ID。

instance_pool_error_code

错误代码针对特定于某个池的集群故障。

S3StorageInfo

S3存储信息。

字段名

类型

描述

目的地

字符串

S3的目的地。例如:s3: / /桶/ some-prefix必须使用实例概要文件配置集群,并且实例概要文件必须具有对目标的写访问权。你不能使用AWS密钥。

地区

字符串

S3。例如:us-west-2.必须设置区域或仓库。如果两者都设置,则使用warehouse。

仓库

字符串

S3仓库。例如:https://s3-us-west-2.amazonaws.com.必须设置区域或仓库。如果两者都设置,则使用warehouse。

enable_encryption

保龄球

(可选)启用服务器端加密,默认情况下。

encryption_type

字符串

(可选)加密类型,可以是sse-s3sse-kms.仅在启用加密且默认类型为时使用sse-s3

kms_key

字符串

(可选)开启加密功能,且“加密类型”为时使用KMS密钥sse-kms

canned_acl

字符串

(可选)设置屏蔽访问控制列表。例如:bucket-owner-full-control.如果设置了canned_acl,则集群实例配置文件必须具有s3: PutObjectAcl对目的桶和前缀的权限。可能的罐装acl的完整列表可以在https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl.默认情况下,只有对象所有者拥有完全控制权。如果使用跨帐户角色写入数据,则可能需要设置bucket-owner-full-control使桶所有者能够读取日志。

SparkNodeAwsAttributes

Spark节点AWS特有的属性。

字段名

类型

描述

is_spot

保龄球

该节点是否在Amazon现货实例上。

AwsAvailability

为集群设置节点时支持的AWS可用性类型集。

类型

描述

现货

使用现场实例。

ON_DEMAND

使用按需实例。

SPOT_WITH_FALLBACK

最好使用现货实例,但如果无法获得现货实例(例如,如果AWS现货价格太高),则退回到按需实例。

EbsVolumeType

Databricks支持gp2和gp3 EBS卷类型。按照以下指示操作SSD存储管理为您的工作空间选择gp2或gp3。

类型

描述

GENERAL_PURPOSE_SSD

使用AWS EBS卷提供额外的存储。

THROUGHPUT_OPTIMIZED_HDD

使用AWS st1卷提供额外的存储空间。

MountInfo

配置以挂载网络文件系统

字段名

类型

描述

network_filesystem_info

NetworkFileSystemInfo

对象定义网络文件系统的参数。

remote_mount_dir_path

字符串

网络文件系统中要挂载的目录的位置。

local_mount_dir_path

字符串

Spark容器中的挂载点。

NetworkFileSystemInfo

网络文件系统参数

字段名

类型

描述

server_address

字符串

网络文件系统服务器的DNS名称。

mount_options

字符串

要传递给mount命令的以逗号分隔的选项列表。该字段可选。