互動式工作階段 API - AWS Glue

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

互動式工作階段 API

互動式工作階段 API 描述了與使用 AWS Glue 互動式工作階段建置和測試擷取、轉換和載入 (ETL) 指令碼以進行資料整合相關的 AWS Glue API。

資料類型

Session 結構

遠端 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 #26

    與此工作階段相關聯 IAM 角色的名稱或 Amazon Resource Name (ARN)。

  • CommandSessionCommand 物件。

    指令物件。請 SessionCommand參閱。

  • DefaultArguments – 鍵值對的映射陣列,不超過 75 對。

    每個金鑰都是 UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 128 個位元組,需符合 Custom string pattern #27

    每個值都是 UTF-8 字串,長度不可超過 4096 個位元組,需符合 URI address multi-line string pattern

    金鑰值對的映射陣列。上限為 75 對。

  • ConnectionsConnectionsList 物件。

    用於工作階段的連線數量。

  • Progress – 數字 (雙位數)。

    工作階段的程式碼執行進度。

  • MaxCapacity – 數字 (雙位數)。

    工作執行時可配置的 AWS Glue 資料處理單元 (DPU) 數目。DPU 是相對的處理能力,包含 4 個 vCPU 的運算容量和 16 GB 的記憶體。

  • SecurityConfiguration – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern

    要與會話一起使用的 SecurityConfiguration 結構的名稱。

  • GlueVersion – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Custom string pattern #20

    該 AWS Glue 版本決定了阿帕奇星火和 Python AWS Glue 支持的版本。必 GlueVersion 須大於 2.0。

  • DataAccessId – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 36 個位元組。

    工作階段的資料存取 ID。

  • PartitionId – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 36 個位元組。

    工作階段的分割區 ID。

  • NumberOfWorkers – 數字 (整數)。

    用於工作階段的已定義 WorkerType 的工作者數量。

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

    工作階段執行時分配的預先定義工作者類型。接受 Spark 工作階段的 G.1XG.2XG.4XG.8X 值。接受 Ray 工作階段的 Z.2X 值。

  • CompletedOn – 時間戳記。

    此工作階段完成的日期和時間。

  • ExecutionTime – 數字 (雙位數)。

    工作階段執行的總時間。

  • DPUSeconds – 數字 (雙位數)。

    工作階段所使用的 DPU (公式: ExecutionTime * MaxCapacity)。

  • IdleTimeout – 數字 (整數)。

    工作階段逾時前閒置的分鐘數。

  • ProfileName – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern

    與工作階段相關聯的 AWS Glue 使用情況設定檔名稱。

SessionCommand 結構

執行任務的 SessionCommand

欄位
  • Name – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern

    指定的名稱 SessionCommand。可以是 'glueetl' 或 'gluestreaming'。

  • PythonVersion – UTF-8 字串,需符合Custom string pattern #21

    指定 Python 版本。Python 版本指示針對 Spark 類型任務支援的版本。

Statement 結構

在工作階段中發生的特定動作陳述式或請求。

欄位
  • Id – 數字 (整數)。

    陳述式的 ID。

  • Code – UTF-8 字串。

    陳述式的執行程式碼。

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

    處理請求時的狀態。

  • OutputStatementOutput 物件。

    JSON 格式的輸出。

  • Progress – 數字 (雙位數)。

    程式碼執行進度。

  • StartedOn – 數字 (long)。

    開始任務定義的 unix 時間和日期。

  • CompletedOn – 數字 (long)。

    完成任務定義的 unix 時間和日期。

StatementOutput 結構

JSON 格式的程式碼執行輸出。

欄位
  • DataStatementOutputData 物件。

    程式碼執行輸出。

  • ExecutionCount – 數字 (整數)。

    輸出的執行計數。

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

    程式碼執行輸出的狀態。

  • ErrorName – UTF-8 字串。

    輸出中的錯誤名稱。

  • ErrorValue – UTF-8 字串。

    輸出的錯誤值。

  • Traceback – UTF-8 字串陣列。

    輸出的回溯。

StatementOutputData 結構

JSON 格式的程式碼執行輸出。

欄位
  • TextPlain – UTF-8 字串。

    文字格式的程式碼執行輸出。

ConnectionsList 結構

指定任務所使用的連線。

欄位
  • Connections – UTF-8 字串陣列。

    任務所使用連線的清單。

作業

CreateSession 行動(Python:創建會話)

建立新的工作階段。

請求

請求建立新的工作階段。

  • 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 #26

    IAM 角色 ARN

  • Command必要:SessionCommand 物件。

    執行任務的 SessionCommand

  • Timeout – 數字 (整數),至少為 1。

    工作階段逾時前的分鐘數。Spark ETL 任務的預設值為 48 小時 (2880 分鐘),這是此任務類型的工作階段存留期上限。如需其他任務類型,請參閱文件。

  • IdleTimeout – 數字 (整數),至少為 1。

    工作階段逾時前閑置的分鐘數。Spark ETL 任務的預設值為逾時值。如需其他任務類型,請參閱文件。

  • DefaultArguments – 鍵值對的映射陣列,不超過 75 對。

    每個金鑰都是 UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 128 個位元組,需符合 Custom string pattern #27

    每個值都是 UTF-8 字串,長度不可超過 4096 個位元組,需符合 URI address multi-line string pattern

    金鑰值對的映射陣列。上限為 75 對。

  • ConnectionsConnectionsList 物件。

    用於工作階段的連線數量。

  • MaxCapacity – 數字 (雙位數)。

    工作執行時可配置的 AWS Glue 資料處理單元 (DPU) 數目。DPU 是相對的處理能力,包含 4 個 vCPU 的運算容量和 16 GB 的記憶體。

  • NumberOfWorkers – 數字 (整數)。

    用於工作階段的已定義 WorkerType 的工作者數量。

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

    將在任務執行時分配的預先定義工作者類型。接受 Spark 任務的 G.1X、G.2X、G.4X 或 G.8X 值。接受 Ray 筆記本的 Z.2X 值。

    • 對於 G.1X 工作者類型,每個工作者都會映射到 1 個 DPU (4 個 vCPU、16 GB 記憶體),外加 84 GB 磁碟 (大約 34 GB 可用),並為每個工作者提供 1 個執行器。我們建議將此工作者類型用於資料轉換、聯結和查詢等工作負載,以提供可擴展且符合成本效益的方式來執行大部分任務。

    • 對於 G.2X 工作者類型,每個工作者都會映射到 2 個 DPU (8 個 vCPU、32 GB 記憶體),外加 128 GB 磁碟 (大約 77 GB 可用),並為每個工作者提供 1 個執行器。我們建議將此工作者類型用於資料轉換、聯結和查詢等工作負載,以提供可擴展且符合成本效益的方式來執行大部分任務。

    • 對於 G.4X 工作者類型,每個工作者都會映射到 4 個 DPU (16 個 vCPU、64 GB 記憶體),外加 256 GB 磁碟 (大約 235 GB 可用),並為每個工作者提供 1 個執行器。我們建議工作負載包含最嚴苛轉換、彙總、聯結和查詢的任務採用這種工作者類型。此 Worker 類型僅適用於以下 AWS 區域 3.0 或更新 AWS Glue 版本的 Spark ETL 工作:美國東部 (俄亥俄)、美國東部 (維吉尼亞北部)、美國西部 (奧勒岡)、亞太區域 (新加坡)、亞太區域 (雪梨)、亞太區域 (東京)、加拿大 (中部)、歐洲 (法蘭克福)、歐洲 (愛爾蘭) 和歐洲 (斯德哥爾摩)。

    • 對於 G.8X 工作者類型,每個工作者都會映射到 8 個 DPU (32 個 vCPU、128 GB 記憶體),外加 512 GB 磁碟 (大約 487 GB 可用),並為每個工作者提供 1 個執行器。我們建議工作負載包含最嚴苛轉換、彙總、聯結和查詢的任務採用這種工作者類型。此背景工作類型僅適用於 3.0 AWS Glue 版或更新版本的 Spark ETL 工作,與G.4X背景工作者類型支援的相同 AWS 區域。

    • 對於 Z.2X 工作者類型,每個工作者都會映射到 2 個 M-DPU (8 個 vCPU、64 GB 記憶體),外加 128 GB 磁碟 (大約 120 GB 可用),並根據自動縮放器提供最多 8 個 Ray 工作者。

  • SecurityConfiguration – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern

    要與會話使用的 SecurityConfiguration 結構的名稱

  • GlueVersion – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Custom string pattern #20

    該 AWS Glue 版本決定了阿帕奇星火和 Python AWS Glue 支持的版本。必 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 #27

    請求的來源。

  • ProfileName – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern

    與工作階段相關聯的 AWS Glue 使用情況設定檔名稱。

回應
錯誤
  • AccessDeniedException

  • IdempotentParameterMismatchException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • ValidationException

  • AlreadyExistsException

  • ResourceNumberLimitExceededException

StopSession 行動(Python:停止會話)

停止工作階段。

請求
  • Id必要:UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,且需符合Single-line string pattern

    欲停止的工作階段 ID。

  • RequestOrigin – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 128 個位元組,且需符合 Custom string pattern #27

    請求的來源。

回應
  • Id – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern

    傳回已停止的工作階段 ID。

錯誤
  • AccessDeniedException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • IllegalSessionStateException

  • ConcurrentModificationException

DeleteSession 行動(Python:刪除會話)

刪除工作階段。

請求
  • Id必要:UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,且需符合Single-line string pattern

    欲刪除的工作階段 ID。

  • RequestOrigin – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 128 個位元組,且需符合 Custom string pattern #27

    刪除工作階段請求的來源名稱。

回應
  • Id – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern

    傳回已刪除的工作階段 ID。

錯誤
  • AccessDeniedException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • IllegalSessionStateException

  • ConcurrentModificationException

GetSession 行動(Python:獲取會話)

擷取工作階段。

請求
  • Id必要:UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,且需符合Single-line string pattern

    工作階段的 ID。

  • RequestOrigin – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 128 個位元組,且需符合 Custom string pattern #27

    請求的來源。

回應
錯誤
  • AccessDeniedException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

ListSessions 行動(Python:列表會話)

擷取工作階段的清單。

請求
  • 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 #27

    請求的來源。

回應
  • Ids – UTF-8 字串陣列。

    傳回工作階段的 ID。

  • Sessions – 一個 Session (工作階段) 物件陣列。

    傳回工作階段物件。

  • NextToken – UTF-8 字串,長度不可超過 400000 個位元組。

    用於下一組結果的字符,如果沒有更多結果則為 null。

錯誤
  • AccessDeniedException

  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

RunStatement 行動(Python:運行語句)

執行陳述式。

請求
  • SessionId必要:UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,且需符合Single-line string pattern

    要執行之陳述式的工作階段 ID。

  • Code必要:UTF-8 字串,長度不可超過 68000 個位元組。

    要執行的陳述式程式碼。

  • RequestOrigin – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 128 個位元組,且需符合 Custom string pattern #27

    請求的來源。

回應
  • Id – 數字 (整數)。

    傳回執行之陳述式的 ID。

錯誤
  • EntityNotFoundException

  • AccessDeniedException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • ValidationException

  • ResourceNumberLimitExceededException

  • IllegalSessionStateException

CancelStatement 行動(Python:取消語句)

取消陳述式。

請求
  • SessionId必要:UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,且需符合Single-line string pattern

    要取消之陳述式的工作階段 ID。

  • Id必要:數字 (整數)。

    要取消之陳述式的 ID。

  • RequestOrigin – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 128 個位元組,且需符合 Custom string pattern #27

    取消陳述式請求的來源。

回應
  • 無回應參數。

錯誤
  • AccessDeniedException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • IllegalSessionStateException

GetStatement 行動(Python:獲取語句)

擷取陳述式。

請求
  • SessionId必要:UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,且需符合Single-line string pattern

    陳述式的工作階段 ID。

  • Id必要:數字 (整數)。

    陳述式的 ID。

  • RequestOrigin – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 128 個位元組,且需符合 Custom string pattern #27

    請求的來源。

回應
  • Statement陳述式 物件。

    傳回陳述式。

錯誤
  • AccessDeniedException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • IllegalSessionStateException

ListStatements 行動(Python:列表語句)

列出工作階段的陳述式。

請求
  • SessionId必要:UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,且需符合Single-line string pattern

    陳述式的工作階段 ID。

  • RequestOrigin – UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 128 個位元組,且需符合 Custom string pattern #27

    列出陳述式請求的來源。

  • NextToken – UTF-8 字串,長度不可超過 400000 個位元組。

    接續符記,如果這是接續呼叫。

回應
  • Statements – 一個 陳述式 物件陣列。

    傳回陳述式清單。

  • NextToken – UTF-8 字串,長度不可超過 400000 個位元組。

    接續字符 (如果尚未傳回所有陳述)。

錯誤
  • AccessDeniedException

  • EntityNotFoundException

  • InternalServiceException

  • OperationTimeoutException

  • InvalidInputException

  • IllegalSessionStateException