开发终端节点 API - Amazon Glue
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

开发终端节点 API

开发端点 API 介绍与使用自定义 DevEndpoint 进行测试相关的 Amazon Glue API。

数据类型

DevEndpoint 结构

开发人员可以远程调试提取、转换和加载 (ETL) 脚本的开发终端节点。

字段
  • EndpointName – UTF-8 字符串。

    DevEndpoint 的名称。

  • RoleArn – UTF-8 字符串,与 AWS IAM ARN string pattern 匹配。

    DevEndpoint 中使用的 IAM 角色的 Amazon 资源名称(ARN)。

  • SecurityGroupIds – UTF-8 字符串数组。

    DevEndpoint 中使用的安全组标识符的列表。

  • SubnetId – UTF-8 字符串。

    DevEndpoint 的子网 ID。

  • YarnEndpointAddress – UTF-8 字符串。

    DevEndpoint 使用的 YARN 终端节点地址。

  • PrivateAddress – UTF-8 字符串。

    私有 IP 地址用于访问 VPC 中的 DevEndpoint(如果在 VPC 中创建了 DevEndpoint)。只有在 VPC 创建 DevEndpoint 时才会显示 PrivateAddress 字段。

  • ZeppelinRemoteSparkInterpreterPort – 数字(整数)。

    远程 Apache Spark 解释器的 Apache Zeppelin 端口。

  • PublicAddress – UTF-8 字符串。

    DevEndpoint 使用的公有 IP 地址。仅当您创建非 virtual private cloud (VPC) DevEndpoint 时提供 PublicAddress 字段。

  • Status – UTF-8 字符串。

    DevEndpoint 的当前状态。

  • WorkerType – UTF-8 字符串(有效值:Standard="" | G.1X="" | G.2X="" | G.025X="" | G.4X="" | G.8X="" | Z.2X="")。

    分配给开发端点的预定义工作线程的类型。接受的值为 Standard、G.1X 或 G.2X。

    • 对于 Standard 工作线程类型,每个工作线程提供 4 个 vCPU、16 GB 内存和 50GB 磁盘,并且每个工作线程提供 2 个执行器。

    • 对于 G.1X 工作线程类型,每个工作线程映射到 1 个 DPU(4 个 vCPU,16 GB 内存,64 GB 磁盘),并且每个工作线程提供 1 个执行器。我们建议内存密集型作业使用该工作线程类型。

    • 对于 G.2X 工作线程类型,每个工作线程映射到 2 个 DPU(8 个 vCPU,32 GB 内存,128 GB 磁盘),并且每个工作线程提供 1 个执行器。我们建议内存密集型作业使用该工作线程类型。

    已知问题:当使用 G.2X WorkerType 配置创建开发端点时,开发端点的 Spark 驱动程序将在 4 个 vCPU、16 GB 内存和 64 GB 磁盘上运行。

  • GlueVersion – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Custom string pattern #20 匹配。

    Glue 版本决定了 Amazon Glue 支持的 Apache Spark 和 Python 版本。Python 版本表示支持在开发端点上运行 ETL 脚本的版本。

    有关可用的 Amazon Glue 版本以及相应的 Spark 和 Python 版本的更多信息,请参阅开发人员指南中的 Glue 版本

    在未指定 Glue 版本的情况下创建的开发端点默认为 Glue 0.9。

    可以使用 CreateDevEndpointUpdateDevEndpoint API 中的 Arguments 参数指定支持开发端点的 Python 版本。如果未提供参数,则版本默认为 Python 2。

  • NumberOfWorkers – 数字(整数)。

    分配给开发端点的已定义 workerType 的工作线程数。

    您可以定义的最大工作线程数是 299 (G.1X),以及 149 (G.2X)。

  • NumberOfNodes – 数字(整数)。

    分配给此 DevEndpoint 的 Amazon Glue 数据处理单元(DPU)的数量。

  • AvailabilityZone – UTF-8 字符串。

    DevEndpoint 所在的 Amazon 可用区。

  • VpcId – UTF-8 字符串。

    DevEndpoint 使用的 Virtual Private Cloud (VPC) 的 ID。

  • ExtraPythonLibsS3Path – UTF-8 字符串。

    Amazon S3 存储桶中应加载到您的 DevEndpoint 中的一个或多个 Python 库的路径。多个值必须是以逗号分隔的完整路径。

    注意

    您只能与 DevEndpoint 一同使用纯 Python 库。目前不支持依赖于 C 扩展的库,如 pandas Python 数据分析库。

  • ExtraJarsS3Path – UTF-8 字符串。

    S3 存储桶中应加载到您的 DevEndpoint 中的一个或多个 Java .jar 文件的路径。

    注意

    您只能与 DevEndpoint 一同使用纯 Java/Scala 库。

  • FailureReason – UTF-8 字符串。

    DevEndpoint 中的当前失败的原因。

  • LastUpdateStatus – UTF-8 字符串。

    上次更新的状态。

  • CreatedTimestamp – 时间戳。

    创建此 DevEndpoint 的时间点。

  • LastModifiedTimestamp – 时间戳。

    上次修改此 DevEndpoint 的时间点。

  • PublicKey – UTF-8 字符串。

    DevEndpoint 用于身份验证的公有密钥。提供此属性是为了向后兼容,因为要使用的推荐属性是公有密钥。

  • PublicKeys – UTF-8 字符串数组,不超过 5 个字符串。

    DevEndpoints 用于身份验证的公有密钥列表。优先于单个公有密钥使用此属性,因为公有密钥允许您为每个客户端使用不同的私有密钥。

    注意

    如果以前使用公有密钥创建了端点,则必须删除该密钥才能设置公有密钥列表。使用 addPublicKeys 属性中的公有密钥内容和 deletePublicKeys 属性中的新密钥列表调用 UpdateDevEndpoint API 操作。

  • SecurityConfiguration – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    DevEndpoint 将使用的 SecurityConfiguration 结构的名称。

  • Arguments – 键值对的映射数组,不超过 100 对。

    每个键是一个 UTF-8 字符串。

    每个值是一个 UTF-8 字符串。

    用于配置 DevEndpoint 的参数的映射。

    有效参数为:

    • "--enable-glue-datacatalog": ""

    可以使用 CreateDevEndpointUpdateDevEndpoint API 中的 Arguments 参数指定支持开发端点的 Python 版本。如果未提供参数,则版本默认为 Python 2。

DevEndpointCustomLibraries 结构

要加载到开发终端节点中的自定义库。

字段
  • ExtraPythonLibsS3Path – UTF-8 字符串。

    Amazon Simple Storage Service (Amazon S3) 存储桶中应加载到您的 DevEndpoint 中的一个或多个 Python 库的路径。多个值必须是以逗号分隔的完整路径。

    注意

    您只能与 DevEndpoint 一同使用纯 Python 库。目前不支持依赖于 C 扩展的库,如 pandas Python 数据分析库。

  • ExtraJarsS3Path – UTF-8 字符串。

    S3 存储桶中应加载到您的 DevEndpoint 中的一个或多个 Java .jar 文件的路径。

    注意

    您只能与 DevEndpoint 一同使用纯 Java/Scala 库。

操作

CreateDevEndpoint 操作(Python:create_dev_endpoint)

创建新的开发终端节点。

请求
  • EndpointName必填:UTF-8 字符串。

    要为新 DevEndpoint 分配的名称。

  • RoleArn必填: UTF-8 字符串,与 AWS IAM ARN string pattern 匹配。

    DevEndpoint 的 IAM 角色。

  • SecurityGroupIds – UTF-8 字符串数组。

    新的 DevEndpoint 将使用的安全组的安全组 ID。

  • SubnetId – UTF-8 字符串。

    新的 DevEndpoint 将使用的子网 ID。

  • PublicKey – UTF-8 字符串。

    DevEndpoint 用于身份验证的公有密钥。提供此属性是为了向后兼容,因为要使用的推荐属性是公有密钥。

  • PublicKeys – UTF-8 字符串数组,不超过 5 个字符串。

    开发终端节点用于身份验证的公有密钥列表。优先于单个公有密钥使用此属性,因为公有密钥允许您为每个客户端使用不同的私有密钥。

    注意

    如果以前使用公有密钥创建了端点,则必须删除该密钥才能设置公有密钥列表。使用 addPublicKeys 属性中的公有密钥内容和 deletePublicKeys 属性中的新密钥列表调用 UpdateDevEndpoint API。

  • NumberOfNodes – 数字(整数)。

    要分配给该 DevEndpoint 的 Amazon Glue 数据处理单元(DPU)的数量。

  • WorkerType – UTF-8 字符串(有效值:Standard="" | G.1X="" | G.2X="" | G.025X="" | G.4X="" | G.8X="" | Z.2X="")。

    分配给开发端点的预定义工作线程的类型。接受的值为 Standard、G.1X 或 G.2X。

    • 对于 Standard 工作线程类型,每个工作线程提供 4 个 vCPU、16 GB 内存和 50GB 磁盘,并且每个工作线程提供 2 个执行器。

    • 对于 G.1X 工作线程类型,每个工作线程映射到 1 个 DPU(4 个 vCPU,16 GB 内存,64 GB 磁盘),并且每个工作线程提供 1 个执行器。我们建议内存密集型作业使用该工作线程类型。

    • 对于 G.2X 工作线程类型,每个工作线程映射到 2 个 DPU(8 个 vCPU,32 GB 内存,128 GB 磁盘),并且每个工作线程提供 1 个执行器。我们建议内存密集型作业使用该工作线程类型。

    已知问题:当使用 G.2X WorkerType 配置创建开发端点时,开发端点的 Spark 驱动程序将在 4 个 vCPU、16 GB 内存和 64 GB 磁盘上运行。

  • GlueVersion – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Custom string pattern #20 匹配。

    Glue 版本决定了 Amazon Glue 支持的 Apache Spark 和 Python 版本。Python 版本表示支持在开发端点上运行 ETL 脚本的版本。

    有关可用的 Amazon Glue 版本以及相应的 Spark 和 Python 版本的更多信息,请参阅开发人员指南中的 Glue 版本

    在未指定 Glue 版本的情况下创建的开发端点默认为 Glue 0.9。

    可以使用 CreateDevEndpointUpdateDevEndpoint API 中的 Arguments 参数指定支持开发端点的 Python 版本。如果未提供参数,则版本默认为 Python 2。

  • NumberOfWorkers – 数字(整数)。

    分配给开发端点的已定义 workerType 的工作线程数。

    您可以定义的最大工作线程数是 299 (G.1X),以及 149 (G.2X)。

  • ExtraPythonLibsS3Path – UTF-8 字符串。

    Amazon S3 存储桶中应加载到您的 DevEndpoint 中的一个或多个 Python 库的路径。多个值必须是以逗号分隔的完整路径。

    注意

    您只能与 DevEndpoint 一同使用纯 Python 库。尚不支持依赖于 C 扩展的库,如 pandas Python 数据分析库。

  • ExtraJarsS3Path – UTF-8 字符串。

    S3 存储桶中应加载到您的 DevEndpoint 中的一个或多个 Java .jar 文件的路径。

  • SecurityConfiguration – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    DevEndpoint 将使用的 SecurityConfiguration 结构的名称。

  • Tags – 键值对的映射数组,不超过 50 对。

    每个键都是一个 UTF-8 字符串,长度不少于 1 个字节或超过 128 个字节。

    每个值是一个 UTF-8 字符串,不超过 256 个字节。

    要用于此 DevEndpoint 的标签。您可以使用标签来限制对 DevEndpoint 的访问。有关 Amazon Glue 中的标签的更多信息,请参阅开发人员指南中的 Amazon Glue 中的 Amazon 标签

  • Arguments – 键值对的映射数组,不超过 100 对。

    每个键是一个 UTF-8 字符串。

    每个值是一个 UTF-8 字符串。

    用于配置 DevEndpoint 的参数的映射。

响应
  • EndpointName – UTF-8 字符串。

    为新的 DevEndpoint 指定的名称。

  • Status – UTF-8 字符串。

    新的 DevEndpoint 的当前状态。

  • SecurityGroupIds – UTF-8 字符串数组。

    分配给新 DevEndpoint 的安全组。

  • SubnetId – UTF-8 字符串。

    分配给新的 DevEndpoint 的子网 ID。

  • RoleArn – UTF-8 字符串,与 AWS IAM ARN string pattern 匹配。

    分配给新的 DevEndpoint 的角色的 Amazon Resource Name(ARN)。

  • YarnEndpointAddress – UTF-8 字符串。

    DevEndpoint 使用的 YARN 终端节点的地址。

  • ZeppelinRemoteSparkInterpreterPort – 数字(整数)。

    远程 Apache Spark 解释器的 Apache Zeppelin 端口。

  • NumberOfNodes – 数字(整数)。

    分配给此 DevEndpoint 的 Amazon Glue 数据处理单元(DPU)的数量。

  • WorkerType – UTF-8 字符串(有效值:Standard="" | G.1X="" | G.2X="" | G.025X="" | G.4X="" | G.8X="" | Z.2X="")。

    分配给开发端点的预定义工作线程的类型。可能的值为 Standard、G.1X 或 G.2X。

  • GlueVersion – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Custom string pattern #20 匹配。

    Glue 版本决定了 Amazon Glue 支持的 Apache Spark 和 Python 版本。Python 版本表示支持在开发端点上运行 ETL 脚本的版本。

    有关可用的 Amazon Glue 版本以及相应的 Spark 和 Python 版本的更多信息,请参阅开发人员指南中的 Glue 版本

  • NumberOfWorkers – 数字(整数)。

    分配给开发端点的已定义 workerType 的工作线程数。

  • AvailabilityZone – UTF-8 字符串。

    DevEndpoint 所在的 Amazon 可用区。

  • VpcId – UTF-8 字符串。

    DevEndpoint 使用的 Virtual Private Cloud (VPC) 的 ID。

  • ExtraPythonLibsS3Path – UTF-8 字符串。

    S3 存储桶中将加载到您的 DevEndpoint 中的一个或多个 Python 库的路径。

  • ExtraJarsS3Path – UTF-8 字符串。

    S3 存储桶中应加载到您的 DevEndpoint 中的一个或多个 Java .jar 文件的路径。

  • FailureReason – UTF-8 字符串。

    DevEndpoint 中的当前失败的原因。

  • SecurityConfiguration – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    DevEndpoint 使用的 SecurityConfiguration 结构的名称。

  • CreatedTimestamp – 时间戳。

    创建此 DevEndpoint 的时间点。

  • Arguments – 键值对的映射数组,不超过 100 对。

    每个键是一个 UTF-8 字符串。

    每个值是一个 UTF-8 字符串。

    用于配置该 DevEndpoint 的参数的映射。

    有效参数为:

    • "--enable-glue-datacatalog": ""

    可以使用 CreateDevEndpointUpdateDevEndpoint API 中的 Arguments 参数指定支持开发端点的 Python 版本。如果未提供参数,则版本默认为 Python 2。

错误
  • AccessDeniedException

  • AlreadyExistsException

  • IdempotentParameterMismatchException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • ValidationException

  • ResourceNumberLimitExceededException

UpdateDevEndpoint 操作(Python:update_dev_endpoint)

更新指定的开发终端节点。

请求
  • EndpointName必填:UTF-8 字符串。

    要更新的 DevEndpoint 名称。

  • PublicKey – UTF-8 字符串。

    DevEndpoint 要使用的公有密钥。

  • AddPublicKeys – UTF-8 字符串数组,不超过 5 个字符串。

    DevEndpoint 将使用的公有密钥的列表。

  • DeletePublicKeys – UTF-8 字符串数组,不超过 5 个字符串。

    要从 DevEndpoint 中删除的公有密钥的列表。

  • CustomLibraries – 一个 DevEndpointCustomLibraries 对象。

    要加载到 DevEndpoint 中的自定义 Python 或 Java 库。

  • UpdateEtlLibraries – 布尔值。

    如果需要更新要加载到开发终端节点中的自定义库列表,则为 True,否则为 False

  • DeleteArguments – UTF-8 字符串数组。

    要从用于配置 DevEndpoint 的参数映射中删除的参数键的列表。

  • AddArguments – 键值对的映射数组,不超过 100 对。

    每个键是一个 UTF-8 字符串。

    每个值是一个 UTF-8 字符串。

    用于添加用来配置 DevEndpoint 的参数映射的参数的映射。

    有效参数为:

    • "--enable-glue-datacatalog": ""

    可以使用 CreateDevEndpointUpdateDevEndpoint API 中的 Arguments 参数指定支持开发端点的 Python 版本。如果未提供参数,则版本默认为 Python 2。

响应
  • 无响应参数。

错误
  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • ValidationException

DeleteDevEndpoint 操作(Python:delete_dev_endpoint)

删除指定的开发终端节点。

请求
  • EndpointName必填:UTF-8 字符串。

    DevEndpoint 的名称。

响应
  • 无响应参数。

错误
  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

GetDevEndpoint 操作(Python:get_dev_endpoint)

检索有关指定开发终端节点的信息。

注意

当您在 Virtual Private Cloud (VPC) 中创建开发终端节点时,Amazon Glue 仅返回一个私有 IP 地址,并且不会填充公有 IP 地址字段。在创建非 VPC 开发终端节点时,Amazon Glue 仅返回一个公有 IP 地址。

请求
  • EndpointName必填:UTF-8 字符串。

    要为其检索信息的 DevEndpoint 名称。

响应
  • DevEndpoint – 一个 DevEndpoint 对象。

    DevEndpoint 定义。

错误
  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

GetDevEndpoints 操作(Python:get_dev_endpoints)

检索此 Amazon 账户中的所有开发终端节点。

注意

当您在 Virtual Private Cloud(VPC)中创建开发终端节点时,Amazon Glue 仅返回一个私有 IP 地址,并且不会填充公有 IP 地址字段。在创建非 VPC 开发终端节点时,Amazon Glue 仅返回一个公有 IP 地址。

请求
  • MaxResults – 数字(整数),不小于 1 或大于 1000。

    要返回的信息的最大大小。

  • NextToken – UTF-8 字符串。

    延续标记 (如果这是延续调用)。

响应
  • DevEndpointsDevEndpoint 对象的数组。

    DevEndpoint 定义的列表。

  • NextToken – UTF-8 字符串。

    延续令牌 (如果尚未返回所有 DevEndpoint 定义)。

错误
  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

BatchGetDevEndpoints 操作(Python:batch_get_dev_endpoints)

返回给定开发终端节点名称列表的资源元数据的列表。调用 ListDevEndpoints 操作后,您可以调用此操作来访问您有权访问的数据。此操作支持所有 IAM 权限,包括使用标签的权限条件。

请求
  • customerAccountId – UTF-8 字符串。

    Amazon 账户 ID。

  • DevEndpointNames必填:UTF-8 字符串数组,不少于 1 个或不超过 25 个字符串。

    DevEndpoint 名称列表,这些名称可能是通过 ListDevEndpoint 操作返回的名称。

响应
  • DevEndpointsDevEndpoint 对象的数组。

    DevEndpoint 定义的列表。

  • DevEndpointsNotFound – UTF-8 字符串数组,不少于 1 个或不超过 25 个字符串。

    未找到 DevEndpoints 列表。

错误
  • AccessDeniedException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

ListDevEndpoints 操作(Python:list_dev_endpoints)

检索此 Amazon 账户中所有 DevEndpoint 资源的名称或带指定标签的资源。此操作可让您查看您账户中可用的资源及其名称。

此操作采用可选的 Tags 字段,您可以将其用作响应的筛选器,以便将标记的资源作为一个组进行检索。如果您选择使用标签筛选,则仅检索带标签的资源。

请求
  • NextToken – UTF-8 字符串。

    延续令牌 (如果这是延续请求)。

  • MaxResults – 数字(整数),不小于 1 或大于 1000。

    要返回的列表的最大大小。

  • Tags – 键值对的映射数组,不超过 50 对。

    每个键都是一个 UTF-8 字符串,长度不少于 1 个字节或超过 128 个字节。

    每个值是一个 UTF-8 字符串,不超过 256 个字节。

    指定仅返回这些已标记的资源。

响应
  • DevEndpointNames – UTF-8 字符串数组。

    账户中所有 DevEndpoint 的名称或带指定标签的 DevEndpoint

  • NextToken – UTF-8 字符串。

    延续令牌 (如果返回的列表不包含上一个可用的指标)。

错误
  • InvalidInputException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException