交互式会话 API - Amazon Glue
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

交互式会话 API

交互式会话 API 描述与使用 Amazon Glue 交互式会话构建和测试数据集成的提取、转换和加载 (ETL) 脚本相关的 Amazon Glue API。

数据类型

会话结构

远程 Spark 运行时环境的运行时段。

字段

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

    会话 ID。

  • CreatedOn – 时间戳。

    创建会话的日期和时间。

  • Status – UTF-8 字符串(有效值:PROVISIONING | READY | FAILED | TIMEOUT | STOPPING | STOPPED)。

    会话状态。

  • ErrorMessage – 描述字符串,长度不超过 2048 个字节,与 URI address multi-line string pattern 匹配。

    会话期间显示的错误消息。

  • Description – 描述字符串,长度不超过 2048 个字节,与 URI address multi-line string pattern 匹配。

    会话描述。

  • Role – UTF-8 字符串,不少于 20 个字节,不超过 2048 个字节,与 Custom string pattern #20 匹配。

    与此会话关联的 IAM 角色的名称或 Amazon Resource Name (ARN)。

  • Command – 一个 SessionCommand 对象。

    命令对象。请参阅 SessionCommand。

  • DefaultArguments – 键值对的映射数组,不超过 75 对。

    每个键是一个 UTF-8 字符串,不少于 1 个字节或超过 128 个字节,与 Custom string pattern #21 匹配。

    每个值都是一个 UTF-8 字符串,长度不超过 4096 个字节,与 URI address multi-line string pattern 匹配。

    键值对的映射数组。最多 75 对。

  • Connections – 一个 ConnectionsList 对象。

    用于会话的连接数。

  • Progress – 数字 (double)。

    会话的代码执行进度。

  • MaxCapacity – 数字 (double)。

    任务运行时可分配的 Amazon Glue 数据处理单元 (DPU) 的数量。DPU 是对处理能力的相对度量,它由 4 个 vCPU 的计算容量和 16GB 内存组成。

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

    会话要使用的 SecurityConfiguration 结构的名称。

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

    Amazon Glue 版本决定了 Amazon Glue 支持的 Apache Spark 和 Python 版本。GlueVersion 必须大于 2.0。

  • DataAccessId – UTF-8 字符串,长度不少于 1 个字节,不超过 36 个字节。

    会话的数据访问 ID。

  • PartitionId – UTF-8 字符串,长度不少于 1 个字节,不超过 36 个字节。

    会话的分区 ID。

SessionCommand 结构

运行任务的 SessionCommand

字段

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

    指定 SessionCommand 的名称。可以是“gluetel”或“gluestreaming”。

  • PythonVersion – UTF-8 字符串,与 Custom string pattern #16 匹配。

    指定 Python 版本。Python 版本指示了 Spark 类型的任务支持的版本。

语句结构

在会话中实现特定操作的语句或请求。

字段

  • Id – 数字 (integer)。

    语句的 ID。

  • Code – UTF-8 字符串。

    语句的执行代码。

  • State – UTF-8 字符串(有效值:WAITING | RUNNING | AVAILABLE | CANCELLING | CANCELLED | ERROR)。

    执行请求时的状态。

  • Output – 一个 StatementOutput 对象。

    JSON 中的输出。

  • Progress – 数字 (double)。

    代码执行进度。

  • StartedOn – 数字(长型)。

    任务定义开始的 Unix 时间和日期。

  • CompletedOn – 数字(长型)。

    任务定义完成的 Unix 时间和日期。

StatementOutput 结构

JSON 格式的代码执行输出。

字段

  • Data – 一个 StatementOutputData 对象。

    代码执行输出。

  • ExecutionCount – 数字 (integer)。

    输出的执行计数。

  • Status – UTF-8 字符串(有效值:WAITING | RUNNING | AVAILABLE | CANCELLING | CANCELLED | ERROR)。

    代码执行输出的状态。

  • ErrorName – UTF-8 字符串。

    输出中的错误名称。

  • ErrorValue – UTF-8 字符串。

    输出的错误值。

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

    输出的回溯。

StatementOutputData 结构

JSON 格式的代码执行输出。

字段

  • TextPlain – UTF-8 字符串。

    文本格式的代码执行输出。

操作

CreateSession 操作(Python:create_session)

创建新的会话。

请求

请求创建新的会话。

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

    会话请求 ID。

  • Description – 描述字符串,长度不超过 2048 个字节,与 URI address multi-line string pattern 匹配。

    会话描述。

  • Role必需:UTF-8 字符串,长度不少于 20 个字节,不超过 2048 个字节,与 Custom string pattern #20 匹配。

    IAM 角色 ARN

  • Command必填:一个 SessionCommand 对象。

    运行任务的 SessionCommand

  • Timeout - 数字(整数),至少为 1。

    请求超时之前的秒数。

  • IdleTimeout - 数字(整数),至少为 1。

    请求超时之前闲置的秒数。

  • DefaultArguments – 键值对的映射数组,不超过 75 对。

    每个键是一个 UTF-8 字符串,不少于 1 个字节或超过 128 个字节,与 Custom string pattern #21 匹配。

    每个值都是一个 UTF-8 字符串,长度不超过 4096 个字节,与 URI address multi-line string pattern 匹配。

    键值对的映射数组。最多 75 对。

  • Connections – 一个 ConnectionsList 对象。

    用于会话的连接数。

  • MaxCapacity – 数字 (double)。

    任务运行时可分配的 Amazon Glue 数据处理单元 (DPU) 的数量。DPU 是对处理能力的相对度量,它由 4 个 vCPU 的计算容量和 16GB 内存组成。

  • NumberOfWorkers – 数字 (integer)。

    用于会话的已定义 WorkerType 的工件数量。

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

    分配用于会话的预定义工件的类型。接受的值为 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 个执行器。我们建议内存密集型作业使用该工作线程类型。

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

    会话要使用的 SecurityConfiguration 结构的名称。

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

    Amazon Glue 版本决定了 Amazon Glue 支持的 Apache Spark 和 Python 版本。GlueVersion 必须大于 2.0。

  • DataAccessId – UTF-8 字符串,长度不少于 1 个字节,不超过 36 个字节。

    会话的数据访问 ID。

  • PartitionId – UTF-8 字符串,长度不少于 1 个字节,不超过 36 个字节。

    会话的分区 ID。

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

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

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

    属于会话的键值对(标签)的映射。

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

    请求的源。

响应

  • Session – 一个 Session 对象。

    返回响应中的会话对象。

错误

  • AccessDeniedException

  • IdempotentParameterMismatchException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • ValidationException

  • AlreadyExistsException

  • ResourceNumberLimitExceededException

StopSession 操作(Python:stop_session)

停止会话。

请求

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

    要停止的会话 ID。

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

    请求的源。

响应

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

    返回已停止会话的 ID。

错误

  • AccessDeniedException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • IllegalSessionStateException

  • ConcurrentModificationException

DeleteSession 操作(Python:delete_session)

删除会话。

请求

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

    要删除的会话 ID。

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

    删除会话请求的源名称。

响应

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

    返回要删除会话 ID。

错误

  • AccessDeniedException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • IllegalSessionStateException

  • ConcurrentModificationException

GetSession 操作(Python:get_session)

检索会话。

请求

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

    会话 ID。

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

    请求的源。

响应

  • Session – 一个 Session 对象。

    响应中会返回会话对象。

错误

  • AccessDeniedException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

ListSession 操作(Python:list_ession)

检索会话列表。

请求

  • NextToken – UTF-8 字符串,长度不超过 400000 个字节。

    下一组结果的令牌,没有更多结果时为 null。

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

    最大结果数量。

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

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

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

    属于会话的标签。

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

    请求的源。

响应

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

    返回会话 ID。

  • SessionsSession 对象的数组。

    返回会话对象。

  • NextToken – UTF-8 字符串,长度不超过 400000 个字节。

    下一组结果的令牌,没有更多结果时为 null。

错误

  • AccessDeniedException

  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

RunStatement 操作(Python:run_statement)

执行语句。

请求

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

    要运行的语句的会话 ID。

  • Code必需: UTF-8 字符串,长度不超过 68000 个字节。

    要运行的语句代码。

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

    请求的源。

响应

  • Id – 数字 (integer)。

    返回所运行的语句的 ID。

错误

  • EntityNotFoundException

  • AccessDeniedException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • ValidationException

  • ResourceNumberLimitExceededException

  • IllegalSessionStateException

CancelStatement 操作(Python:cancel_statement)

取消语句。

请求

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

    要取消的语句的会话 ID。

  • Id必填:数字(整数)。

    要取消的语句的 ID。

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

    用于取消语句的请求的源。

响应

  • 无响应参数。

错误

  • AccessDeniedException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • IllegalSessionStateException

GetStatement 操作(Python:get_statement)

检索语句。

请求

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

    语句的会话 ID。

  • Id必填:数字(整数)。

    语句的 ID。

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

    请求的源。

响应

  • Statement – 一个 Statement 对象。

    返回语句。

错误

  • AccessDeniedException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • IllegalSessionStateException

ListStatements 操作(Python:list_statements)

列出会话的语句。

请求

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

    语句的会话 ID。

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

    用于列出语句的请求的源。

  • NextToken – UTF-8 字符串,长度不超过 400000 个字节。

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

响应

  • StatementsStatement 对象的数组。

    返回语句列表。

  • NextToken – UTF-8 字符串,长度不超过 400000 个字节。

    延续令牌(如果尚未返回所有语句)。

错误

  • AccessDeniedException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • IllegalSessionStateException