

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

# Catalog objects API
<a name="aws-glue-api-catalog"></a>

目錄物件 API 說明與在 中使用目錄相關的資料類型和 API AWS Glue。

**Topics**
+ [Catalogs API](aws-glue-api-catalog-catalogs.md)
+ [資料庫 API](aws-glue-api-catalog-databases.md)
+ [資料表 API](aws-glue-api-catalog-tables.md)
+ [分區 API](aws-glue-api-catalog-partitions.md)
+ [Connections API](aws-glue-api-catalog-connections.md)
+ [使用者定義的函數 API](aws-glue-api-catalog-functions.md)
+ [將 Athena 目錄匯入至 AWS Glue](aws-glue-api-catalog-migration.md)

# Catalogs API
<a name="aws-glue-api-catalog-catalogs"></a>

Catalogs API 說明用於建立、刪除、尋找、更新和列出目錄的 API。

## 資料類型
<a name="aws-glue-api-catalog-catalogs-objects"></a>
+ [目錄結構](#aws-glue-api-catalog-catalogs-Catalog)
+ [CatalogInput 結構](#aws-glue-api-catalog-catalogs-CatalogInput)
+ [TargetRedshiftCatalog 結構](#aws-glue-api-catalog-catalogs-TargetRedshiftCatalog)
+ [CatalogProperties 結構](#aws-glue-api-catalog-catalogs-CatalogProperties)
+ [CatalogPropertiesOutput 結構](#aws-glue-api-catalog-catalogs-CatalogPropertiesOutput)
+ [DataLakeAccessProperties 結構](#aws-glue-api-catalog-catalogs-DataLakeAccessProperties)
+ [IcebergOptimizationProperties 結構](#aws-glue-api-catalog-catalogs-IcebergOptimizationProperties)
+ [DataLakeAccessPropertiesOutput 結構](#aws-glue-api-catalog-catalogs-DataLakeAccessPropertiesOutput)
+ [IcebergOptimizationPropertiesOutput 結構](#aws-glue-api-catalog-catalogs-IcebergOptimizationPropertiesOutput)
+ [FederatedCatalog 結構](#aws-glue-api-catalog-catalogs-FederatedCatalog)

## 目錄結構
<a name="aws-glue-api-catalog-catalogs-Catalog"></a>

目錄物件代表 AWS Glue 資料目錄或聯合來源中資料庫的邏輯分組。您現在可以建立 Redshift 聯合目錄或包含其他帳戶或區域中 Redshift 資料庫的資源連結的目錄。

**欄位**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  目錄的 ID。若要授予對預設目錄的存取權，不應提供此欄位。
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 64 個位元組，需符合 [Custom string pattern #25](aws-glue-api-common.md#regex_25)。

  目錄的名稱。不能與帳戶 ID 相同。
+ `ResourceArn` – UTF-8 字串。

  指派給目錄資源的 Amazon Resource Name (ARN)。
+ `Description` – 描述字串，長度不可超過 2048 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  描述字串，長度不可超過 2048 個位元組，需符合 URI 位址多行字串模式。目錄的描述。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

   定義目錄參數和屬性的金鑰/值對的映射陣列。
+ `CreateTime` – 時間戳記。

  目錄建立的時間。
+ `UpdateTime` – 時間戳記。

  上次更新目錄的時間。
+ `TargetRedshiftCatalog` – [TargetRedshiftCatalog](#aws-glue-api-catalog-catalogs-TargetRedshiftCatalog) 物件。

  描述資料庫資源連結的目標目錄的 `TargetRedshiftCatalog` 物件。
+ `FederatedCatalog` – [FederatedCatalog](#aws-glue-api-catalog-catalogs-FederatedCatalog) 物件。

  指向 AWS Glue Data Catalog 外部實體的`FederatedCatalog`物件。
+ `CatalogProperties` – [CatalogPropertiesOutput](#aws-glue-api-catalog-catalogs-CatalogPropertiesOutput) 物件。

  指定資料湖存取屬性和其他自訂屬性的 `CatalogProperties` 物件。
+ `CreateTableDefaultPermissions` – 一個 [PrincipalPermissions](aws-glue-api-catalog-databases.md#aws-glue-api-catalog-databases-PrincipalPermissions) 物件陣列。

  `PrincipalPermissions` 物件的陣列。為主體在資料表上建立一組預設許可。使用者 AWS Lake Formation。在正常 AWS Glue 的操作過程中不使用。
+ `CreateDatabaseDefaultPermissions` – 一個 [PrincipalPermissions](aws-glue-api-catalog-databases.md#aws-glue-api-catalog-databases-PrincipalPermissions) 物件陣列。

  `PrincipalPermissions` 物件的陣列。為主體在資料庫上建立一組預設許可。使用者 AWS Lake Formation。在正常 AWS Glue 的操作過程中不使用。
+ `AllowFullTableExternalDataAccess` – UTF-8 字串 (有效值：`True` \$1 `False`)。

   允許第三方引擎存取向 Lake Formation 註冊 Amazon S3 的位置中的資料。

## CatalogInput 結構
<a name="aws-glue-api-catalog-catalogs-CatalogInput"></a>

描述目錄屬性的結構。

**欄位**
+ `Description` – 描述字串，長度不可超過 2048 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  描述字串，長度不可超過 2048 個位元組，需符合 URI 位址多行字串模式。目錄的描述。
+ `FederatedCatalog` – [FederatedCatalog](#aws-glue-api-catalog-catalogs-FederatedCatalog) 物件。

  `FederatedCatalog` 物件。參考 AWS Glue Data Catalog 外部實體的`FederatedCatalog`結構，例如 Redshift 資料庫。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  定義目錄參數和屬性的金鑰/值對的映射陣列。
+ `TargetRedshiftCatalog` – [TargetRedshiftCatalog](#aws-glue-api-catalog-catalogs-TargetRedshiftCatalog) 物件。

  描述資源連結的目標目錄的 `TargetRedshiftCatalog` 物件。
+ `CatalogProperties` – [CatalogProperties](#aws-glue-api-catalog-catalogs-CatalogProperties) 物件。

  指定資料湖存取屬性和其他自訂屬性的 `CatalogProperties` 物件。
+ `CreateTableDefaultPermissions` – 一個 [PrincipalPermissions](aws-glue-api-catalog-databases.md#aws-glue-api-catalog-databases-PrincipalPermissions) 物件陣列。

  `PrincipalPermissions` 物件的陣列。為主體在資料表上建立一組預設許可。使用者 AWS Lake Formation。通常應明確設定為空白清單。
+ `CreateDatabaseDefaultPermissions` – 一個 [PrincipalPermissions](aws-glue-api-catalog-databases.md#aws-glue-api-catalog-databases-PrincipalPermissions) 物件陣列。

  `PrincipalPermissions` 物件的陣列。為主體在資料庫上建立一組預設許可。使用者 AWS Lake Formation。通常應明確設定為空白清單。
+ `AllowFullTableExternalDataAccess` – UTF-8 字串 (有效值：`True` \$1 `False`)。

   允許第三方引擎存取向 Lake Formation 註冊 Amazon S3 的位置中的資料。

## TargetRedshiftCatalog 結構
<a name="aws-glue-api-catalog-catalogs-TargetRedshiftCatalog"></a>

描述資源連結的目標目錄的結構。

**欄位**
+ `CatalogArn` – *必要：*UTF-8 字串。

  目錄資源的 Amazon Resource Name (ARN)。

## CatalogProperties 結構
<a name="aws-glue-api-catalog-catalogs-CatalogProperties"></a>

指定資料湖存取屬性和其他自訂屬性的結構。

**欄位**
+ `DataLakeAccessProperties` – [DataLakeAccessProperties](#aws-glue-api-catalog-catalogs-DataLakeAccessProperties) 物件。

  指定屬性的`DataLakeAccessProperties`物件，以設定 Data Catalog 中目錄資源 AWS Glue 的資料湖存取。
+ `IcebergOptimizationProperties` – [IcebergOptimizationProperties](#aws-glue-api-catalog-catalogs-IcebergOptimizationProperties) 物件。

  指定目錄的 Iceberg 資料表最佳化屬性的結構。其中包括壓縮、保留和孤立檔案刪除操作的組態，可套用至此目錄中的 Iceberg 資料表。
+ `CustomProperties` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  目錄的其他金鑰值屬性，例如資料欄統計資料最佳化。

## CatalogPropertiesOutput 結構
<a name="aws-glue-api-catalog-catalogs-CatalogPropertiesOutput"></a>

內容屬性，其中包含目錄資源的組態屬性。

**欄位**
+ `DataLakeAccessProperties` – [DataLakeAccessPropertiesOutput](#aws-glue-api-catalog-catalogs-DataLakeAccessPropertiesOutput) 物件。

  具有輸入屬性的`DataLakeAccessProperties`物件，用於設定 Data Catalog 中目錄資源 AWS Glue 的資料湖存取。
+ `IcebergOptimizationProperties` – [IcebergOptimizationPropertiesOutput](#aws-glue-api-catalog-catalogs-IcebergOptimizationPropertiesOutput) 物件。

  用於指定目錄 Iceberg 資料表最佳化設定的 `IcebergOptimizationPropertiesOutput` 物件，包括壓縮、保留和孤立檔案刪除操作的組態。
+ `CustomProperties` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  目錄的其他金鑰值屬性，例如資料欄統計資料最佳化。

## DataLakeAccessProperties 結構
<a name="aws-glue-api-catalog-catalogs-DataLakeAccessProperties"></a>

輸入屬性，以設定 Data Catalog 中目錄資源 AWS Glue 的資料湖存取。

**欄位**
+ `DataLakeAccess` – 布林值。

  開啟或關閉從任何非 Redshift 引擎存取 Data Catalog 中 Amazon Redshift 資料庫的 Apache Spark 應用程式的資料湖存取，例如 Amazon Athena、Amazon EMR 或 AWS Glue ETL。
+ `DataTransferRole` – UTF-8 字串，需符合[Custom string pattern #53](aws-glue-api-common.md#regex_53)。

  將擔任的角色 AWS Glue ，用於在查詢期間將資料傳入/傳出預備儲存貯體。
+ `KmsKey` – UTF-8 字串。

  加密金鑰，將用於將與目錄一起建立的暫存儲存貯體。
+ `CatalogType` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  為原生目錄資源指定聯合目錄類型。目前支援的類型為 `aws:redshift`。

## IcebergOptimizationProperties 結構
<a name="aws-glue-api-catalog-catalogs-IcebergOptimizationProperties"></a>

指定目錄的 Iceberg 資料表最佳化屬性的結構，包括壓縮、保留和孤立檔案刪除操作的組態。

**欄位**
+ `RoleArn` – UTF-8 字串，需符合[Custom string pattern #53](aws-glue-api-common.md#regex_53)。

  將擔任以執行 Iceberg 資料表最佳化操作之 IAM 角色的 Amazon Resource Name (ARN)。
+ `Compaction` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  金鑰值對的映射，用於指定 Iceberg 資料表壓縮操作的組態參數，可最佳化資料檔案的佈局，以改善查詢效能。
+ `Retention` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  金鑰值對的映射，用於指定 Iceberg 資料表保留操作的組態參數，以管理資料表快照的生命週期來控制儲存成本。
+ `OrphanFileDeletion` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  金鑰值對的映射，用於指定 Iceberg 孤立檔案刪除操作的組態參數，以識別和移除資料表中繼資料不再參考的檔案。

## DataLakeAccessPropertiesOutput 結構
<a name="aws-glue-api-catalog-catalogs-DataLakeAccessPropertiesOutput"></a>

Data Catalog 中目錄資源的資料湖存取組態的輸出屬性 AWS Glue 。

**欄位**
+ `DataLakeAccess` – 布林值。

  開啟或關閉在 Data Catalog 中存取 Amazon Redshift 資料庫的 Apache Spark 應用程式的資料湖存取。
+ `DataTransferRole` – UTF-8 字串，需符合[Custom string pattern #53](aws-glue-api-common.md#regex_53)。

  將擔任的角色 AWS Glue ，用於在查詢期間將資料傳入/傳出預備儲存貯體。
+ `KmsKey` – UTF-8 字串。

  加密金鑰，將用於將與目錄一起建立的暫存儲存貯體。
+ `ManagedWorkgroupName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  為您的目錄資源建立的受管 Redshift Serverless 運算名稱。
+ `ManagedWorkgroupStatus` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  受管 Redshift Serverless 運算狀態。
+ `RedshiftDatabaseName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  受管運算中的預設 Redshift 資料庫資源名稱。
+ `StatusMessage` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  可提供受管工作群組狀態詳細資訊的訊息。
+ `CatalogType` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  為原生目錄資源指定聯合目錄類型。目前支援的類型為 `aws:redshift`。

## IcebergOptimizationPropertiesOutput 結構
<a name="aws-glue-api-catalog-catalogs-IcebergOptimizationPropertiesOutput"></a>

包含 AWS Glue Data Catalog 中目錄資源 Iceberg 資料表最佳化組態輸出屬性的結構。

**欄位**
+ `RoleArn` – UTF-8 字串，需符合[Custom string pattern #53](aws-glue-api-common.md#regex_53)。

  用於執行 Iceberg 資料表最佳化操作的 IAM 角色的 Amazon Resource Name (ARN)。
+ `Compaction` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  金鑰值對的映射，用於指定 Iceberg 資料表壓縮操作的組態參數，可最佳化資料檔案的佈局，以改善查詢效能。
+ `Retention` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  金鑰值對的映射，用於指定 Iceberg 資料表保留操作的組態參數，以管理資料表快照的生命週期來控制儲存成本。
+ `OrphanFileDeletion` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  金鑰值對的映射，用於指定 Iceberg 孤立檔案刪除操作的組態參數，以識別和移除資料表中繼資料不再參考的檔案。
+ `LastUpdatedTime` – 時間戳記。

  Iceberg 最佳化屬性上次更新的時間戳記。

## FederatedCatalog 結構
<a name="aws-glue-api-catalog-catalogs-FederatedCatalog"></a>

指向 AWS Glue Data Catalog 外部實體的目錄。

**欄位**
+ `Identifier` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 512 個位元組，且需符合 [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  聯合目錄的唯一識別碼。
+ `ConnectionName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  外部資料來源連線的名稱，例如 Redshift 聯合目錄。
+ `ConnectionType` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於存取聯合目錄的連線類型，指定連線至外部資料來源的協定或方法。

## 作業
<a name="aws-glue-api-catalog-catalogs-actions"></a>
+ [CreateCatalog 動作 (Python：create\$1catalog)](#aws-glue-api-catalog-catalogs-CreateCatalog)
+ [UpdateCatalog 動作 (Python：update\$1catalog)](#aws-glue-api-catalog-catalogs-UpdateCatalog)
+ [DeleteCatalog 動作 (Python：delete\$1catalog)](#aws-glue-api-catalog-catalogs-DeleteCatalog)
+ [GetCatalog 動作 (Python：get\$1catalog)](#aws-glue-api-catalog-catalogs-GetCatalog)
+ [GetCatalogs 動作 (Python：get\$1catalogs)](#aws-glue-api-catalog-catalogs-GetCatalogs)

## CreateCatalog 動作 (Python：create\$1catalog)
<a name="aws-glue-api-catalog-catalogs-CreateCatalog"></a>

在 AWS Glue Data Catalog 中建立新的目錄。

**請求**
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 64 個位元組，需符合 [Custom string pattern #25](aws-glue-api-common.md#regex_25)。

  要建立的目錄名稱。
+ `CatalogInput` – *必要：*[CatalogInput](#aws-glue-api-catalog-catalogs-CatalogInput) 物件。

  定義目錄的中繼資料的 `CatalogInput` 物件。
+ `Tags` – 金鑰值對的映射陣列，不超過 50 對。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 UTF-8 字串，長度不可超過 256 個位元組。

  金鑰值對的映射陣列，不超過 50 對。每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。每個值都是 UTF-8 字串，長度不可超過 256 個位元組。您指派給目錄的標籤。

**回應**
+ *無回應參數。*

**錯誤**
+ `InvalidInputException`
+ `AlreadyExistsException`
+ `ResourceNumberLimitExceededException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `ConcurrentModificationException`
+ `AccessDeniedException`
+ `EntityNotFoundException`
+ `FederatedResourceAlreadyExistsException`
+ `FederationSourceException`

## UpdateCatalog 動作 (Python：update\$1catalog)
<a name="aws-glue-api-catalog-catalogs-UpdateCatalog"></a>

更新 AWS Glue Data Catalog 中現有目錄的屬性。

**請求**
+ `CatalogId` – *必要：*目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合 [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  目錄的 ID。
+ `CatalogInput` – *必要：*[CatalogInput](#aws-glue-api-catalog-catalogs-CatalogInput) 物件。

  用於指定現有目錄的新屬性的 `CatalogInput` 物件。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `ConcurrentModificationException`
+ `AccessDeniedException`
+ `FederationSourceException`

## DeleteCatalog 動作 (Python：delete\$1catalog)
<a name="aws-glue-api-catalog-catalogs-DeleteCatalog"></a>

從 AWS Glue 資料目錄移除指定的目錄。

完成此操作後，您將無法再存取已刪除目錄中的資料庫、資料表 （以及可能屬於資料表的所有資料表版本和分割區） 和使用者定義的函數。 會由服務自行決定，以非同步方式及時 AWS Glue 刪除這些「孤立」資源。

若要確保在呼叫 `DeleteCatalog` 操作之前立即刪除所有相關資源，請使用 `DeleteTableVersion` (或 `BatchDeleteTableVersion`)、`DeletePartition` (或 `BatchDeletePartition`)、`DeleteTable` (或 `BatchDeleteTable`)、`DeleteUserDefinedFunction` 和 `DeleteDatabase`，來刪除任何屬於目錄的資源。

**請求**
+ `CatalogId` – *必要：*目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合 [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  目錄的 ID。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `ConcurrentModificationException`
+ `AccessDeniedException`
+ `FederationSourceException`

## GetCatalog 動作 (Python：get\$1catalog)
<a name="aws-glue-api-catalog-catalogs-GetCatalog"></a>

要擷取的目錄的名稱。這應都是小寫。

**請求**
+ `CatalogId` – *必要：*目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合 [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  目錄所在父目錄的 ID。如果未提供，預設會使用 AWS 帳戶號碼。

**回應**
+ `Catalog` – [目錄](#aws-glue-api-catalog-catalogs-Catalog) 物件。

  `Catalog` 物件。Data Catalog 中指定 AWS Glue 目錄的定義。

**錯誤**
+ `InvalidInputException`
+ `EntityNotFoundException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `AccessDeniedException`
+ `EntityNotFoundException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## GetCatalogs 動作 (Python：get\$1catalogs)
<a name="aws-glue-api-catalog-catalogs-GetCatalogs"></a>

擷取 AWS Glue Data Catalog 中目錄中定義的所有目錄。對於 Redshift 聯合目錄使用案例，此操作會傳回映射至 Redshift 命名空間目錄中 Redshift 資料庫的目錄清單。

**請求**
+ `ParentCatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  目錄所在父目錄的 ID。如果未提供，預設會使用 AWS 帳戶號碼。
+ `NextToken` – UTF-8 字串。

  接續符記，如果這是接續呼叫。
+ `MaxResults` – 數字 (整數)，不可小於 1，也不可以大於 1000。

  一次回應傳回目錄的數目上限。
+ `Recursive` – 布林值。

  是否要列出目錄階層中的所有目錄，從 `ParentCatalogId` 開始。預設為 `false`。當 `true` 時，`ParentCatalogID` 階層中的所有目錄物件都會在回應中列舉。
+ `IncludeRoot` – 布林值。

  是否要在回應中列出帳戶和區域中的預設目錄。預設為 `false`。當 `true` 和 `ParentCatalogId = NULL | AWS Account ID` 時，所有目錄和預設目錄都會在回應中列舉。

  當 `ParentCatalogId` 不等於 null，且此屬性以 `false` 或 `true` 傳遞時，系統會擲回 `InvalidInputException`。

**回應**
+ `CatalogList` – *必要：*一個 [目錄](#aws-glue-api-catalog-catalogs-Catalog) 物件。

  `Catalog` 物件的陣列。所指定父目錄中的 `Catalog` 物件清單。
+ `NextToken` – UTF-8 字串。

  為一種接續符記，用於將傳回的符記清單分頁，而如果清單目前的區段不是最後區段就會傳回。

**錯誤**
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `AccessDeniedException`
+ `EntityNotFoundException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

# 資料庫 API
<a name="aws-glue-api-catalog-databases"></a>

Database API 說明資料庫資料類型，以及用於建立、刪除、尋找、更新和列出資料庫的 API。

## 資料類型
<a name="aws-glue-api-catalog-databases-objects"></a>
+ [Database 結構](#aws-glue-api-catalog-databases-Database)
+ [DatabaseInput 結構](#aws-glue-api-catalog-databases-DatabaseInput)
+ [PrincipalPermissions 結構](#aws-glue-api-catalog-databases-PrincipalPermissions)
+ [DataLakePrincipal 結構](#aws-glue-api-catalog-databases-DataLakePrincipal)
+ [DatabaseIdentifier 結構](#aws-glue-api-catalog-databases-DatabaseIdentifier)
+ [FederatedDatabase 結構](#aws-glue-api-catalog-databases-FederatedDatabase)

## Database 結構
<a name="aws-glue-api-catalog-databases-Database"></a>

`Database` 物件代表了資料表的邏輯分組，這可能存放於 Hive 中繼存放區或 RDBMS。

**欄位**
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料庫的名稱。為了相容於 Hive，它在存放時會折疊為小寫。
+ `Description` – 描述字串，長度不可超過 2048 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  資料庫的描述。
+ `LocationUri` – 統一資源識別符 (uri)，長度不可小於 1 個位元組，也不可以超過 1024 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  資料庫的位置 (例如 HDFS 路徑)。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  這些金鑰值對會定義資料庫的參數和屬性。
+ `CreateTime` – 時間戳記。

  中繼資料資料庫在目錄中建立的時間。
+ `CreateTableDefaultPermissions` – 一個 [PrincipalPermissions](#aws-glue-api-catalog-databases-PrincipalPermissions) 物件陣列。

  為主體在資料表上建立一組預設許可。使用者 AWS Lake Formation。在正常 AWS Glue 的操作過程中不使用。
+ `TargetDatabase` – [DatabaseIdentifier](#aws-glue-api-catalog-databases-DatabaseIdentifier) 物件。

  描述資源連結的目標資料庫的 `DatabaseIdentifier` 結構。
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料庫存放所在 Data Catalog 的 ID。
+ `FederatedDatabase` – [FederatedDatabase](#aws-glue-api-catalog-databases-FederatedDatabase) 物件。

  參照 AWS Glue Data Catalog外部實體的 `FederatedDatabase` 結構。

## DatabaseInput 結構
<a name="aws-glue-api-catalog-databases-DatabaseInput"></a>

用於建立或更新資料庫的結構。

**欄位**
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料庫的名稱。為了相容於 Hive，它在存放時會折疊為小寫。
+ `Description` – 描述字串，長度不可超過 2048 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  資料庫的描述。
+ `LocationUri` – 統一資源識別符 (uri)，長度不可小於 1 個位元組，也不可以超過 1024 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  資料庫的位置 (例如 HDFS 路徑)。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  這些金鑰值對會定義資料庫的參數和屬性。

  這些金鑰值對會定義資料庫的參數和屬性。
+ `CreateTableDefaultPermissions` – 一個 [PrincipalPermissions](#aws-glue-api-catalog-databases-PrincipalPermissions) 物件陣列。

  為主體在資料表上建立一組預設許可。使用者 AWS Lake Formation。在正常 AWS Glue 的操作過程中不使用。
+ `TargetDatabase` – [DatabaseIdentifier](#aws-glue-api-catalog-databases-DatabaseIdentifier) 物件。

  描述資源連結的目標資料庫的 `DatabaseIdentifier` 結構。
+ `FederatedDatabase` – [FederatedDatabase](#aws-glue-api-catalog-databases-FederatedDatabase) 物件。

  參照 AWS Glue Data Catalog外部實體的 `FederatedDatabase` 結構。

## PrincipalPermissions 結構
<a name="aws-glue-api-catalog-databases-PrincipalPermissions"></a>

授予委託人的許可。

**欄位**
+ `Principal` – [DataLakePrincipal](#aws-glue-api-catalog-databases-DataLakePrincipal) 物件。

  獲授予許可的主體。
+ `Permissions` – UTF-8 字串陣列。

  授予主體的許可。

## DataLakePrincipal 結構
<a name="aws-glue-api-catalog-databases-DataLakePrincipal"></a>

 AWS Lake Formation 委託人。

**欄位**
+ `DataLakePrincipalIdentifier` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組。

   AWS Lake Formation 主體的識別符。

## DatabaseIdentifier 結構
<a name="aws-glue-api-catalog-databases-DatabaseIdentifier"></a>

描述資源連結的目標資料庫的結構。

**欄位**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料庫存放所在 Data Catalog 的 ID。
+ `DatabaseName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  目錄資料庫的名稱。
+ `Region` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  目標資料庫的區域。

## FederatedDatabase 結構
<a name="aws-glue-api-catalog-databases-FederatedDatabase"></a>

指向 AWS Glue Data Catalog外部實體的資料庫。

**欄位**
+ `Identifier` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 512 個位元組，且需符合 [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  聯合資料庫的唯一識別碼。
+ `ConnectionName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線到外部中繼存放區的名稱。
+ `ConnectionType` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於存取聯合資料庫的連線類型，例如 JDBC、ODBC 或其他支援的連線協定。

## 作業
<a name="aws-glue-api-catalog-databases-actions"></a>
+ [CreateDatabase 動作 (Python: create\$1database)](#aws-glue-api-catalog-databases-CreateDatabase)
+ [UpdateDatabase 動作 (Python: update\$1database)](#aws-glue-api-catalog-databases-UpdateDatabase)
+ [DeleteDatabase 動作 (Python: delete\$1database)](#aws-glue-api-catalog-databases-DeleteDatabase)
+ [GetDatabase 動作 (Python: get\$1database)](#aws-glue-api-catalog-databases-GetDatabase)
+ [GetDatabases 動作 (Python: get\$1databases)](#aws-glue-api-catalog-databases-GetDatabases)

## CreateDatabase 動作 (Python: create\$1database)
<a name="aws-glue-api-catalog-databases-CreateDatabase"></a>

在 Data Catalog 建立新的資料庫。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於建立資料庫的 Data Catalog 之 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseInput` – *必要：*[DatabaseInput](#aws-glue-api-catalog-databases-DatabaseInput) 物件。

  資料庫的中繼資料。
+ `Tags` – 金鑰值對的映射陣列，不超過 50 對。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 UTF-8 字串，長度不可超過 256 個位元組。

  指派給資料庫的標籤。

**回應**
+ *無回應參數。*

**錯誤**
+ `InvalidInputException`
+ `AlreadyExistsException`
+ `ResourceNumberLimitExceededException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `ConcurrentModificationException`
+ `FederatedResourceAlreadyExistsException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## UpdateDatabase 動作 (Python: update\$1database)
<a name="aws-glue-api-catalog-databases-UpdateDatabase"></a>

更新 Data Catalog 中現有的資料庫定義。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  存放中繼資料資料庫的 Data Catalog 之 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  目錄中要更新的資料庫之名稱。為了相容於 Hive，名稱必須轉換為小寫。
+ `DatabaseInput` – *必要：*[DatabaseInput](#aws-glue-api-catalog-databases-DatabaseInput) 物件。

  `DatabaseInput` 物件，可為目錄裡的中繼資料資料庫指定新定義。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `ConcurrentModificationException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`
+ `AlreadyExistsException`

## DeleteDatabase 動作 (Python: delete\$1database)
<a name="aws-glue-api-catalog-databases-DeleteDatabase"></a>

從 Data Catalog 移除指定的資料庫。

**注意**  
完成此操作後，您將無法再存取已刪除資料庫中的資料表 （以及可能屬於資料表的所有資料表版本和分割區） 和使用者定義的函數。 會由服務自行決定，以非同步方式及時 AWS Glue 刪除這些「孤立」資源。  
若要確保能夠立即刪除所有相關資源，請在呼叫 `DeleteDatabase` 之前，先使用 `DeleteTableVersion` 或 `BatchDeleteTableVersion`、`DeletePartition` 或 `BatchDeletePartition`、`DeleteUserDefinedFunction`，以及 `DeleteTable` 或 `BatchDeleteTable`，來刪除任何屬於資料庫的資源。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料庫存放所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要刪除的資料庫之名稱。為了相容於 Hive，此項目必須完全使用小寫。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `ConcurrentModificationException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## GetDatabase 動作 (Python: get\$1database)
<a name="aws-glue-api-catalog-databases-GetDatabase"></a>

擷取指定資料庫的定義。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料庫存放所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要擷取的資料庫之名稱。為了相容於 Hive，名稱應完全小寫。

**回應**
+ `Database` – [資料庫](#aws-glue-api-catalog-databases-Database) 物件。

  Data Catalog 中所指定資料庫的定義。

**錯誤**
+ `InvalidInputException`
+ `EntityNotFoundException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## GetDatabases 動作 (Python: get\$1databases)
<a name="aws-glue-api-catalog-databases-GetDatabases"></a>

擷取特定 Data Catalog 中所有已定義的資料庫。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於擷取 `Databases` 的 Data Catalog 之 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `NextToken` – UTF-8 字串。

  接續符記，如果這是接續呼叫。
+ `MaxResults` – 數字 (整數)，不可小於 1，也不可以大於 100。

  一次回應傳回資料庫的最大數量。
+ `ResourceShareType` – UTF-8 字串 (有效值：`FOREIGN` \$1 `ALL` \$1 `FEDERATED`)。

  可讓您指定要列出與帳戶共用的資料庫。允許的值為 `FEDERATED`、`FOREIGN` 或 `ALL`。
  + 如果設定為 `FEDERATED`，會列出與您的帳戶共用的聯合資料庫 (參照外部實體)。
  + 如果設定為 `FOREIGN`，會列出與您的帳戶共用的資料庫。
  + 如果設定為 `ALL`，將列出與您的帳戶共享的資料庫，以及您本機帳戶中的資料庫。
+ `AttributesToGet` – UTF-8 字串陣列。

  指定 `GetDatabases` 呼叫傳回的資料庫欄位。此參數不接受空白清單。請求必須包含 `NAME`。

**回應**
+ `DatabaseList` – *必要：*一個 [資料庫](#aws-glue-api-catalog-databases-Database) 物件。

  指定目錄中的 `Database` 物件清單。
+ `NextToken` – UTF-8 字串。

  為一種接續符記，用於將傳回的符記清單分頁，而如果清單目前的區段不是最後區段就會傳回。

**錯誤**
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `EntityNotFoundException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

# 資料表 API
<a name="aws-glue-api-catalog-tables"></a>

Table API 說明與資料表相關的資料類型和操作。

## 資料類型
<a name="aws-glue-api-catalog-tables-objects"></a>
+ [Table 結構](#aws-glue-api-catalog-tables-Table)
+ [TableInput 結構](#aws-glue-api-catalog-tables-TableInput)
+ [FederatedTable 結構](#aws-glue-api-catalog-tables-FederatedTable)
+ [欄結構](#aws-glue-api-catalog-tables-Column)
+ [StorageDescriptor 結構](#aws-glue-api-catalog-tables-StorageDescriptor)
+ [SchemaReference 結構](#aws-glue-api-catalog-tables-SchemaReference)
+ [SerDeInfo 結構](#aws-glue-api-catalog-tables-SerDeInfo)
+ [Order 結構](#aws-glue-api-catalog-tables-Order)
+ [SkewedInfo 結構](#aws-glue-api-catalog-tables-SkewedInfo)
+ [TableVersion 結構](#aws-glue-api-catalog-tables-TableVersion)
+ [TableError 結構](#aws-glue-api-catalog-tables-TableError)
+ [TableVersionError 結構](#aws-glue-api-catalog-tables-TableVersionError)
+ [SortCriterion 結構](#aws-glue-api-catalog-tables-SortCriterion)
+ [TableIdentifier 結構](#aws-glue-api-catalog-tables-TableIdentifier)
+ [KeySchemaElement 結構](#aws-glue-api-catalog-tables-KeySchemaElement)
+ [PartitionIndex 結構](#aws-glue-api-catalog-tables-PartitionIndex)
+ [PartitionIndexDescriptor 結構](#aws-glue-api-catalog-tables-PartitionIndexDescriptor)
+ [BackfillError 結構](#aws-glue-api-catalog-tables-BackfillError)
+ [IcebergInput 結構](#aws-glue-api-catalog-tables-IcebergInput)
+ [OpenTableFormatInput 結構](#aws-glue-api-catalog-tables-OpenTableFormatInput)
+ [ViewDefinition 結構](#aws-glue-api-catalog-tables-ViewDefinition)
+ [ViewDefinitionInput 結構](#aws-glue-api-catalog-tables-ViewDefinitionInput)
+ [ViewRepresentation 結構](#aws-glue-api-catalog-tables-ViewRepresentation)
+ [ViewRepresentationInput 結構](#aws-glue-api-catalog-tables-ViewRepresentationInput)
+ [UpdateOpenTableFormatInput 結構](#aws-glue-api-catalog-tables-UpdateOpenTableFormatInput)
+ [UpdateIcebergInput 結構](#aws-glue-api-catalog-tables-UpdateIcebergInput)
+ [CreateIcebergTableInput 結構](#aws-glue-api-catalog-tables-CreateIcebergTableInput)
+ [UpdateIcebergTableInput 結構](#aws-glue-api-catalog-tables-UpdateIcebergTableInput)
+ [IcebergSortOrder 結構](#aws-glue-api-catalog-tables-IcebergSortOrder)
+ [IcebergSortField 結構](#aws-glue-api-catalog-tables-IcebergSortField)
+ [IcebergPartitionSpec 結構](#aws-glue-api-catalog-tables-IcebergPartitionSpec)
+ [IcebergPartitionField 結構](#aws-glue-api-catalog-tables-IcebergPartitionField)
+ [IcebergSchema 結構](#aws-glue-api-catalog-tables-IcebergSchema)
+ [IcebergStructField 結構](#aws-glue-api-catalog-tables-IcebergStructField)
+ [IcebergTableUpdate 結構](#aws-glue-api-catalog-tables-IcebergTableUpdate)
+ [AuditContext 結構](#aws-glue-api-catalog-tables-AuditContext)

## Table 結構
<a name="aws-glue-api-catalog-tables-Table"></a>

表示整理為欄和列的相關資料的集合。

**欄位**
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表名稱。為了相容於 Hive，這必須完全小寫。
+ `DatabaseName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表中繼資料所在的資料庫名稱。為了相容於 Hive，此項目必須完全使用小寫。
+ `Description` – 描述字串，長度不可超過 2048 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  資料表的說明。
+ `Owner` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表的擁有者。
+ `CreateTime` – 時間戳記。

  在 Data Catalog 中建立資料表定義的時間。
+ `UpdateTime` – 時間戳記。

  資料表上次更新的時間。
+ `LastAccessTime` – 時間戳記。

  資料表上次存取的時間。這通常取自 HDFS，而且可能不可靠。
+ `LastAnalyzedTime` – 時間戳記。

  此資料表上次運算欄位統計的時間。
+ `Retention` – 數字 (整數)，不可大於 None (無)。

  此資料表的保留時間。
+ `StorageDescriptor` – [StorageDescriptor](aws-glue-api-catalog-partitions.md#aws-glue-api-catalog-partitions-StorageDescriptor) 物件。

  儲存描述項包含有關此資料表實體儲存的資訊。
+ `PartitionKeys` – 一個 [資料行](#aws-glue-api-catalog-tables-Column) 物件陣列。

  資料表進行分區的欄位清單。僅支援基本類型做為分割區索引鍵。

  在建立 Amazon Athena 使用的資料表，且您未指定任何 `partitionKeys` 時，您必須在空白清單設定 `partitionKeys` 值。例如：

  `"PartitionKeys": []`
+ `ViewOriginalText` – UTF-8 字串，長度不可超過 409600 個位元組。

  包括以取得 Apache Hive 相容性。在正常 AWS Glue 的操作過程中不使用。如果資料表是 `VIRTUAL_VIEW`，則會以 base64 編碼特定 Athena 組態。
+ `ViewExpandedText` – UTF-8 字串，長度不可超過 409600 個位元組。

  包括以取得 Apache Hive 相容性。在正常 AWS Glue 的操作過程中不使用。
+ `TableType` – UTF-8 字串，長度不可超過 255 個位元組。

  此資料表的類型。 AWS Glue 將使用 `EXTERNAL_TABLE`類型建立資料表。其他 服務，例如 Athena， 可能會建立具有其他資料表類型的資料表。

  AWS Glue 相關資料表類型：  
EXTERNAL\$1TABLE  
Hive 相容屬性 – 表示非 Hive 受管的資料表。  
GOVERNED  
使用者 AWS Lake Formation。 AWS Glue Data Catalog 了解 `GOVERNED`。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  這些金鑰值對會定義與此資料表相關聯的屬性。
+ `CreatedBy` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  建立此資料表的人員或實體。
+ `IsRegisteredWithLakeFormation` – 布林值。

  指出資料表是否已向 註冊 AWS Lake Formation。
+ `TargetTable` – [TableIdentifier](#aws-glue-api-catalog-tables-TableIdentifier) 物件。

  描述資源連結的目標資料表的 `TableIdentifier` 結構。
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表存放所在 Data Catalog 的 ID。
+ `VersionId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表版本的 ID。
+ `FederatedTable` – [FederatedTable](#aws-glue-api-catalog-tables-FederatedTable) 物件。

  參照 AWS Glue Data Catalog外部實體的 `FederatedTable` 結構。
+ `ViewDefinition` – [ViewDefinition](#aws-glue-api-catalog-tables-ViewDefinition) 物件。

  包含定義檢視的所有資訊的結構，包括檢視的方言及查詢。
+ `IsMultiDialectView` – 布林值。

  指定檢視是否支援一個或多個不同查詢引擎的 SQL 方言，因此可被這些引擎讀取。

## TableInput 結構
<a name="aws-glue-api-catalog-tables-TableInput"></a>

用於定義資料表的結構。

**欄位**
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表名稱。為了相容於 Hive，它在存放時會折疊為小寫。
+ `Description` – 描述字串，長度不可超過 2048 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  資料表的說明。
+ `Owner` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表的擁有者。包括以取得 Apache Hive 相容性。在正常 AWS Glue 的操作過程中不使用。
+ `LastAccessTime` – 時間戳記。

  資料表上次存取的時間。
+ `LastAnalyzedTime` – 時間戳記。

  此資料表上次運算欄位統計的時間。
+ `Retention` – 數字 (整數)，不可大於 None (無)。

  此資料表的保留時間。
+ `StorageDescriptor` – [StorageDescriptor](aws-glue-api-catalog-partitions.md#aws-glue-api-catalog-partitions-StorageDescriptor) 物件。

  儲存描述項包含有關此資料表實體儲存的資訊。
+ `PartitionKeys` – 一個 [資料行](#aws-glue-api-catalog-tables-Column) 物件陣列。

  資料表進行分區的欄位清單。僅支援基本類型做為分割區索引鍵。

  在建立 Amazon Athena 使用的資料表，且您未指定任何 `partitionKeys` 時，您必須在空白清單設定 `partitionKeys` 值。例如：

  `"PartitionKeys": []`
+ `ViewOriginalText` – UTF-8 字串，長度不可超過 409600 個位元組。

  包括以取得 Apache Hive 相容性。在正常 AWS Glue 的操作過程中不使用。如果資料表是 `VIRTUAL_VIEW`，則會以 base64 編碼特定 Athena 組態。
+ `ViewExpandedText` – UTF-8 字串，長度不可超過 409600 個位元組。

  包括以取得 Apache Hive 相容性。在正常 AWS Glue 的操作過程中不使用。
+ `TableType` – UTF-8 字串，長度不可超過 255 個位元組。

  此資料表的類型。 AWS Glue 將使用 `EXTERNAL_TABLE`類型建立資料表。其他 服務，例如 Athena， 可能會建立具有其他資料表類型的資料表。

  AWS Glue 相關資料表類型：  
EXTERNAL\$1TABLE  
Hive 相容屬性 – 表示非 Hive 受管的資料表。  
GOVERNED  
使用者 AWS Lake Formation。 AWS Glue Data Catalog 了解 `GOVERNED`。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  這些金鑰值對會定義與此資料表相關聯的屬性。
+ `TargetTable` – [TableIdentifier](#aws-glue-api-catalog-tables-TableIdentifier) 物件。

  描述資源連結的目標資料表的 `TableIdentifier` 結構。
+ `ViewDefinition` – [ViewDefinitionInput](#aws-glue-api-catalog-tables-ViewDefinitionInput) 物件。

  包含定義檢視的所有資訊的結構，包括檢視的方言及查詢。

## FederatedTable 結構
<a name="aws-glue-api-catalog-tables-FederatedTable"></a>

指向 AWS Glue Data Catalog外部實體的資料表。

**欄位**
+ `Identifier` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 512 個位元組，且需符合 [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  聯合資料表的唯一識別碼。
+ `DatabaseIdentifier` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 512 個位元組，且需符合 [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  聯合資料庫的唯一識別碼。
+ `ConnectionName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線到外部中繼存放區的名稱。
+ `ConnectionType` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於存取聯合資料表的連線類型，指定連線至外部資料來源的協定或方法。

## 欄結構
<a name="aws-glue-api-catalog-tables-Column"></a>

`Table` 中的欄位。

**欄位**
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  `Column` 的名稱。
+ `Type` – UTF-8 字串，長度不可超過 131072 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  `Column` 的資料類型。
+ `Comment` – 註解字串，長度不可超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  自由格式的文字註解。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  這些金鑰值對會定義與此資料行相關聯的屬性。

## StorageDescriptor 結構
<a name="aws-glue-api-catalog-tables-StorageDescriptor"></a>

描述資料表資料的實體儲存。

**欄位**
+ `Columns` – 一個 [資料行](#aws-glue-api-catalog-tables-Column) 物件陣列。

  資料表中的 `Columns` 的清單。
+ `Location` – 位置字串，長度不可超過 2056 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  資料表的實體位置。依預設，它採用倉儲位置的形式，後面接著是資料庫在倉儲中的位置，最後是資料表名稱。
+ `AdditionalLocations` – UTF-8 字串陣列。

  指向 Delta 資料表所在路徑的位置清單。
+ `InputFormat` – 格式字串，長度不可超過 128 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  輸入格式：`SequenceFileInputFormat` (二進位)，或者 `TextInputFormat`，或自訂格式。
+ `OutputFormat` – 格式字串，長度不可超過 128 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  輸出格式：`SequenceFileOutputFormat` (二進位)，或者 `IgnoreKeyTextOutputFormat`，或自訂格式。
+ `Compressed` – 布林值。

  如果資料表中的資料都經過壓縮則為 `True`，否則為 `False`
+ `NumberOfBuckets` – 數字 (整數)。

  如果資料表包含任何維度欄位，將必須指定。
+ `SerdeInfo` – [SerDeInfo](aws-glue-api-catalog-partitions.md#aws-glue-api-catalog-partitions-SerDeInfo) 物件。

  序列化/還原序列化 (SerDe) 資訊。
+ `BucketColumns` – UTF-8 字串陣列。

  資料表中的縮減器分組欄位、叢集欄位及值區欄位的清單。
+ `SortColumns` – 一個 [順序](#aws-glue-api-catalog-tables-Order) 物件陣列。

  指定資料表中各個儲存貯體排序順序的清單。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  使用者提供的屬性，格式為金鑰/值。
+ `SkewedInfo` – [SkewedInfo](aws-glue-api-catalog-partitions.md#aws-glue-api-catalog-partitions-SkewedInfo) 物件。

  關於欄位中頻繁出現值的資訊 (偏斜值)。
+ `StoredAsSubDirectories` – 布林值。

  如果資料表資料存放於子目錄則為 `True`，否則為 `False`
+ `SchemaReference` – [SchemaReference](aws-glue-api-catalog-partitions.md#aws-glue-api-catalog-partitions-SchemaReference) 物件。

  參考存放在結構描述登錄檔中的 AWS Glue 結構描述的物件。

  建立資料表時，您可以傳遞結構描述欄的空白清單，並改用結構描述參考。

## SchemaReference 結構
<a name="aws-glue-api-catalog-tables-SchemaReference"></a>

參考存放在結構描述登錄檔中的 AWS Glue 結構描述的物件。

**欄位**
+ `SchemaId` – [SchemaId](aws-glue-api-schema-registry-api.md#aws-glue-api-schema-registry-api-SchemaId) 物件。

  包含結構描述身分欄位的結構。必須提供此結構或 `SchemaVersionId`。
+ `SchemaVersionId` – UTF-8 字串，長度不可小於 36 個位元組，也不可以超過 36 個位元組，且需符合 [Custom string pattern #45](aws-glue-api-common.md#regex_45)。

  指派給結構描述版本的唯一 ID。必須提供此結構或 `SchemaId`。
+ `SchemaVersionNumber` – 數字 (長整數)，不可小於 1，也不可以大於 100000。

  結構描述的版本編號。

## SerDeInfo 結構
<a name="aws-glue-api-catalog-tables-SerDeInfo"></a>

關於做為擷取器和載入器的序列化/還原序列化程式 (SerDe) 的資訊。

**欄位**
+ `Name` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  SerDe 的名稱。
+ `SerializationLibrary` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  通常是實作 SerDe 的類別。例如，`org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe`。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  這些金鑰值對會定義 SerDe 的初始化參數。

## Order 結構
<a name="aws-glue-api-catalog-tables-Order"></a>

指定已排序欄位的排序順序。

**欄位**
+ `Column` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  欄位的名稱。
+ `SortOrder` – *必要：*數字 (整數)，不可大於 1。

  指示欄位以遞增順序 (`== 1`) 或以遞減順序 (`==0`) 排序。

## SkewedInfo 結構
<a name="aws-glue-api-catalog-tables-SkewedInfo"></a>

指定資料表中的偏斜值。偏斜值是指頻率發生非常高的值。

**欄位**
+ `SkewedColumnNames` – UTF-8 字串陣列。

  包含偏斜值的欄位名稱清單。
+ `SkewedColumnValues` – UTF-8 字串陣列。

  頻繁出現而被視為偏斜的值的清單。
+ `SkewedColumnValueLocationMaps` – 金鑰值對的映射陣列。

  每個金鑰都是 UTF-8 字串。

  每個值都是 UTF-8 字串。

  偏斜值與包含這些值的欄位的映射。

## TableVersion 結構
<a name="aws-glue-api-catalog-tables-TableVersion"></a>

指定資料表的版本。

**欄位**
+ `Table` – [資料表](#aws-glue-api-catalog-tables-Table) 物件。

  有問題的資料表。
+ `VersionId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於識別此資料表版本的 ID 值。`VersionId` 是一個整數的表示字串。每個版本會增加 1。

## TableError 結構
<a name="aws-glue-api-catalog-tables-TableError"></a>

資料表操作的錯誤記錄。

**欄位**
+ `TableName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表的名稱。為了相容於 Hive，這必須完全小寫。
+ `ErrorDetail` – [ErrorDetail](aws-glue-api-common.md#aws-glue-api-common-ErrorDetail) 物件。

  關於錯誤的詳細資訊。

## TableVersionError 結構
<a name="aws-glue-api-catalog-tables-TableVersionError"></a>

資料表版本操作的錯誤記錄。

**欄位**
+ `TableName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題的資料表的名稱。
+ `VersionId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題的版本的 ID 值。`VersionID` 是一個整數的表示字串。每個版本會增加 1。
+ `ErrorDetail` – [ErrorDetail](aws-glue-api-common.md#aws-glue-api-common-ErrorDetail) 物件。

  關於錯誤的詳細資訊。

## SortCriterion 結構
<a name="aws-glue-api-catalog-tables-SortCriterion"></a>

指定欄位排序的依據和排序順序。

**欄位**
+ `FieldName` – 值字串，長度不可小於 1 個位元組，也不可以超過 1,024 個位元組。

  要排序的欄位名稱。
+ `Sort` – UTF-8 字串 (有效值：`ASC="ASCENDING"` \$1`DESC="DESCENDING"`)。

  遞增或遞減排序。

## TableIdentifier 結構
<a name="aws-glue-api-catalog-tables-TableIdentifier"></a>

描述資源連結的目標資料表的結構。

**欄位**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表存放所在 Data Catalog 的 ID。
+ `DatabaseName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  包含目標資料表的目錄資料庫名稱。
+ `Name` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  目標資料表的名稱。
+ `Region` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  目標資料表的區域。

## KeySchemaElement 結構
<a name="aws-glue-api-catalog-tables-KeySchemaElement"></a>

由名稱和類型組成的分割區索引鍵對。

**欄位**
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分割區索引鍵的名稱。
+ `Type` – *必要：*UTF-8 字串，長度不可超過 131072 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分割區索引鍵的類型。

## PartitionIndex 結構
<a name="aws-glue-api-catalog-tables-PartitionIndex"></a>

分割區索引的結構。

**欄位**
+ `Keys` – *必要：*UTF-8 字串的陣列，至少要有 1 個字串。

  分割區索引的索引鍵。
+ `IndexName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分割區索引的名稱。

## PartitionIndexDescriptor 結構
<a name="aws-glue-api-catalog-tables-PartitionIndexDescriptor"></a>

資料表中分割區索引的描述元。

**欄位**
+ `IndexName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分割區索引的名稱。
+ `Keys`–*必要：*[KeySchemaElement](#aws-glue-api-catalog-tables-KeySchemaElement) 物件陣列，至少有 1 個結構。

  分割區索引的一或多個索引鍵的清單，作為 `KeySchemaElement` 結構。
+ `IndexStatus` – *必要：*UTF-8 字串 (有效值：`CREATING` \$1 `ACTIVE` \$1 `DELETING` \$1 `FAILED`)。

  分割區索引的狀態。

  可能的狀態如下：
  + CREATING：正在建立索引。當索引處於 CREATING (正在建立) 狀態時，索引或其資料表無法刪除。
  + ACTIVE：索引建立成功。
  + FAILED：索引建立失敗。
  + DELETING：索引會從索引清單中刪除。
+ `BackfillErrors` – 一個 [BackfillError](#aws-glue-api-catalog-tables-BackfillError) 物件陣列。

  註冊現有資料表的分割區索引時可能發生的錯誤清單。

## BackfillError 結構
<a name="aws-glue-api-catalog-tables-BackfillError"></a>

註冊現有資料表的分割區索引時可能發生的錯誤清單。

這些錯誤提供索引註冊失敗原因的詳細資訊，並在回應中提供有限數目的分割區，讓您可以修正錯誤的分割區，然後再次嘗試註冊索引。可能發生的最常見的錯誤集分類如下：
+ EncryptedPartitionError：分割區已加密。
+ InvalidPartitionTypeDataError：分割區值不符合該分割區欄的資料類型。
+ MissingPartitionValueError：分割區已加密。
+ UnsupportedPartitionCharacterError：不支援分割區值內的字元。例如：U\$10000、U\$10001、U\$10002。
+ InternalError：不屬於其他錯誤碼的任何錯誤。

**欄位**
+ `Code` – UTF-8 字串 (有效值：`ENCRYPTED_PARTITION_ERROR` \$1 `INTERNAL_ERROR` \$1 `INVALID_PARTITION_TYPE_DATA_ERROR` \$1 `MISSING_PARTITION_VALUE_ERROR` \$1 `UNSUPPORTED_PARTITION_CHARACTER_ERROR`)。

  註冊現有資料表的分割區索引時發生的錯誤碼。
+ `Partitions` – 一個 [PartitionValueList](aws-glue-api-catalog-partitions.md#aws-glue-api-catalog-partitions-PartitionValueList) 物件陣列。

  回應中有限數量的分割區索引鍵清單。

## IcebergInput 結構
<a name="aws-glue-api-catalog-tables-IcebergInput"></a>

定義要在目錄中建立的 Apache Iceberg 中繼資料資料表的結構。

**欄位**
+ `MetadataOperation` – *必要：*UTF-8 字串 (有效值：`CREATE`)。

  所需的中繼資料操作。只能設定為 `CREATE`。
+ `Version` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  Iceberg 資料表的資料表版本。預設值為 2。
+ `CreateIcebergTableInput` – [CreateIcebergTableInput](#aws-glue-api-catalog-tables-CreateIcebergTableInput) 物件。

  在 AWS Glue Data Catalog 中建立新的 Iceberg 資料表所需的組態參數，包括資料表屬性和中繼資料規格。

## OpenTableFormatInput 結構
<a name="aws-glue-api-catalog-tables-OpenTableFormatInput"></a>

表示開放格式資料表的結構。

**欄位**
+ `IcebergInput` – [IcebergInput](#aws-glue-api-catalog-tables-IcebergInput) 物件。

  指定定義 Apache Iceberg 中繼資料資料表的 `IcebergInput` 結構。

## ViewDefinition 結構
<a name="aws-glue-api-catalog-tables-ViewDefinition"></a>

包含表示法詳細資訊的結構。

**欄位**
+ `IsProtected` – 布林值。

  您可以將此旗標設定為 true，指示引擎不要在查詢規劃期間將使用者提供的操作推送至檢視的邏輯計畫。但是，設定此旗標並不保證引擎會合規。如果有的話，請參閱引擎的文件以了解提供的保證。
+ `Definer` – UTF-8 字串，長度不可小於 20 個位元組，也不可以超過 2048 個位元組，且需符合 [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  SQL 中檢視的定義程式。
+ `SubObjects` – UTF-8 字串的陣列，不可超過 10 個字串。

  資料表 Amazon Resource Name (ARN) 的清單。
+ `Representations` – [ViewRepresentation](#aws-glue-api-catalog-tables-ViewRepresentation) 物件陣列，不小於 1 個結構，也不大於 1000 個結構。

  表示法清單。

## ViewDefinitionInput 結構
<a name="aws-glue-api-catalog-tables-ViewDefinitionInput"></a>

包含建立或更新 AWS Glue 檢視之詳細資訊的結構。

**欄位**
+ `IsProtected` – 布林值。

  您可以將此旗標設定為 true，指示引擎不要在查詢規劃期間將使用者提供的操作推送至檢視的邏輯計畫。但是，設定此旗標並不保證引擎會合規。如果有的話，請參閱引擎的文件以了解提供的保證。
+ `Definer` – UTF-8 字串，長度不可小於 20 個位元組，也不可以超過 2048 個位元組，且需符合 [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  SQL 中檢視的定義程式。
+ `Representations` – [ViewRepresentationInput](#aws-glue-api-catalog-tables-ViewRepresentationInput) 物件陣列，不可小於 1 個或超過 10 個結構。

  包含檢視方言的結構清單，以及定義檢視的查詢。
+ `SubObjects` – UTF-8 字串的陣列，不可超過 10 個字串。

  構成檢視的基本資料表 ARN 清單。

## ViewRepresentation 結構
<a name="aws-glue-api-catalog-tables-ViewRepresentation"></a>

包含檢視方言的結構，及定義檢視的查詢。

**欄位**
+ `Dialect` – UTF-8 字串 (有效值：`REDSHIFT` \$1 `ATHENA` \$1 `SPARK`)。

  查詢引擎的方言。
+ `DialectVersion` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組。

  查詢引擎的方言版本。例如，3.0.0。
+ `ViewOriginalText` – UTF-8 字串，長度不可超過 409600 個位元組。

  客戶在 `CREATE VIEW DDL` 期間提供的 `SELECT` 查詢。在檢視查詢期間不會使用此 SQL (而是使用 `ViewExpandedText`)。`ViewOriginalText` 用於使用者想要查看建立檢視的原始 DDL 命令的情況 (如 `SHOW CREATE VIEW`)。
+ `ViewExpandedText` – UTF-8 字串，長度不可超過 409600 個位元組。

  檢視的擴展 SQL。引擎在檢視上處理查詢時使用此 SQL。引擎可能會在建立檢視期間執行操作，以將 `ViewOriginalText` 轉換為 `ViewExpandedText`。例如：
  + 完整識別碼：`SELECT * from table1 -> SELECT * from db1.table1`
+ `ValidationConnection` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於驗證檢視特定表示法的連線名稱。
+ `IsStale` – 布林值。

  標記為過時的方言不再有效，必須先更新，然後才能在各自的查詢引擎中查詢。

## ViewRepresentationInput 結構
<a name="aws-glue-api-catalog-tables-ViewRepresentationInput"></a>

包含要更新或建立 Lake Formation 檢視的表示法詳細資訊的結構。

**欄位**
+ `Dialect` – UTF-8 字串 (有效值：`REDSHIFT` \$1 `ATHENA` \$1 `SPARK`)。

  指定特定表示法的引擎類型的參數。
+ `DialectVersion` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組。

  指定特定表示法的引擎版本的參數。
+ `ViewOriginalText` – UTF-8 字串，長度不可超過 409600 個位元組。

  代表描述檢視的原始 SQL 查詢的字串。
+ `ValidationConnection` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於驗證檢視特定表示法的連線名稱。
+ `ViewExpandedText` – UTF-8 字串，長度不可超過 409600 個位元組。

  代表 SQL 查詢的字串，用於描述具有擴展資源 ARN 的檢視

## UpdateOpenTableFormatInput 結構
<a name="aws-glue-api-catalog-tables-UpdateOpenTableFormatInput"></a>

用於更新 AWS Glue Data Catalog 中開放資料表格式資料表的輸入參數，做為格式特定更新操作的包裝函式，例如 Apache Iceberg。

**欄位**
+ `UpdateIcebergInput` – [UpdateIcebergInput](#aws-glue-api-catalog-tables-UpdateIcebergInput) 物件。

  定義要套用的資料表修改的 Apache Iceberg 特定更新參數，包括結構描述變更、分區規格和資料表屬性。

## UpdateIcebergInput 結構
<a name="aws-glue-api-catalog-tables-UpdateIcebergInput"></a>

用於更新 AWS Glue Data Catalog 中 Apache Iceberg 資料表的輸入參數，其中包含要套用至現有 Iceberg 資料表的更新操作。

**欄位**
+ `UpdateIcebergTableInput` – *必要：*[UpdateIcebergTableInput](#aws-glue-api-catalog-tables-UpdateIcebergTableInput) 物件。

  要套用至 Iceberg 資料表的特定更新操作，其中包含定義資料表新狀態的更新清單，包括結構描述、分區和屬性。

## CreateIcebergTableInput 結構
<a name="aws-glue-api-catalog-tables-CreateIcebergTableInput"></a>

在 AWS Glue Data Catalog 中建立新的 Iceberg 資料表所需的組態參數，包括資料表屬性和中繼資料規格。

**欄位**
+ `Location` – *必要：*位置字串，長度不可超過 2,056 個位元組，需符合 [URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  將在其中儲存 Iceberg 資料表資料的 S3 位置。
+ `Schema` – *必要：*[IcebergSchema](#aws-glue-api-catalog-tables-IcebergSchema) 物件。

  結構描述定義，用於指定 Iceberg 資料表的結構、欄位類型和中繼資料。
+ `PartitionSpec` – [IcebergPartitionSpec](#aws-glue-api-catalog-tables-IcebergPartitionSpec) 物件。

  分區規格，用於定義 Iceberg 資料表資料如何組織和分區，以獲得最佳查詢效能。
+ `WriteOrder` – [IcebergSortOrder](#aws-glue-api-catalog-tables-IcebergSortOrder) 物件。

  排序順序規格，用於定義應如何在每個分區內排序資料，以最佳化查詢效能。
+ `Properties` – 

  Iceberg 資料表的其他資料表屬性和組態設定的金鑰值對。

## UpdateIcebergTableInput 結構
<a name="aws-glue-api-catalog-tables-UpdateIcebergTableInput"></a>

包含要套用至AWS Glue Data Catalog 中現有 Iceberg 資料表的更新操作，定義資料表中繼資料的新狀態。

**欄位**
+ `Updates` – *必要：*一個 [IcebergTableUpdate](#aws-glue-api-catalog-tables-IcebergTableUpdate) 物件。

  指定要對 Iceberg 資料表進行變更的資料表更新操作清單，包括結構描述修改、分區規格和資料表屬性。

## IcebergSortOrder 結構
<a name="aws-glue-api-catalog-tables-IcebergSortOrder"></a>

定義 Iceberg 資料表的排序順序規格，決定如何在分區內排序資料，以最佳化查詢效能。

**欄位**
+ `OrderId` – *必要：*數字 (整數)。

  Iceberg 資料表中繼資料內此排序順序規格的唯一識別碼。
+ `Fields` – *必要：*一個 [IcebergSortField](#aws-glue-api-catalog-tables-IcebergSortField) 物件。

  定義 Iceberg 資料表資料的排序條件的欄位清單及其排序方向。

## IcebergSortField 結構
<a name="aws-glue-api-catalog-tables-IcebergSortField"></a>

定義 Iceberg 排序順序規格內的單一欄位，包括來源欄位、轉換、排序方向和 null 值排序。

**欄位**
+ `SourceId` – *必要：*數字 (整數)。

  此排序欄位所根據的資料表結構描述的來源欄位識別碼。
+ `Transform` – *必要：*UTF-8 字串。

  在排序之前套用至來源欄位的轉換函數，例如身分、儲存貯體或截斷。
+ `Direction` – *必要：*UTF-8 字串 (有效值：`asc="ASC"` \$1 `desc="DESC"`)。

  此欄位的排序方向 (遞增或遞減)。
+ `NullOrder` – *必要：*UTF-8 字串 (有效值：`nulls-first="NULLS_FIRST"` \$1 `nulls-last="NULLS_LAST"`)。

  此欄位中 null 值的排序行為，指定 null 在排序順序中應先顯示還是最後顯示。

## IcebergPartitionSpec 結構
<a name="aws-glue-api-catalog-tables-IcebergPartitionSpec"></a>

定義 Iceberg 資料表的分區規格，決定如何組織和分區資料表資料，以獲得最佳查詢效能。

**欄位**
+ `Fields` – *必要：*一個 [IcebergPartitionField](#aws-glue-api-catalog-tables-IcebergPartitionField) 物件。

  定義如何對資料表資料進行分區的分區欄位清單，包括來源欄位及其轉換。
+ `SpecId` – 數字 (整數)。

  Iceberg 資料表的中繼資料歷史記錄內此分區規格的唯一識別碼。

## IcebergPartitionField 結構
<a name="aws-glue-api-catalog-tables-IcebergPartitionField"></a>

定義 Iceberg 分區規格內的單一分區欄位，包括來源欄位、轉換函數、分區名稱和唯一識別碼。

**欄位**
+ `SourceId` – *必要：*數字 (整數)。

  此分區欄位所根據的資料表結構描述的來源欄位識別碼。
+ `Transform` – *必要：*UTF-8 字串。

  套用至來源欄位以建立分區的轉換函數，例如身分、儲存貯體、截斷、年、月、日或小時。
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 1024 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區欄位的名稱，其將出現在分區資料表結構中。
+ `FieldId` – 數字 (整數)。

  Iceberg 資料表的分區規格內指派給此分區欄位的唯一識別碼。

## IcebergSchema 結構
<a name="aws-glue-api-catalog-tables-IcebergSchema"></a>

定義 Iceberg 資料表的結構描述結構，包括欄位定義、資料類型及結構描述中繼資料。

**欄位**
+ `SchemaId` – 數字 (整數)。

  Iceberg 資料表的結構描述演變歷史記錄內此結構描述版本的唯一識別碼。
+ `IdentifierFieldIds` – 已簽署的 32 位元整數陣列。

  唯一識別資料表中記錄的欄位識別碼清單，用於資料列層級操作和重複資料刪除。
+ `Type` – UTF-8 字串 (有效值：`struct="STRUCT"`)。

  結構描述結構的根類型，通常是 Iceberg 資料表結構描述的「結構」。
+ `Fields` – *必要：*一個 [IcebergStructField](#aws-glue-api-catalog-tables-IcebergStructField) 物件。

  組成資料表結構描述的欄位定義清單，包括欄位名稱、類型及中繼資料。

## IcebergStructField 結構
<a name="aws-glue-api-catalog-tables-IcebergStructField"></a>

定義 Iceberg 資料表結構描述內的單一欄位，包括其識別碼、名稱、資料類型、可為 Null 性及文件。

**欄位**
+ `Id` – *必要：*數字 (整數)。

  Iceberg 資料表結構描述內指派給此欄位的唯一識別碼，用於結構描述演變和欄位追蹤。
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 1024 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  欄位在資料表結構描述和查詢操作中顯示的名稱。
+ `Type` – *必要：*名為 `IcebergDocument` 的空白結構。

  此欄位的資料類型定義，指定其包含資料的結構和格式。
+ `Required` – *必要：*布林值。

  指出此欄位在資料表結構描述中是必要 (不可為 Null) 還是選用 (可為 Null)。
+ `Doc` – 註解字串，長度不可超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  選用的文件或描述文字，提供此欄位用途和用量的其他內容。

## IcebergTableUpdate 結構
<a name="aws-glue-api-catalog-tables-IcebergTableUpdate"></a>

定義要套用至 Iceberg 資料表的完整更新集，包括結構描述變更、分區修改、排序順序調整、位置更新和屬性變更。

**欄位**
+ `Schema` – *必要：*[IcebergSchema](#aws-glue-api-catalog-tables-IcebergSchema) 物件。

  Iceberg 資料表的已更新結構描述定義，指定對欄位結構、資料類型或結構描述中繼資料的任何變更。
+ `PartitionSpec` – [IcebergPartitionSpec](#aws-glue-api-catalog-tables-IcebergPartitionSpec) 物件。

  更新的分區規格，用於定義應如何重新組織和分區資料表資料。
+ `SortOrder` – [IcebergSortOrder](#aws-glue-api-catalog-tables-IcebergSortOrder) 物件。

  更新的排序順序規格，用於定義如何在分區內排序資料，以獲得最佳查詢效能。
+ `Location` – *必要：*位置字串，長度不可超過 2,056 個位元組，需符合 [URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  將在其中儲存 Iceberg 資料表資料的更新的 S3 位置。
+ `Properties` – 

  更新了 Iceberg 資料表的資料表屬性和組態設定的金鑰值對。

## AuditContext 結構
<a name="aws-glue-api-catalog-tables-AuditContext"></a>

包含 Lake Formation 稽核內容的結構。

**欄位**
+ `AdditionalAuditContext` – UTF-8 字串，長度不可超過 2048 個位元組。

  包含其他稽核內容資訊的字串。
+ `RequestedColumns` – UTF-8 字串陣列。

  請求稽核的資料欄。
+ `AllColumnsRequested` – 布林值。

  稽核的所有資料欄請求。

## 作業
<a name="aws-glue-api-catalog-tables-actions"></a>
+ [CreateTable 動作 (Python: create\$1table)](#aws-glue-api-catalog-tables-CreateTable)
+ [UpdateTable 動作 (Python: update\$1table)](#aws-glue-api-catalog-tables-UpdateTable)
+ [DeleteTable 動作 (Python: delete\$1table)](#aws-glue-api-catalog-tables-DeleteTable)
+ [BatchDeleteTable 動作 (Python: batch\$1delete\$1table)](#aws-glue-api-catalog-tables-BatchDeleteTable)
+ [GetTable 動作 (Python: get\$1table)](#aws-glue-api-catalog-tables-GetTable)
+ [GetTables 動作 (Python: get\$1tables)](#aws-glue-api-catalog-tables-GetTables)
+ [GetTableVersion 動作 (Python: get\$1table\$1version)](#aws-glue-api-catalog-tables-GetTableVersion)
+ [GetTableVersions 動作 (Python: get\$1table\$1versions)](#aws-glue-api-catalog-tables-GetTableVersions)
+ [DeleteTableVersion 動作 (Python: delete\$1table\$1version)](#aws-glue-api-catalog-tables-DeleteTableVersion)
+ [BatchDeleteTableVersion 動作 (Python: batch\$1delete\$1table\$1version)](#aws-glue-api-catalog-tables-BatchDeleteTableVersion)
+ [SearchTables 動作 (Python: search\$1tables)](#aws-glue-api-catalog-tables-SearchTables)
+ [GetPartitionIndexes 動作 (Python: get\$1partition\$1indexes)](#aws-glue-api-catalog-tables-GetPartitionIndexes)
+ [CreatePartitionIndex 動作 (Python: create\$1partition\$1index)](#aws-glue-api-catalog-tables-CreatePartitionIndex)
+ [DeletePartitionIndex 動作 (Python: delete\$1partition\$1index)](#aws-glue-api-catalog-tables-DeletePartitionIndex)
+ [GetColumnStatisticsForTable 動作 (Python: get\$1column\$1statistics\$1for\$1table)](#aws-glue-api-catalog-tables-GetColumnStatisticsForTable)
+ [UpdateColumnStatisticsForTable 動作 (Python: update\$1column\$1statistics\$1for\$1table)](#aws-glue-api-catalog-tables-UpdateColumnStatisticsForTable)
+ [DeleteColumnStatisticsForTable 動作 (Python: delete\$1column\$1statistics\$1for\$1table)](#aws-glue-api-catalog-tables-DeleteColumnStatisticsForTable)

## CreateTable 動作 (Python: create\$1table)
<a name="aws-glue-api-catalog-tables-CreateTable"></a>

在 Data Catalog 建立新的資料表定義。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於建立 `Table` 的 Data Catalog 之 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於建立新資料表的目錄資料庫。為了相容於 Hive，此名稱必須完全小寫。
+ `Name` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要在 AWS Glue Data Catalog 中建立之指定資料庫中資料表的唯一識別符。
+ `TableInput` – [TableInput](#aws-glue-api-catalog-tables-TableInput) 物件。

  用於定義中繼資料資料表以建立目錄的 `TableInput` 物件。
+ `PartitionIndexes` – [PartitionIndex](#aws-glue-api-catalog-tables-PartitionIndex) 物件陣列，不可超過 3 個結構。

  要在資料表中建立的分割區索引的清單，`PartitionIndex` 結構。
+ `TransactionId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Custom string pattern #44](aws-glue-api-common.md#regex_44)。

  交易的 ID。
+ `OpenTableFormatInput` – [OpenTableFormatInput](#aws-glue-api-catalog-tables-OpenTableFormatInput) 物件。

  建立開放格式資料表時指定 `OpenTableFormatInput` 結構。

**回應**
+ *無回應參數。*

**錯誤**
+ `AlreadyExistsException`
+ `InvalidInputException`
+ `EntityNotFoundException`
+ `ResourceNumberLimitExceededException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `ConcurrentModificationException`
+ `ResourceNotReadyException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## UpdateTable 動作 (Python: update\$1table)
<a name="aws-glue-api-catalog-tables-UpdateTable"></a>

在 Data Catalog 更新中繼資料資料表。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的目錄資料庫的名稱。為了相容於 Hive，此名稱必須完全小寫。
+ `Name` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要在 AWS Glue Data Catalog 中建立之指定資料庫中資料表的唯一識別符。
+ `TableInput` – [TableInput](#aws-glue-api-catalog-tables-TableInput) 物件。

  用於定義目錄中的中繼資料資料表的已更新 `TableInput` 物件。
+ `SkipArchive` – 布林值。

  依預設，`UpdateTable` 在更新資料表之前，一律會建立資料表的封存版本。但是，如果 `skipArchive` 設為 true，`UpdateTable` 將不會建立封存版本。
+ `TransactionId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Custom string pattern #44](aws-glue-api-common.md#regex_44)。

  藉助其更新資料表內容的交易 ID。
+ `VersionId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  藉助其更新資料表內容的版本 ID。
+ `ViewUpdateAction` – UTF-8 字串 (有效值：`ADD` \$1 `REPLACE` \$1 `ADD_OR_REPLACE` \$1 `DROP`)。

  更新檢視時要執行的操作。
+ `Force` – 布林值。

  可設定為 true 以忽略相符儲存描述項和子物件相符要求的旗標。
+ `UpdateOpenTableFormatInput` – [UpdateOpenTableFormatInput](#aws-glue-api-catalog-tables-UpdateOpenTableFormatInput) 物件。

  用於更新 AWS Glue Data Catalog 中開放資料表格式資料表的輸入參數，做為格式特定更新操作的包裝函式，例如 Apache Iceberg。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `ConcurrentModificationException`
+ `ResourceNumberLimitExceededException`
+ `GlueEncryptionException`
+ `ResourceNotReadyException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`
+ `AlreadyExistsException`

## DeleteTable 動作 (Python: delete\$1table)
<a name="aws-glue-api-catalog-tables-DeleteTable"></a>

從 Data Catalog 移除資料表定義。

**注意**  
完成此操作之後，您就不能再存取屬於已刪除資料表的資料表版本和分割區。 AWS Glue 會根據服務的判斷，以非同步方式即時刪除這些「孤立」資源。  
若要確保能夠立即刪除所有相關資源，請在呼叫 `DeleteTable` 之前，先使用 `DeleteTableVersion` 或 `BatchDeleteTableVersion`，以及 `DeletePartition` 或 `BatchDeletePartition`，來刪除任何屬於資料表的資源。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的目錄資料庫的名稱。為了相容於 Hive，此名稱必須完全小寫。
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要刪除的資料表的名稱。為了相容於 Hive，此名稱必須完全小寫。
+ `TransactionId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Custom string pattern #44](aws-glue-api-common.md#regex_44)。

  藉助其刪除資料表內容的交易 ID。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `ConcurrentModificationException`
+ `ResourceNotReadyException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## BatchDeleteTable 動作 (Python: batch\$1delete\$1table)
<a name="aws-glue-api-catalog-tables-BatchDeleteTable"></a>

一次刪除多個資料表。

**注意**  
完成此操作之後，您就不能再存取屬於已刪除資料表的資料表版本和分割區。 AWS Glue 會根據服務的判斷，以非同步方式即時刪除這些「孤立」資源。  
若要確保能夠立即刪除所有相關資源，請在呼叫 `BatchDeleteTable` 之前，先使用 `DeleteTableVersion` 或 `BatchDeleteTableVersion`，以及 `DeletePartition` 或 `BatchDeletePartition`，來刪除任何屬於資料表的資源。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要刪除的資料表所在目錄資料庫的名稱。為了相容於 Hive，此名稱必須完全小寫。
+ `TablesToDelete` – *必要：*UTF-8 字串的陣列，不可超過 100 個字串。

  要刪除的資料表的清單。
+ `TransactionId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Custom string pattern #44](aws-glue-api-common.md#regex_44)。

  藉助其刪除資料表內容的交易 ID。

**回應**
+ `Errors` – 一個 [TableError](#aws-glue-api-catalog-tables-TableError) 物件陣列。

  嘗試刪除指定的資料表時發生的錯誤清單。

**錯誤**
+ `InvalidInputException`
+ `EntityNotFoundException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `ResourceNotReadyException`

## GetTable 動作 (Python: get\$1table)
<a name="aws-glue-api-catalog-tables-GetTable"></a>

擷取 Data Catalog 中指定資料表的 `Table` 定義。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在目錄的資料庫的名稱。為了相容於 Hive，此名稱必須完全小寫。
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要擷取其定義的資料表的名稱。為了相容於 Hive，此名稱必須完全小寫。
+ `TransactionId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Custom string pattern #44](aws-glue-api-common.md#regex_44)。

  藉助其讀取資料表內容的交易 ID。
+ `QueryAsOfTime` – 時間戳記。

  讀取資料表內容的時間。如果沒有設定，將使用最近的交易遞交時間。無法連同 `TransactionId` 一起指定。
+ `AuditContext` – [AuditContext](#aws-glue-api-catalog-tables-AuditContext) 物件。

  包含 Lake Formation [稽核內容](https://docs.aws.amazon.com/glue/latest/webapi/API_AuditContext.html)的結構。
+ `IncludeStatusDetails` – 布林值。

  指定是否包含與建立或更新 AWS Glue Data Catalog 檢視之請求相關的狀態詳細資訊。

**回應**
+ `Table` – [資料表](#aws-glue-api-catalog-tables-Table) 物件。

  用於定義指定資料表的 `Table` 物件。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `ResourceNotReadyException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## GetTables 動作 (Python: get\$1tables)
<a name="aws-glue-api-catalog-tables-GetTables"></a>

擷取指定的 `Database` 中的部分或所有資料表的定義。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  目錄的資料表要列出的資料庫。為了相容於 Hive，此名稱必須完全小寫。
+ `Expression` – UTF-8 字串，長度不可超過 2048 個位元組，且需符合 [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  規則表達式模式。如果存在，只會傳回名稱符合模式的資料表。
+ `NextToken` – UTF-8 字串。

  接續符記，如果這是接續呼叫，將會包含在內。
+ `MaxResults` – 數字 (整數)，不可小於 1，也不可以大於 100。

  在單一回應中可傳回的最大資料表數量。
+ `TransactionId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Custom string pattern #44](aws-glue-api-common.md#regex_44)。

  藉助其讀取資料表內容的交易 ID。
+ `QueryAsOfTime` – 時間戳記。

  讀取資料表內容的時間。如果沒有設定，將使用最近的交易遞交時間。無法連同 `TransactionId` 一起指定。
+ `AuditContext` – [AuditContext](#aws-glue-api-catalog-tables-AuditContext) 物件。

  包含 Lake Formation [稽核內容](https://docs.aws.amazon.com/glue/latest/webapi/API_AuditContext.html)的結構。
+ `IncludeStatusDetails` – 布林值。

  指定是否包含與建立或更新 AWS Glue Data Catalog 檢視之請求相關的狀態詳細資訊。
+ `AttributesToGet` – UTF-8 字串陣列。

   指定 `GetTables` 呼叫傳回的資料表欄位。此參數不接受空白清單。請求必須包含 `NAME`。

  以下是值的有效組合：
  + `NAME` - 資料庫中所有資料表的名稱。
  + `NAME`、`TABLE_TYPE` - 所有資料表的名稱和資料表類型。

**回應**
+ `TableList` – 一個 [資料表](#aws-glue-api-catalog-tables-Table) 物件陣列。

  要求的 `Table` 物件的清單。
+ `NextToken` – UTF-8 字串。

  接續字元，如果目前清單區段不是最後一個，將會出現此接續字元。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `OperationTimeoutException`
+ `InternalServiceException`
+ `GlueEncryptionException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## GetTableVersion 動作 (Python: get\$1table\$1version)
<a name="aws-glue-api-catalog-tables-GetTableVersion"></a>

擷取指定的資料表版本。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的目錄中的資料庫。為了相容於 Hive，此名稱必須完全小寫。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表的名稱。為了相容於 Hive，此名稱必須完全小寫。
+ `VersionId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要擷取的資料表版本的 ID 值。`VersionID` 是一個整數的表示字串。每個版本會增加 1。

**回應**
+ `TableVersion` – [TableVersion](#aws-glue-api-catalog-tables-TableVersion) 物件。

  要求的資料表版本。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

## GetTableVersions 動作 (Python: get\$1table\$1versions)
<a name="aws-glue-api-catalog-tables-GetTableVersions"></a>

擷取用於識別指定的資料表可用版本的字串清單。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的目錄中的資料庫。為了相容於 Hive，此名稱必須完全小寫。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表的名稱。為了相容於 Hive，此名稱必須完全小寫。
+ `NextToken` – UTF-8 字串。

  接續符記，如果這不是第一個呼叫。
+ `MaxResults` – 數字 (整數)，不可小於 1，也不可以大於 100。

  一次回應傳回的最大資料表版本數量。

**回應**
+ `TableVersions` – 一個 [TableVersion](#aws-glue-api-catalog-tables-TableVersion) 物件陣列。

  用於識別指定的資料表可用版本的字串清單。
+ `NextToken` – UTF-8 字串。

  接續字元，如果可用版本的清單不包含最後一個可用版本。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

## DeleteTableVersion 動作 (Python: delete\$1table\$1version)
<a name="aws-glue-api-catalog-tables-DeleteTableVersion"></a>

刪除指定的資料表版本。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的目錄中的資料庫。為了相容於 Hive，此名稱必須完全小寫。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表的名稱。為了相容於 Hive，此名稱必須完全小寫。
+ `VersionId` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要刪除的資料表版本的 ID。`VersionID` 是一個整數的表示字串。每個版本會增加 1。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`

## BatchDeleteTableVersion 動作 (Python: batch\$1delete\$1table\$1version)
<a name="aws-glue-api-catalog-tables-BatchDeleteTableVersion"></a>

刪除指定的資料表版本批次。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的目錄中的資料庫。為了相容於 Hive，此名稱必須完全小寫。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表的名稱。為了相容於 Hive，此名稱必須完全小寫。
+ `VersionIds` – *必要：*UTF-8 字串的陣列，不可超過 100 個字串。

  要刪除的版本的 ID 清單。`VersionId` 是一個整數的表示字串。每個版本會增加 1。

**回應**
+ `Errors` – 一個 [TableVersionError](#aws-glue-api-catalog-tables-TableVersionError) 物件陣列。

  嘗試刪除指定的資料表版本時發生的錯誤清單。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`

## SearchTables 動作 (Python: search\$1tables)
<a name="aws-glue-api-catalog-tables-SearchTables"></a>

根據資料表中繼資料和父資料庫中的屬性搜尋一組資料表。您可以搜尋文字或篩選條件。

您只能根據在 Lake Formation 中定義的安全政策，取得您有權存取的資料表。您至少需要資料表的唯讀存取權，才能傳回該資料表。如果您無法存取資料表中的所有資料欄，在將資料表清單傳回給您時，將不會搜尋這些資料欄。如果您有權存取資料欄，但無法存取資料欄中的資料，這些資料欄以及其相關中繼資料將包含在搜尋中。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  唯一識別符，由 `account_id` 組成。
+ `NextToken` – UTF-8 字串。

  接續符記，如果這是接續呼叫，將會包含在內。
+ `Filters` – 一個 [PropertyPredicate](aws-glue-api-common.md#aws-glue-api-common-PropertyPredicate) 物件陣列。

  索引鍵/值組清單，以及用來篩選搜尋結果的比較器。傳回符合述詞的所有實體。

  `PropertyPredicate` 結構的 `Comparator` 成員僅用於時間欄位，並且在其他欄位類型可以省略。此外，在比較字串值時，例如 `Key=Name`，會使用模糊比對演算法。`Key` 欄位 (例如，`Name` 欄位的值) 會將某些標點符號 (例如 -、:、\$1 等) 分割成標記。然後，每個標記都會與 `PropertyPredicate` 的 `Value` 成員進行完全相符比較。例如，如果 `Key=Name` 和 `Value=link`，會傳回命名為 `customer-link` 和 `xx-link-yy` 的資料表，但不會傳回 `xxlinkyy`。
+ `SearchText` – 值字串，長度不可小於 1 個位元組，也不可以超過 1,024 個位元組。

  用於文字搜尋的字串。

  根據與值的完全相符，在引號篩選條件中指定值。
+ `SortCriteria` – 一個 [SortCriterion](#aws-glue-api-catalog-tables-SortCriterion) 物件陣列，不可超過 1 個結構。

  用於依資料欄位名稱排序結果的條件清單，按遞增或遞減順序。
+ `MaxResults` – 數字 (整數)，不可小於 1，也不可以大於 1000。

  在單一回應中可傳回的最大資料表數量。
+ `ResourceShareType` – UTF-8 字串 (有效值：`FOREIGN` \$1 `ALL` \$1 `FEDERATED`)。

  可讓您指定要搜尋與您帳戶共用的資料表。允許的值為 `FOREIGN` 或 `ALL`。
  + 如果設定為 `FOREIGN`，會搜尋與您帳戶共用的資料表。
  + 如果設定為 `ALL`，會搜尋與您帳戶共用的資料表，以及您本機帳戶中的資料表。
+ `IncludeStatusDetails` – 布林值。

  指定是否包含與建立或更新 AWS Glue Data Catalog 檢視之請求相關的狀態詳細資訊。

**回應**
+ `NextToken` – UTF-8 字串。

  接續字元，如果目前清單區段不是最後一個，將會出現此接續字元。
+ `TableList` – 一個 [資料表](#aws-glue-api-catalog-tables-Table) 物件陣列。

  要求的 `Table` 物件的清單。`SearchTables` 回應只會傳回您有權存取的資料表。

**錯誤**
+ `InternalServiceException`
+ `InvalidInputException`
+ `OperationTimeoutException`

## GetPartitionIndexes 動作 (Python: get\$1partition\$1indexes)
<a name="aws-glue-api-catalog-tables-GetPartitionIndexes"></a>

擷取與資料表相關聯的分割區索引。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的目錄的 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  指定您要從中擷取分割區索引的資料庫名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  指定您要擷取分割區索引的資料表名稱。
+ `NextToken` – UTF-8 字串。

  接續符記，如果這是接續呼叫，將會包含在內。

**回應**
+ `PartitionIndexDescriptorList` – 一個 [PartitionIndexDescriptor](#aws-glue-api-catalog-tables-PartitionIndexDescriptor) 物件陣列。

  索引描述元的清單。
+ `NextToken` – UTF-8 字串。

  接續字元，如果目前清單區段不是最後一個，將會出現此接續字元。

**錯誤**
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `EntityNotFoundException`
+ `ConflictException`

## CreatePartitionIndex 動作 (Python: create\$1partition\$1index)
<a name="aws-glue-api-catalog-tables-CreatePartitionIndex"></a>

在現有資料表中建立指定的分割區索引。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的目錄的 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  指定您要建立分割區索引的資料庫名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  指定您要建立分割區索引的資料表名稱。
+ `PartitionIndex` – *必要：*[PartitionIndex](#aws-glue-api-catalog-tables-PartitionIndex) 物件。

  指定 `PartitionIndex` 結構，在現有資料表中建立分割區索引。

**回應**
+ *無回應參數。*

**錯誤**
+ `AlreadyExistsException`
+ `InvalidInputException`
+ `EntityNotFoundException`
+ `ResourceNumberLimitExceededException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

## DeletePartitionIndex 動作 (Python: delete\$1partition\$1index)
<a name="aws-glue-api-catalog-tables-DeletePartitionIndex"></a>

從現有的資料表刪除指定的分割區索引。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表所在的目錄的 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  指定您要從中刪除分割區索引的資料庫名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  指定您要從中刪除分割區索引的資料表名稱。
+ `IndexName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要刪除的分割區索引的名稱。

**回應**
+ *無回應參數。*

**錯誤**
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `EntityNotFoundException`
+ `ConflictException`
+ `GlueEncryptionException`

## GetColumnStatisticsForTable 動作 (Python: get\$1column\$1statistics\$1for\$1table)
<a name="aws-glue-api-catalog-tables-GetColumnStatisticsForTable"></a>

擷取欄的資料表統計數字。

此作業所需的 Identity and Access Management (IAM) 許可為 `GetTable`。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題分區所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區所在的目錄資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區的資料表的名稱。
+ `ColumnNames` – *必要：*UTF-8 字串的陣列，不可超過 100 個字串。

  欄名稱之清單。

**回應**
+ `ColumnStatisticsList` – 一個 [ColumnStatistics](aws-glue-api-common.md#aws-glue-api-common-ColumnStatistics) 物件陣列。

  ColumnStatistics 清單。
+ `Errors` – 一個 [ColumnError](aws-glue-api-common.md#aws-glue-api-common-ColumnError) 物件陣列。

  無法擷取之 ColumnStatistics 的清單。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

## UpdateColumnStatisticsForTable 動作 (Python: update\$1column\$1statistics\$1for\$1table)
<a name="aws-glue-api-catalog-tables-UpdateColumnStatisticsForTable"></a>

建立或更新欄的資料表統計數字。

此作業所需的 Identity and Access Management (IAM) 許可為 `UpdateTable`。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題分區所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區所在的目錄資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區的資料表的名稱。
+ `ColumnStatisticsList` – *必要：*[ColumnStatistics](aws-glue-api-common.md#aws-glue-api-common-ColumnStatistics) 物件的陣列，不可超過 25 個結構。

  欄統計數字的清單。

**回應**
+ `Errors` – 一個 [ColumnStatisticsError](aws-glue-api-common.md#aws-glue-api-common-ColumnStatisticsError) 物件陣列。

  ColumnStatisticsErrors 的清單。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

## DeleteColumnStatisticsForTable 動作 (Python: delete\$1column\$1statistics\$1for\$1table)
<a name="aws-glue-api-catalog-tables-DeleteColumnStatisticsForTable"></a>

擷取欄的資料表統計數字。

此作業所需的 Identity and Access Management (IAM) 許可為 `DeleteTable`。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題分區所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區所在的目錄資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區的資料表的名稱。
+ `ColumnName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  欄位的名稱。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

# 分區 API
<a name="aws-glue-api-catalog-partitions"></a>

Partition API 說明用於分區的資料類型和操作。

## 資料類型
<a name="aws-glue-api-catalog-partitions-objects"></a>
+ [Partition 結構](#aws-glue-api-catalog-partitions-Partition)
+ [PartitionInput 結構](#aws-glue-api-catalog-partitions-PartitionInput)
+ [PartitionSpecWithSharedStorageDescriptor 結構](#aws-glue-api-catalog-partitions-PartitionSpecWithSharedStorageDescriptor)
+ [PartitionListComposingSpec 結構](#aws-glue-api-catalog-partitions-PartitionListComposingSpec)
+ [PartitionSpecProxy 結構](#aws-glue-api-catalog-partitions-PartitionSpecProxy)
+ [PartitionValueList 結構](#aws-glue-api-catalog-partitions-PartitionValueList)
+ [Segment 結構](#aws-glue-api-catalog-partitions-Segment)
+ [PartitionError 結構](#aws-glue-api-catalog-partitions-PartitionError)
+ [BatchUpdatePartitionFailureEntry 結構](#aws-glue-api-catalog-partitions-BatchUpdatePartitionFailureEntry)
+ [BatchUpdatePartitionRequestEntry 結構](#aws-glue-api-catalog-partitions-BatchUpdatePartitionRequestEntry)
+ [StorageDescriptor 結構](#aws-glue-api-catalog-partitions-StorageDescriptor)
+ [SchemaReference 結構](#aws-glue-api-catalog-partitions-SchemaReference)
+ [SerDeInfo 結構](#aws-glue-api-catalog-partitions-SerDeInfo)
+ [SkewedInfo 結構](#aws-glue-api-catalog-partitions-SkewedInfo)

## Partition 結構
<a name="aws-glue-api-catalog-partitions-Partition"></a>

代表資料表資料的切片。

**欄位**
+ `Values` – UTF-8 字串陣列。

  分區的值。
+ `DatabaseName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要在其中建立分割區的目錄資料庫名稱。
+ `TableName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於建立分區的資料庫資料表之名稱。
+ `CreationTime` – 時間戳記。

  建立分區的時間。
+ `LastAccessTime` – 時間戳記。

  上次存取分區的時間。
+ `StorageDescriptor` – [StorageDescriptor](#aws-glue-api-catalog-partitions-StorageDescriptor) 物件。

  提供有關分區實體存放位置的資訊。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  這些金鑰值對會定義分割區參數。
+ `LastAnalyzedTime` – 時間戳記。

  此分區上一次運算欄位統計的時間。
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分割區所在 Data Catalog 的 ID。

## PartitionInput 結構
<a name="aws-glue-api-catalog-partitions-PartitionInput"></a>

用於建立和更新分割區的結構。

**欄位**
+ `Values` – UTF-8 字串陣列。

  分區的值。雖然軟體開發套件不需要此參數，您必須為此參數指定一個有效的輸入。

  新分割區的索引鍵值必須以字串物件陣列傳遞，且順序必須與出現在 Amazon S3 前綴中的分割區索引鍵順序相同。否則 AWS Glue 會將值新增至錯誤的金鑰。
+ `LastAccessTime` – 時間戳記。

  上次存取分區的時間。
+ `StorageDescriptor` – [StorageDescriptor](#aws-glue-api-catalog-partitions-StorageDescriptor) 物件。

  提供有關分區實體存放位置的資訊。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  這些金鑰值對會定義分割區參數。
+ `LastAnalyzedTime` – 時間戳記。

  此分區上一次運算欄位統計的時間。

## PartitionSpecWithSharedStorageDescriptor 結構
<a name="aws-glue-api-catalog-partitions-PartitionSpecWithSharedStorageDescriptor"></a>

適用於共用實體位置的分區的分區規格。

**欄位**
+ `StorageDescriptor` – [StorageDescriptor](#aws-glue-api-catalog-partitions-StorageDescriptor) 物件。

  共用實體儲存資訊。
+ `Partitions` – 一個 [分割區](#aws-glue-api-catalog-partitions-Partition) 物件陣列。

  共用此實體位置的分區的清單。

## PartitionListComposingSpec 結構
<a name="aws-glue-api-catalog-partitions-PartitionListComposingSpec"></a>

列出相關的分區。

**欄位**
+ `Partitions` – 一個 [分割區](#aws-glue-api-catalog-partitions-Partition) 物件陣列。

  符合組成規格的分區的清單。

## PartitionSpecProxy 結構
<a name="aws-glue-api-catalog-partitions-PartitionSpecProxy"></a>

提供指定分區的根路徑。

**欄位**
+ `DatabaseName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區所在的目錄資料庫。
+ `TableName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  包含資分區之資料表的名稱。
+ `RootPath` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  定址分區的 Proxy 的根路徑。
+ `PartitionSpecWithSharedSD` – [PartitionSpecWithSharedStorageDescriptor](#aws-glue-api-catalog-partitions-PartitionSpecWithSharedStorageDescriptor) 物件。

  共用實體儲存位置的分區的規格。
+ `PartitionListComposingSpec` – [PartitionListComposingSpec](#aws-glue-api-catalog-partitions-PartitionListComposingSpec) 物件。

  指定分區的清單。

## PartitionValueList 結構
<a name="aws-glue-api-catalog-partitions-PartitionValueList"></a>

包含定義分區的值的清單。

**欄位**
+ `Values` – *必要：*UTF-8 字串陣列。

  值的清單。

## Segment 結構
<a name="aws-glue-api-catalog-partitions-Segment"></a>

定義資料表分割區的非重疊區域，讓多個要求以平行方式執行。

**欄位**
+ `SegmentNumber` – *必要：*數字 (整數)，不可大於 None (無)。

  區段的零基索引號碼。例如，如果區段總數為 4，則 `SegmentNumber` 的值將從 0 到 3。
+ `TotalSegments` – *必要：*數字 (整數)，不可小於 1，也不可以大於 10。

  區段的總數。

## PartitionError 結構
<a name="aws-glue-api-catalog-partitions-PartitionError"></a>

包含有關分區錯誤的資訊。

**欄位**
+ `PartitionValues` – UTF-8 字串陣列。

  定義分區的值。
+ `ErrorDetail` – [ErrorDetail](aws-glue-api-common.md#aws-glue-api-common-ErrorDetail) 物件。

  關於分區錯誤的詳細資訊。

## BatchUpdatePartitionFailureEntry 結構
<a name="aws-glue-api-catalog-partitions-BatchUpdatePartitionFailureEntry"></a>

包含有關批次更新分割區錯誤的資訊。

**欄位**
+ `PartitionValueList` – UTF-8 字串的陣列，不可超過 100 個字串。

  定義分割區的值的清單。
+ `ErrorDetail` – [ErrorDetail](aws-glue-api-common.md#aws-glue-api-common-ErrorDetail) 物件。

  關於批次更新分割區錯誤的詳細資訊。

## BatchUpdatePartitionRequestEntry 結構
<a name="aws-glue-api-catalog-partitions-BatchUpdatePartitionRequestEntry"></a>

包含用於更新分割區的值和結構的結構。

**欄位**
+ `PartitionValueList` – *必要：*UTF-8 字串的陣列，不可超過 100 個字串。

  定義分割區的值的清單。
+ `PartitionInput` – *必要：*[PartitionInput](#aws-glue-api-catalog-partitions-PartitionInput) 物件。

  用於更新分割區的結構。

## StorageDescriptor 結構
<a name="aws-glue-api-catalog-partitions-StorageDescriptor"></a>

描述資料表資料的實體儲存。

**欄位**
+ `Columns` – 一個 [資料行](aws-glue-api-catalog-tables.md#aws-glue-api-catalog-tables-Column) 物件陣列。

  資料表中的 `Columns` 的清單。
+ `Location` – 位置字串，長度不可超過 2056 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  資料表的實體位置。依預設，它採用倉儲位置的形式，後面接著是資料庫在倉儲中的位置，最後是資料表名稱。
+ `AdditionalLocations` – UTF-8 字串陣列。

  指向 Delta 資料表所在路徑的位置清單。
+ `InputFormat` – 格式字串，長度不可超過 128 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  輸入格式：`SequenceFileInputFormat` (二進位)，或者 `TextInputFormat`，或自訂格式。
+ `OutputFormat` – 格式字串，長度不可超過 128 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  輸出格式：`SequenceFileOutputFormat` (二進位)，或者 `IgnoreKeyTextOutputFormat`，或自訂格式。
+ `Compressed` – 布林值。

  如果資料表中的資料都經過壓縮則為 `True`，否則為 `False`
+ `NumberOfBuckets` – 數字 (整數)。

  如果資料表包含任何維度欄位，將必須指定。
+ `SerdeInfo` – [SerDeInfo](#aws-glue-api-catalog-partitions-SerDeInfo) 物件。

  序列化/還原序列化 (SerDe) 資訊。
+ `BucketColumns` – UTF-8 字串陣列。

  資料表中的縮減器分組欄位、叢集欄位及值區欄位的清單。
+ `SortColumns` – 一個 [順序](aws-glue-api-catalog-tables.md#aws-glue-api-catalog-tables-Order) 物件陣列。

  指定資料表中各個儲存貯體排序順序的清單。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  使用者提供的屬性，格式為金鑰/值。
+ `SkewedInfo` – [SkewedInfo](#aws-glue-api-catalog-partitions-SkewedInfo) 物件。

  關於欄位中頻繁出現值的資訊 (偏斜值)。
+ `StoredAsSubDirectories` – 布林值。

  如果資料表資料存放於子目錄則為 `True`，否則為 `False`
+ `SchemaReference` – [SchemaReference](#aws-glue-api-catalog-partitions-SchemaReference) 物件。

  參考儲存在結構描述登錄檔中的 AWS Glue 結構描述的物件。

  建立資料表時，您可以傳遞結構描述欄的空白清單，並改用結構描述參考。

## SchemaReference 結構
<a name="aws-glue-api-catalog-partitions-SchemaReference"></a>

參考儲存在結構描述登錄檔中的 AWS Glue 結構描述的物件。

**欄位**
+ `SchemaId` – [SchemaId](aws-glue-api-schema-registry-api.md#aws-glue-api-schema-registry-api-SchemaId) 物件。

  包含結構描述身分欄位的結構。必須提供此結構或 `SchemaVersionId`。
+ `SchemaVersionId` – UTF-8 字串，長度不可小於 36 個位元組，也不可以超過 36 個位元組，且需符合 [Custom string pattern #45](aws-glue-api-common.md#regex_45)。

  指派給結構描述版本的唯一 ID。必須提供此結構或 `SchemaId`。
+ `SchemaVersionNumber` – 數字 (長整數)，不可小於 1，也不可以大於 100000。

  結構描述的版本編號。

## SerDeInfo 結構
<a name="aws-glue-api-catalog-partitions-SerDeInfo"></a>

關於做為擷取器和載入器的序列化/還原序列化程式 (SerDe) 的資訊。

**欄位**
+ `Name` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  SerDe 的名稱。
+ `SerializationLibrary` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  通常是實作 SerDe 的類別。例如，`org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe`。
+ `Parameters` – 金鑰值對的對應陣列。

  每個金鑰都是金鑰字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 UTF-8 字串，長度不可超過 512000 個位元組。

  這些金鑰值對會定義 SerDe 的初始化參數。

## SkewedInfo 結構
<a name="aws-glue-api-catalog-partitions-SkewedInfo"></a>

指定資料表中的偏斜值。偏斜值是指頻率發生非常高的值。

**欄位**
+ `SkewedColumnNames` – UTF-8 字串陣列。

  包含偏斜值的欄位名稱清單。
+ `SkewedColumnValues` – UTF-8 字串陣列。

  頻繁出現而被視為偏斜的值的清單。
+ `SkewedColumnValueLocationMaps` – 金鑰值對的映射陣列。

  每個金鑰都是 UTF-8 字串。

  每個值都是 UTF-8 字串。

  偏斜值與包含這些值的欄位的映射。

## 作業
<a name="aws-glue-api-catalog-partitions-actions"></a>
+ [CreatePartition 動作 (Python: create\$1partition)](#aws-glue-api-catalog-partitions-CreatePartition)
+ [BatchCreatePartition 動作 (Python: batch\$1create\$1partition)](#aws-glue-api-catalog-partitions-BatchCreatePartition)
+ [UpdatePartition 動作 (Python: update\$1partition)](#aws-glue-api-catalog-partitions-UpdatePartition)
+ [DeletePartition 動作 (Python: delete\$1partition)](#aws-glue-api-catalog-partitions-DeletePartition)
+ [BatchDeletePartition 動作 (Python: batch\$1delete\$1partition)](#aws-glue-api-catalog-partitions-BatchDeletePartition)
+ [GetPartition 動作 (Python: get\$1partition)](#aws-glue-api-catalog-partitions-GetPartition)
+ [GetPartitions 動作 (Python: get\$1partitions)](#aws-glue-api-catalog-partitions-GetPartitions)
+ [BatchGetPartition 動作 (Python: batch\$1get\$1partition)](#aws-glue-api-catalog-partitions-BatchGetPartition)
+ [BatchUpdatePartition 動作 (Python: batch\$1update\$1partition)](#aws-glue-api-catalog-partitions-BatchUpdatePartition)
+ [GetColumnStatisticsForPartition 動作 (Python: get\$1column\$1statistics\$1for\$1partition)](#aws-glue-api-catalog-partitions-GetColumnStatisticsForPartition)
+ [UpdateColumnStatisticsForPartition 動作 (Python: update\$1column\$1statistics\$1for\$1partition)](#aws-glue-api-catalog-partitions-UpdateColumnStatisticsForPartition)
+ [DeleteColumnStatisticsForPartition 動作 (Python: delete\$1column\$1statistics\$1for\$1partition)](#aws-glue-api-catalog-partitions-DeleteColumnStatisticsForPartition)

## CreatePartition 動作 (Python: create\$1partition)
<a name="aws-glue-api-catalog-partitions-CreatePartition"></a>

建立新的分區。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要在其中建立分割區之目錄 AWS 的帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  在其中建立分區的中繼資料資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要在其中建立分割區的中繼資料表名稱。
+ `PartitionInput` – *必要：*[PartitionInput](#aws-glue-api-catalog-partitions-PartitionInput) 物件。

  用於定義要建立的分區的 `PartitionInput` 結構。

**回應**
+ *無回應參數。*

**錯誤**
+ `InvalidInputException`
+ `AlreadyExistsException`
+ `ResourceNumberLimitExceededException`
+ `InternalServiceException`
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

## BatchCreatePartition 動作 (Python: batch\$1create\$1partition)
<a name="aws-glue-api-catalog-partitions-BatchCreatePartition"></a>

在批次處理中建立一或多個分區。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區建立所在目錄的 ID。目前，這應該是 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  在其中建立分區的中繼資料資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要在其中建立分割區的中繼資料表名稱。
+ `PartitionInputList` – *必要：*[PartitionInput](#aws-glue-api-catalog-partitions-PartitionInput) 物件的陣列，不可超過 100 個結構。

  用於定義要建立分區的 `PartitionInput` 結構清單。

**回應**
+ `Errors` – 一個 [PartitionError](#aws-glue-api-catalog-partitions-PartitionError) 物件陣列。

  在嘗試建立所要求分區時發生的錯誤。

**錯誤**
+ `InvalidInputException`
+ `AlreadyExistsException`
+ `ResourceNumberLimitExceededException`
+ `InternalServiceException`
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

## UpdatePartition 動作 (Python: update\$1partition)
<a name="aws-glue-api-catalog-partitions-UpdatePartition"></a>

更新分區。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要更新之分區所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題資料表所在目錄資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  更新的分區所在資料表的名稱。
+ `PartitionValueList` – *必要：*UTF-8 字串的陣列，不可超過 100 個字串。

  定義要更新之分割區的分割區索引鍵值的清單。
+ `PartitionInput` – *必要：*[PartitionInput](#aws-glue-api-catalog-partitions-PartitionInput) 物件。

  要更新分區所在的新分區物件。

  `Values` 屬性無法變更。如果您想要變更分割區的分割區索引鍵值，請刪除並重新建立分割區。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

## DeletePartition 動作 (Python: delete\$1partition)
<a name="aws-glue-api-catalog-partitions-DeletePartition"></a>

刪除指定的分區。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要刪除分區所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題資料表所在目錄資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表的名稱，資料表內包含將要刪除的分區。
+ `PartitionValues` – *必要：*UTF-8 字串陣列。

  定義分區的值。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`

## BatchDeletePartition 動作 (Python: batch\$1delete\$1partition)
<a name="aws-glue-api-catalog-partitions-BatchDeletePartition"></a>

在批次處理中刪除一或多個分區。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要刪除分區所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題資料表所在目錄資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  資料表的名稱，資料表內包含將要刪除的分區。
+ `PartitionsToDelete` – *必要：*[PartitionValueList](#aws-glue-api-catalog-partitions-PartitionValueList) 物件的陣列，不可超過 25 個結構。

  用於定義要刪除分區的 `PartitionInput` 結構清單。

**回應**
+ `Errors` – 一個 [PartitionError](#aws-glue-api-catalog-partitions-PartitionError) 物件陣列。

  在嘗試建立所要求分區時發生的錯誤。

**錯誤**
+ `InvalidInputException`
+ `EntityNotFoundException`
+ `InternalServiceException`
+ `OperationTimeoutException`

## GetPartition 動作 (Python: get\$1partition)
<a name="aws-glue-api-catalog-partitions-GetPartition"></a>

擷取有關指定的分區的資訊。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題分區所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區所在的目錄資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區的資料表的名稱。
+ `PartitionValues` – *必要：*UTF-8 字串陣列。

  定義分區的值。

**回應**
+ `Partition` – [分割區](#aws-glue-api-catalog-partitions-Partition) 物件。

  要求的資訊，格式為 `Partition` 物件。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## GetPartitions 動作 (Python: get\$1partitions)
<a name="aws-glue-api-catalog-partitions-GetPartitions"></a>

擷取資料表中有關分區的資訊。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題分區所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區所在的目錄資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區的資料表的名稱。
+ `Expression` – 述詞字串，長度不可超過 2048 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  用於篩選要傳回之分區的表達式。

  該表達式使用類似於 SQL `WHERE` 篩選條件子句的 SQL 語法。SQL 陳述式剖析器 [JSQLParser](http://jsqlparser.sourceforge.net/home.php) 剖析該表達式。

  *Operators (運算子)*：以下是您可以在 `Expression` API 呼叫中使用的運算子：  
=  
檢查兩個運算元的值是否相等；如果是，則條件成立。  
範例：假設「variable a」(變數 a) 保持為 10，而「variable b」(變數 b) 保持為 20。  
(a= b) 不為真。  
< >  
檢查兩個運算元的值是否相等；如果值並不相等，則條件成立。  
範例：(a < > b) 為真。  
>  
檢查左運算元的值是否大於右運算元的值；如果是，則條件成立。  
範例：(a > b) 不為真。  
<  
檢查左運算元的值是否小於右運算元的值；如果是，則條件成立。  
範例：(a < b) 為真。  
>=  
檢查左運算元的值是否大於或等於右運算元的值；如果是，則條件成立。  
範例：(a > = b) 不為真。  
<=  
檢查左運算元的值是否小於或等於右運算元的值；如果是，則條件成立。  
範例：(a <= b) 為真。  
AND、OR、IN、BETWEEN、LIKE、NOT、IS NULL  
邏輯運算子。

  *支援的分割區索引鍵類型*：以下是支援的分割區索引鍵。
  + `string`
  + `date`
  + `timestamp`
  + `int`
  + `bigint`
  + `long`
  + `tinyint`
  + `smallint`
  + `decimal`

  如果遇到無效的類型，則擲出例外狀況。

  下表顯示每個類型的有效運算子。當您定義一個爬蟲程式時，`partitionKey` 類型將以 `STRING` 建立，並與目錄分區。

  *範例 API 呼叫*：  
**Example**  

  該資料表 `twitter_partition` 有三個分區：

  ```
  year = 2015
          year = 2016
          year = 2017
  ```  
**Example**  

  取得 `year` 等於 2015 的分區

  ```
  aws glue get-partitions --database-name dbname --table-name twitter_partition 
          --expression "year*=*'2015'"
  ```  
**Example**  

  取得 `year` 介於 2016-2018 之間 (不包含) 的分區

  ```
  aws glue get-partitions --database-name dbname --table-name twitter_partition 
          --expression "year>'2016' AND year<'2018'"
  ```  
**Example**  

  取得 `year` 介於 2015-2018之間 (不包含) 的分區 以下 API 呼叫彼此相同：

  ```
  aws glue get-partitions --database-name dbname --table-name twitter_partition 
          --expression "year>='2015' AND year<='2018'"
          
          aws glue get-partitions --database-name dbname --table-name twitter_partition 
          --expression "year BETWEEN 2015 AND 2018"
          
          aws glue get-partitions --database-name dbname --table-name twitter_partition 
          --expression "year IN (2015,2016,2017,2018)"
  ```  
**Example**  

  萬用字元分區篩選條件，其中以下呼叫輸出將為分區年份 = 2017。`LIKE` 不支援規則表達式。

  ```
  aws glue get-partitions --database-name dbname --table-name twitter_partition 
          --expression "year LIKE '%7'"
  ```
+ `NextToken` – UTF-8 字串。

  接續字元，如果這不是第一個用於擷取這些分區的呼叫。
+ `Segment` – [區段](#aws-glue-api-catalog-partitions-Segment) 物件。

  在此要求中要掃描的資料表的分區的區段。
+ `MaxResults` – 數字 (整數)，不可小於 1，也不可以大於 1000。

  在單一回應中可傳回的最大分區數量。
+ `ExcludeColumnSchema` – 布林值。

  如果為 True，指定不返回分割區資料行結構描述。僅對其他分割區屬性 (例如分割區值或位置) 感興趣時會很實用。這種方法不會傳回重複的資料，從而避免了大型響應的問題。
+ `TransactionId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Custom string pattern #44](aws-glue-api-common.md#regex_44)。

  藉助其讀取分割區內容的交易 ID。
+ `QueryAsOfTime` – 時間戳記。

  讀取分割區內容的時間。如果沒有設定，將使用最近的交易遞交時間。無法連同 `TransactionId` 一起指定。

**回應**
+ `Partitions` – 一個 [分割區](#aws-glue-api-catalog-partitions-Partition) 物件陣列。

  要求的分區的清單。
+ `NextToken` – UTF-8 字串。

  接續字元，如果傳回的分區清單不包含最後一個分區。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `OperationTimeoutException`
+ `InternalServiceException`
+ `GlueEncryptionException`
+ `InvalidStateException`
+ `ResourceNotReadyException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## BatchGetPartition 動作 (Python: batch\$1get\$1partition)
<a name="aws-glue-api-catalog-partitions-BatchGetPartition"></a>

在批次要求中擷取分區。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題分區所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區所在的目錄資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區的資料表的名稱。
+ `PartitionsToGet` – *必要：*一個 [PartitionValueList](#aws-glue-api-catalog-partitions-PartitionValueList) 物件陣列，不可超過 1000 個結構。

  用於識別要擷取的分區的分區值清單。

**回應**
+ `Partitions` – 一個 [分割區](#aws-glue-api-catalog-partitions-Partition) 物件陣列。

  要求的分區的清單。
+ `UnprocessedKeys` – 一個 [PartitionValueList](#aws-glue-api-catalog-partitions-PartitionValueList) 物件陣列，不可超過 1000 個結構。

  在未傳回分區之要求中的分區值清單。

**錯誤**
+ `InvalidInputException`
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `InternalServiceException`
+ `GlueEncryptionException`
+ `InvalidStateException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## BatchUpdatePartition 動作 (Python: batch\$1update\$1partition)
<a name="aws-glue-api-catalog-partitions-BatchUpdatePartition"></a>

在批次處理中更新一或多個分割區。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分割區更新所在目錄的 ID。目前，這應該是 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  在其中更新分割區的中繼資料資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要在其中更新分割區的中繼資料資料表名稱。
+ `Entries` – *必要：*[BatchUpdatePartitionRequestEntry](#aws-glue-api-catalog-partitions-BatchUpdatePartitionRequestEntry) 物件陣列，不小於 1 個結構，也不大於 100 個結構。

  最多 100 個要更新的 `BatchUpdatePartitionRequestEntry` 物件清單。

**回應**
+ `Errors` – 一個 [BatchUpdatePartitionFailureEntry](#aws-glue-api-catalog-partitions-BatchUpdatePartitionFailureEntry) 物件陣列。

  在嘗試更新所要求分區時發生的錯誤。`BatchUpdatePartitionFailureEntry` 物件的清單。

**錯誤**
+ `InvalidInputException`
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `InternalServiceException`
+ `GlueEncryptionException`

## GetColumnStatisticsForPartition 動作 (Python: get\$1column\$1statistics\$1for\$1partition)
<a name="aws-glue-api-catalog-partitions-GetColumnStatisticsForPartition"></a>

擷取欄的分割區統計數字。

此作業所需的 Identity and Access Management (IAM) 許可為 `GetPartition`。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題分區所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區所在的目錄資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區的資料表的名稱。
+ `PartitionValues` – *必要：*UTF-8 字串陣列。

  用於識別分割區的分割區值清單。
+ `ColumnNames` – *必要：*UTF-8 字串的陣列，不可超過 100 個字串。

  欄名稱之清單。

**回應**
+ `ColumnStatisticsList` – 一個 [ColumnStatistics](aws-glue-api-common.md#aws-glue-api-common-ColumnStatistics) 物件陣列。

  無法擷取之 ColumnStatistics 的清單。
+ `Errors` – 一個 [ColumnError](aws-glue-api-common.md#aws-glue-api-common-ColumnError) 物件陣列。

  擷取欄統計數字時發生錯誤。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

## UpdateColumnStatisticsForPartition 動作 (Python: update\$1column\$1statistics\$1for\$1partition)
<a name="aws-glue-api-catalog-partitions-UpdateColumnStatisticsForPartition"></a>

建立或更新欄的分割區統計數字。

此作業所需的 Identity and Access Management (IAM) 許可為 `UpdatePartition`。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題分區所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區所在的目錄資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區的資料表的名稱。
+ `PartitionValues` – *必要：*UTF-8 字串陣列。

  用於識別分割區的分割區值清單。
+ `ColumnStatisticsList` – *必要：*[ColumnStatistics](aws-glue-api-common.md#aws-glue-api-common-ColumnStatistics) 物件的陣列，不可超過 25 個結構。

  欄統計數字的清單。

**回應**
+ `Errors` – 一個 [ColumnStatisticsError](aws-glue-api-common.md#aws-glue-api-common-ColumnStatisticsError) 物件陣列。

  更新欄統計數字時發生錯誤。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

## DeleteColumnStatisticsForPartition 動作 (Python: delete\$1column\$1statistics\$1for\$1partition)
<a name="aws-glue-api-catalog-partitions-DeleteColumnStatisticsForPartition"></a>

刪除欄的分割區欄統計數字。

此作業所需的 Identity and Access Management (IAM) 許可為 `DeletePartition`。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  有問題分區所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區所在的目錄資料庫的名稱。
+ `TableName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  分區的資料表的名稱。
+ `PartitionValues` – *必要：*UTF-8 字串陣列。

  用於識別分割區的分割區值清單。
+ `ColumnName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  欄的名稱。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

# Connections API
<a name="aws-glue-api-catalog-connections"></a>

Connections API 說明與在 中使用連線相關的資料類型和 API AWS Glue。

**Topics**
+ [連線 API](aws-glue-api-catalog-connections-connections.md)
+ [Connection Types API](aws-glue-api-catalog-connections-connections-type.md)
+ [連線中繼資料和預覽 API](aws-glue-api-catalog-connections-connections-metadata.md)

# 連線 API
<a name="aws-glue-api-catalog-connections-connections"></a>

Connection API 說明 AWS Glue 連線資料類型，以及用於建立、刪除、更新和列出連線的 API。

## 資料類型
<a name="aws-glue-api-catalog-connections-connections-objects"></a>
+ [Connection 結構](#aws-glue-api-catalog-connections-connections-Connection)
+ [ConnectionInput 結構](#aws-glue-api-catalog-connections-connections-ConnectionInput)
+ [TestConnectionInput 結構](#aws-glue-api-catalog-connections-connections-TestConnectionInput)
+ [PhysicalConnectionRequirements 結構](#aws-glue-api-catalog-connections-connections-PhysicalConnectionRequirements)
+ [GetConnectionsFilter 結構](#aws-glue-api-catalog-connections-connections-GetConnectionsFilter)
+ [AuthenticationConfiguration](#aws-glue-api-catalog-connections-connections-AuthenticationConfiguration)
+ [AuthenticationConfigurationInput 結構](#aws-glue-api-catalog-connections-connections-AuthenticationConfigurationInput)
+ [OAuth2Properties 結構](#aws-glue-api-catalog-connections-connections-OAuth2Properties)
+ [OAuth2PropertiesInput 結構](#aws-glue-api-catalog-connections-connections-OAuth2PropertiesInput)
+ [OAuth2ClientApplication 結構](#aws-glue-api-catalog-connections-connections-OAuth2ClientApplication)
+ [AuthorizationCodeProperties 結構](#aws-glue-api-catalog-connections-connections-AuthorizationCodeProperties)
+ [BasicAuthenticationCredentials 結構](#aws-glue-api-catalog-connections-connections-BasicAuthenticationCredentials)
+ [OAuth2Credentials 結構](#aws-glue-api-catalog-connections-connections-OAuth2Credentials)

## Connection 結構
<a name="aws-glue-api-catalog-connections-connections-Connection"></a>

定義連接至資料來源的連線

**欄位**
+ `Name` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線定義的名稱。
+ `Description` – 描述字串，長度不可超過 2048 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  此連接的描述。
+ `ConnectionType` – UTF-8 字串 （有效值： `JDBC` \$1 `SFTP` \$1 `MONGODB` \$1 `KAFKA` `NETWORK` \$1 `MARKETPLACE` `CUSTOM` \$1 `SALESFORCE` `VIEW_VALIDATION_REDSHIFT` \$1 `VIEW_VALIDATION_ATHENA` `GOOGLEADS` \$1 `GOOGLESHEETS` \$1 \$1 `GOOGLEANALYTICS4` \$1 \$1 \$1 \$1 \$1 \$1 `SERVICENOW` `MARKETO` `SAPODATA` `ZENDESK` `JIRACLOUD` `NETSUITEERP` `HUBSPOT` `FACEBOOKADS` `INSTAGRAMADS` `ZOHOCRM` \$1 `SALESFORCEPARDOT` \$1 \$1 \$1 \$1 `SALESFORCEMARKETINGCLOUD` \$1 `ADOBEANALYTICS` \$1 \$1 \$1 `SLACK` `LINKEDIN` `MIXPANEL` `ASANA` `STRIPE` `SMARTSHEET` `DATADOG` \$1 `WOOCOMMERCE` \$1 \$1 `INTERCOM` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `ORACLE` \$1 \$1 \$1 `SNAPCHATADS` `PAYPAL` `QUICKBOOKS` `FACEBOOKPAGEINSIGHTS` `FRESHDESK` `TWILIO` `DOCUSIGNMONITOR` `FRESHSALES` `ZOOM` `GOOGLESEARCHCONSOLE` `SALESFORCECOMMERCECLOUD` `SAPCONCUR` `DYNATRACE` `MICROSOFTDYNAMIC365FINANCEANDOPS` `MICROSOFTTEAMS` `BLACKBAUDRAISEREDGENXT` `MAILCHIMP` `GITLAB` `PENDO` `PRODUCTBOARD` `CIRCLECI` `PIPEDIVE` `SENDGRID` `AZURECOSMOS` `AZURESQL` `BIGQUERY` `BLACKBAUD` `CLOUDERAHIVE` `CLOUDERAIMPALA` `CLOUDWATCH` `CLOUDWATCHMETRICS` `CMDB` `DATALAKEGEN2` `DB2` `DB2AS400` `DOCUMENTDB` `DOMO` `DYNAMODB` `GOOGLECLOUDSTORAGE` `HBASE` `KUSTOMER` `MICROSOFTDYNAMICS365CRM` `MONDAY` `MYSQL` `OKTA` `OPENSEARCH` \$1 \$1 `PIPEDRIVE` \$1 \$1 \$1 \$1 `POSTGRESQL` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `SAPHANA` `SQLSERVER` `SYNAPSE` `TERADATA` `TERADATANOS` `TIMESTREAM` `TPCDS` `VERTICA`

  連線的類型。目前不支援 SFTP。
+ `MatchCriteria` – UTF-8 字串的陣列，不可超過 10 個字串。

  用於選擇此連線的條件清單。
+ `ConnectionProperties` – 金鑰值對的對應陣列，不超過 100 對

  每個金鑰均是 UTF-8 字串 (有效值：`HOST` \$1 `PORT` \$1 `USERNAME="USER_NAME"` \$1 `PASSWORD` \$1 `ENCRYPTED_PASSWORD` \$1 `JDBC_DRIVER_JAR_URI` \$1 `JDBC_DRIVER_CLASS_NAME` \$1 `JDBC_ENGINE` \$1 `JDBC_ENGINE_VERSION` \$1 `CONFIG_FILES` \$1 `INSTANCE_ID` \$1 `JDBC_CONNECTION_URL` \$1 `JDBC_ENFORCE_SSL` \$1 `CUSTOM_JDBC_CERT` \$1 `SKIP_CUSTOM_JDBC_CERT_VALIDATION` \$1 `CUSTOM_JDBC_CERT_STRING` \$1 `CONNECTION_URL` \$1 `KAFKA_BOOTSTRAP_SERVERS` \$1 `KAFKA_SSL_ENABLED` \$1 `KAFKA_CUSTOM_CERT` \$1 `KAFKA_SKIP_CUSTOM_CERT_VALIDATION` \$1 `KAFKA_CLIENT_KEYSTORE` \$1 `KAFKA_CLIENT_KEYSTORE_PASSWORD` \$1 `KAFKA_CLIENT_KEY_PASSWORD` \$1 `ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD` \$1 `ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD` \$1 `KAFKA_SASL_MECHANISM` \$1 `KAFKA_SASL_PLAIN_USERNAME` \$1 `KAFKA_SASL_PLAIN_PASSWORD` \$1 `ENCRYPTED_KAFKA_SASL_PLAIN_PASSWORD` \$1 `KAFKA_SASL_SCRAM_USERNAME` \$1 `KAFKA_SASL_SCRAM_PASSWORD` \$1 `KAFKA_SASL_SCRAM_SECRETS_ARN` \$1 `ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD` \$1 `KAFKA_SASL_GSSAPI_KEYTAB` \$1 `KAFKA_SASL_GSSAPI_KRB5_CONF` \$1 `KAFKA_SASL_GSSAPI_SERVICE` \$1 `KAFKA_SASL_GSSAPI_PRINCIPAL` \$1 `SECRET_ID` \$1 `CONNECTOR_URL` \$1 `CONNECTOR_TYPE` \$1 `CONNECTOR_CLASS_NAME` \$1 `ENDPOINT` \$1 `ENDPOINT_TYPE` \$1 `ROLE_ARN` \$1 `REGION` \$1 `WORKGROUP_NAME` \$1 `CLUSTER_IDENTIFIER` \$1 `DATABASE`)。

  每個值均為值字串，長度不可小於 1 個位元組，也不可以超過 1024 個位元組。

  這些金鑰值對定義使用第 1 版連線結構描述時的連線參數：
  + `HOST`- 主機 URI：完整網域名稱 (FQDN) 或資料庫主機 IPv4 地址。
  + `PORT`- 資料庫主機用來監聽資料庫連線之連接埠的連接埠號碼 (介於 1024 和 65535 之間)。
  + `USER_NAME`- 用來登入資料庫的名稱。`USER_NAME` 的值字串為 "`USERNAME`"。
  + `PASSWORD`- 使用者名稱的密碼 (如果有使用)。
  + `ENCRYPTED_PASSWORD` - 當您在 Data Catalog 加密設定中的 `ConnectionPasswordEncryption` 啟用​連線密碼保護時，此欄位存放加密密碼。
  + `JDBC_DRIVER_JAR_URI` - 包含要使用之 JDBC 驅動程式 JAR 檔案的 Amazon Simple Storage Service (Amazon S3) 路徑。
  + `JDBC_DRIVER_CLASS_NAME` - 要使用之 JDBC 驅動程式的類別名稱。
  + `JDBC_ENGINE` - 要使用的 JDBC 引擎名稱。
  + `JDBC_ENGINE_VERSION` - 要使用的 JDBC 引擎版本。
  + `CONFIG_FILES` - (保留以供日後使用)。
  + `INSTANCE_ID`- 要使用的執行個體 ID。
  + `JDBC_CONNECTION_URL` - 連接至 JDBC 資料來源的 URL。
  + `JDBC_ENFORCE_SSL` - 不區分大小寫的布林值字串 (true、false)，會指定是否對用戶端上的 JDBC 連線強制使用主機名稱相符的 Secure Sockets Layer (SSL)。預設值為 false。
  + `CUSTOM_JDBC_CERT` - 指定客戶根憑證的 Amazon S3 位置。 AWS Glue 會在連線至客戶資料庫時使用此根憑證來驗證客戶的憑證。 AWS Glue 只會處理 X.509 憑證。提供的憑證必須為 DER 編碼，並以 Base64 編碼 PEM 格式提供。
  + `SKIP_CUSTOM_JDBC_CERT_VALIDATION` - 根據預設，這是 `false`. AWS Glue 驗證客戶憑證的簽章演算法和主體公有金鑰演算法。簽章演算法允許的演算法僅限 SHA256withRSA、SHA384withRSA 或 SHA512withRSA。針對主體公開金鑰演算法，金鑰長度必須至少為 2048。您可以將此屬性的值設定為 `true` 以略過客戶憑證的 AWS Glue驗證。
  + `CUSTOM_JDBC_CERT_STRING` - 自訂 JDBC 憑證字串，用於網域比對或辨別名稱比對，以防止中間人攻擊。在 Oracle 資料庫中，這會做為 `SSL_SERVER_CERT_DN` 使用；在 Microsoft SQL Server 中，這會做為 `hostNameInCertificate` 使用。
  + `CONNECTION_URL` - 連接至一般 (非 JDBC) 資料來源的 URL。
  + `SECRET_ID` - 用於憑證的秘密管理器的秘密 ID。
  + `CONNECTOR_URL` - MARKETPLACE 或 CUSTOM 連線的連接器 URL。
  + `CONNECTOR_TYPE` - MARKETPLACE 或 CUSTOM 連線的連接器類型。
  + `CONNECTOR_CLASS_NAME` - MARKETPLACE 或 CUSTOM 連線的連接器類別名稱。
  + `KAFKA_BOOTSTRAP_SERVERS` - 主機和連接埠對的逗號分隔清單，列出 Kafka 叢集中 Kafka 用戶端即將連線以引導自身的 Apache Kafka 中介裝置地址。
  + `KAFKA_SSL_ENABLED` - 在 Apache Kafka 連線上啟用或是停用 SSL。預設值為 "true"。
  + `KAFKA_CUSTOM_CERT` - 私有 CA 憑證檔的 Amazon S3 URL (.pem 格式)。預設為空字串。
  + `KAFKA_SKIP_CUSTOM_CERT_VALIDATION` - 是否略過 AWS Glue 三種演算法的 CA 憑證檔案驗證：SHA256withRSA, SHA384withRSA和 SHA512withRSA。預設值為 "false"。
  + `KAFKA_CLIENT_KEYSTORE` - 用於 Kafka 用戶端身分驗證的用戶端金鑰存放區檔案的 Amazon S3 位置 (選用)。
  + `KAFKA_CLIENT_KEYSTORE_PASSWORD` - 存取所提供金鑰存放區的密碼 (選用)。
  + `KAFKA_CLIENT_KEY_PASSWORD` - 金鑰存放區可以由多個金鑰組成，所以這是用來存取用於 Kafka 伺服器端金鑰之用戶端金鑰的密碼 (選用)。
  + `ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD` - Kafka 用戶端金鑰存放區密碼的加密版本 （如果使用者已選取 AWS Glue 加密密碼設定）。
  + `ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD` - Kafka 用戶端金鑰密碼的加密版本 （如果使用者已選取 AWS Glue 加密密碼設定）。
  + `KAFKA_SASL_MECHANISM` - `"SCRAM-SHA-512"`、`"GSSAPI"`、`"AWS_MSK_IAM"` 或 `"PLAIN"`。這些是受支援的 [SASL 機制](https://www.iana.org/assignments/sasl-mechanisms/sasl-mechanisms.xhtml)。
  + `KAFKA_SASL_PLAIN_USERNAME` - 用於藉助 "PLAIN" 機制進行身分驗證的純文字使用者名稱。
  + `KAFKA_SASL_PLAIN_PASSWORD` - 用於藉助 "PLAIN" 機制進行身分驗證的純文字密碼。
  + `ENCRYPTED_KAFKA_SASL_PLAIN_PASSWORD` - Kafka SASL PLAIN 密碼的加密版本 （如果使用者已選取 AWS Glue 加密密碼設定）。
  + `KAFKA_SASL_SCRAM_USERNAME` - 用於藉助 "SCRAM-SHA-512" 機制進行身分驗證的純文字使用者名稱。
  + `KAFKA_SASL_SCRAM_PASSWORD` - 用於藉助 "SCRAM-SHA-512" 機制進行身分驗證的純文字密碼。
  + `ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD` - Kafka SASL SCRAM 密碼的加密版本 （如果使用者已選取 AWS Glue 加密密碼設定）。
  + `KAFKA_SASL_SCRAM_SECRETS_ARN` - AWS Secrets Manager 中秘密的 Amazon Resource Name。
  + `KAFKA_SASL_GSSAPI_KEYTAB` - Kerberos `keytab` 檔案的 S3 位置。Keytab 存放了一個或多個主體的長期金鑰。如需詳細資訊，請參閱 [MIT Kerberos 文件：Keytab](https://web.mit.edu/kerberos/krb5-latest/doc/basic/keytab_def.html)。
  + `KAFKA_SASL_GSSAPI_KRB5_CONF` - Kerberos `krb5.conf` 檔案的 S3 位置。krb5.conf 存放了 Kerberos 組態資訊，例如 KDC 伺服器的位置。如需詳細資訊，請參閱 [MIT Kerberos 文件：krb5.conf](https://web.mit.edu/kerberos/krb5-1.12/doc/admin/conf_files/krb5_conf.html)。
  + `KAFKA_SASL_GSSAPI_SERVICE` - Kerberos 服務名稱，如在 [Kafka 配置](https://kafka.apache.org/documentation/#brokerconfigs_sasl.kerberos.service.name)使用 `sasl.kerberos.service.name` 進行設定。
  + `KAFKA_SASL_GSSAPI_PRINCIPAL` - 所使用的 Kerberos 權限名稱 AWS Glue。如需詳細資訊，請參閱 [Kafka 文件：設定 Kafka 代理程式](https://kafka.apache.org/documentation/#security_sasl_kerberos_clientconfig)。
  + `ROLE_ARN` - 用於執行查詢的角色。
  + `REGION` - 將執行查詢 AWS 的區域。
  + `WORKGROUP_NAME` - 將在其中執行查詢的 Amazon Redshift 無伺服器工作群組或 Amazon Athena 工作群組的名稱。
  + `CLUSTER_IDENTIFIER` - 將在其中執行查詢的 Amazon Redshift 叢集的叢集識別碼。
  + `DATABASE` - 您要連線的 Amazon Redshift 資料庫。
+ `SparkProperties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2,048 個位元組。

  Spark 運算環境特定的連線屬性。
+ `AthenaProperties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2,048 個位元組。

  Athena 運算環境特定的連線屬性。
+ `PythonProperties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2,048 個位元組。

  Python 運算環境特定的連線屬性。
+ `PhysicalConnectionRequirements` – [PhysicalConnectionRequirements](#aws-glue-api-catalog-connections-connections-PhysicalConnectionRequirements) 物件。

  成功建立此連線所需的實體連線需求，例如虛擬私有雲端 (VPC) 和 `SecurityGroup`。
+ `CreationTime` – 時間戳記。

  建立此連線定義的時間的時間戳記。
+ `LastUpdatedTime` – 時間戳記。

  上次更新連線定義的時間戳記。
+ `LastUpdatedBy` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  上一次更新此連線定義的使用者、群組或角色。
+ `Status` – UTF-8 字串 (有效值：`READY` \$1 `IN_PROGRESS` \$1 `FAILED`)。

  連線狀態。可以是下列其中一個：`READY`、`IN_PROGRESS` 或 `FAILED`。
+ `StatusReason` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 16384 個位元組。

  連線狀態的原因。
+ `LastConnectionValidationTime` – 時間戳記。

  上次驗證此連線的時間的時間戳記。
+ `AuthenticationConfiguration` – [AuthenticationConfiguration](#aws-glue-api-catalog-connections-connections-AuthenticationConfiguration) 物件。

  連線的身分驗證屬性。
+ `ConnectionSchemaVersion` – 數字 （整數），不可小於 1 或大於 2。

  此連線的連線結構描述版本。第 2 版支援特定運算環境的屬性。
+ `CompatibleComputeEnvironments` – UTF-8 字串陣列。

  與連線相容的運算環境的清單。

## ConnectionInput 結構
<a name="aws-glue-api-catalog-connections-connections-ConnectionInput"></a>

結構用於指定要建立或更新的連線。

**欄位**
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線的名稱。
+ `Description` – 描述字串，長度不可超過 2048 個位元組，需符合[URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri)。

  此連接的描述。
+ `ConnectionType` – *必要：*UTF-8 字串 （有效值： `JDBC` \$1 `SFTP` \$1 `MONGODB` `KAFKA` \$1 `NETWORK` `MARKETPLACE` \$1 `CUSTOM` \$1 `SALESFORCE` `VIEW_VALIDATION_REDSHIFT` \$1 \$1 `VIEW_VALIDATION_ATHENA` \$1 `GOOGLEADS` \$1 \$1 \$1 \$1 \$1 \$1 `INSTAGRAMADS` \$1 `GOOGLESHEETS` `GOOGLEANALYTICS4` `SERVICENOW` `MARKETO` `SAPODATA` `ZENDESK` `JIRACLOUD` `NETSUITEERP` `HUBSPOT` `FACEBOOKADS` \$1 \$1 \$1 `ZOHOCRM` \$1 \$1 \$1 \$1 `SALESFORCEPARDOT` `SALESFORCEMARKETINGCLOUD` `ADOBEANALYTICS` `SLACK` `LINKEDIN` `MIXPANEL` `ASANA` `STRIPE` \$1 `SMARTSHEET` \$1 \$1 `DATADOG` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `WOOCOMMERCE` `INTERCOM` `SNAPCHATADS` `PAYPAL` `QUICKBOOKS` `FACEBOOKPAGEINSIGHTS` `FRESHDESK` `TWILIO` `DOCUSIGNMONITOR` `FRESHSALES` `ZOOM` `GOOGLESEARCHCONSOLE` `SALESFORCECOMMERCECLOUD` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `SAPCONCUR` `DYNATRACE` `MICROSOFTDYNAMIC365FINANCEANDOPS` `MICROSOFTTEAMS` `BLACKBAUDRAISEREDGENXT` `MAILCHIMP` `GITLAB` `PENDO` `PRODUCTBOARD` `CIRCLECI` `PIPEDIVE` `SENDGRID` `AZURECOSMOS` `AZURESQL` `BIGQUERY` `BLACKBAUD` `CLOUDERAHIVE` `CLOUDERAIMPALA` `CLOUDWATCH` `CLOUDWATCHMETRICS` `CMDB` `DATALAKEGEN2` `DB2` `DB2AS400` `DOCUMENTDB` `DOMO` `DYNAMODB` `GOOGLECLOUDSTORAGE` `HBASE` `KUSTOMER` `MICROSOFTDYNAMICS365CRM` `MONDAY` `MYSQL` `OKTA` \$1 \$1 \$1 `OPENSEARCH` \$1 \$1 \$1 \$1 \$1 \$1 `ORACLE` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `PIPEDRIVE` `POSTGRESQL` `SAPHANA` `SQLSERVER` `SYNAPSE` `TERADATA` `TERADATANOS` `TIMESTREAM` `TPCDS` `VERTICA`

  連線的類型。目前支援這些類型：
  + `JDBC` - 指定透過 Java 資料庫連接 (JDBC) 與資料庫的連線。

    `JDBC` 連線會使用下列 ConnectionParameters。
    + 必要：所有的 (`HOST`、`PORT`、`JDBC_ENGINE`) 或 `JDBC_CONNECTION_URL`。
    + 必要：所有的 (`USERNAME`、`PASSWORD`) 或 `SECRET_ID`。
    + 選用：`JDBC_ENFORCE_SSL`、`CUSTOM_JDBC_CERT`、`CUSTOM_JDBC_CERT_STRING`、`SKIP_CUSTOM_JDBC_CERT_VALIDATION`。這些參數用於使用 JDBC 設定 SSL。
  + `KAFKA` - 指定連至 Apache Kafka 串流平台的連線。

    `KAFKA` 連線會使用下列 ConnectionParameters。
    + 必要：`KAFKA_BOOTSTRAP_SERVERS`。
    + 選用：`KAFKA_SSL_ENABLED`、`KAFKA_CUSTOM_CERT`、`KAFKA_SKIP_CUSTOM_CERT_VALIDATION`。這些參數用於使用 `KAFKA` 設定 SSL。
    + 選用：`KAFKA_CLIENT_KEYSTORE`、`KAFKA_CLIENT_KEYSTORE_PASSWORD`、`KAFKA_CLIENT_KEY_PASSWORD`、`ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD`、`ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD`。這些參數用於在 `KAFKA` 中設定使用 SSL 的 TLS 用戶端組態。
    + 選用：`KAFKA_SASL_MECHANISM`。可指定為 `SCRAM-SHA-512`、`GSSAPI` 或 `AWS_MSK_IAM`。
    + 選用：`KAFKA_SASL_SCRAM_USERNAME`、`KAFKA_SASL_SCRAM_PASSWORD`、`ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD`。這些參數用於使用 `KAFKA` 設定 SASL/SCRAM-SHA-512 驗證。
    + 選用：`KAFKA_SASL_GSSAPI_KEYTAB`、`KAFKA_SASL_GSSAPI_KRB5_CONF`、`KAFKA_SASL_GSSAPI_SERVICE`、`KAFKA_SASL_GSSAPI_PRINCIPAL`。這些參數用於使用 `KAFKA` 設定 SASL/GSSAPI 驗證。
  + `MONGODB` - 指定與 MongoDB 文件資料庫的連接。

    `MONGODB` 連線會使用下列 ConnectionParameters。
    + 必要：`CONNECTION_URL`。
    + 必要：所有的 (`USERNAME`、`PASSWORD`) 或 `SECRET_ID`。
  + `VIEW_VALIDATION_REDSHIFT` - 指定 Amazon Redshift 用於檢視驗證的連線。
  + `VIEW_VALIDATION_ATHENA` - 指定 Amazon Athena 用於檢視驗證的連線。
  + `NETWORK` - 將網路連線指定至 Amazon Virtual Private Cloud 環境 (Amazon VPC) 內的資料來源。

    `NETWORK` 連線不需要 ConnectionParameters，而是需提供 PhysicalConnectionRequirements。
  + `MARKETPLACE` - 使用從 購買的連接器中包含的組態設定 AWS Marketplace ，來讀取和寫入原生不支援的資料存放區 AWS Glue。

    `MARKETPLACE` 連線會使用下列 ConnectionParameters。
    + 必要：`CONNECTOR_TYPE`、`CONNECTOR_URL`、`CONNECTOR_CLASS_NAME`、`CONNECTION_URL`。
    + `JDBC` `CONNECTOR_TYPE` 連線的必要項目：所有的 (`USERNAME`、`PASSWORD`) 或 `SECRET_ID`。
  + `CUSTOM` - 使用自訂連接器中包含的組態設定來讀取和寫入資料存放區，這些資料存放區不受 AWS Glue原生支援。

  如需特定連接器所需連線參數的詳細資訊，請參閱 AWS Glue 《 使用者指南》中的[新增 AWS Glue 連線](https://docs.aws.amazon.com/glue/latest/dg/console-connections.html)中的連接器文件。

  不支援 `SFTP`。

  如需如何使用選用 ConnectionProperties 在 中設定功能的詳細資訊 AWS Glue，請參閱[AWS Glue 連線屬性](https://docs.aws.amazon.com/glue/latest/dg/connection-defining.html)。

  如需如何使用選用 ConnectionProperties 在 AWS Glue Studio 中設定功能的詳細資訊，請參閱[使用連接器和連線](https://docs.aws.amazon.com/glue/latest/ug/connectors-chapter.html)。
+ `MatchCriteria` – UTF-8 字串的陣列，不可超過 10 個字串。

  用於選擇此連線的條件清單。
+ `ConnectionProperties` – *必要：*索引鍵/值對的映射陣列，不可超過 100 對。

  每個金鑰均是 UTF-8 字串 (有效值：`HOST` \$1 `PORT` \$1 `USERNAME="USER_NAME"` \$1 `PASSWORD` \$1 `ENCRYPTED_PASSWORD` \$1 `JDBC_DRIVER_JAR_URI` \$1 `JDBC_DRIVER_CLASS_NAME` \$1 `JDBC_ENGINE` \$1 `JDBC_ENGINE_VERSION` \$1 `CONFIG_FILES` \$1 `INSTANCE_ID` \$1 `JDBC_CONNECTION_URL` \$1 `JDBC_ENFORCE_SSL` \$1 `CUSTOM_JDBC_CERT` \$1 `SKIP_CUSTOM_JDBC_CERT_VALIDATION` \$1 `CUSTOM_JDBC_CERT_STRING` \$1 `CONNECTION_URL` \$1 `KAFKA_BOOTSTRAP_SERVERS` \$1 `KAFKA_SSL_ENABLED` \$1 `KAFKA_CUSTOM_CERT` \$1 `KAFKA_SKIP_CUSTOM_CERT_VALIDATION` \$1 `KAFKA_CLIENT_KEYSTORE` \$1 `KAFKA_CLIENT_KEYSTORE_PASSWORD` \$1 `KAFKA_CLIENT_KEY_PASSWORD` \$1 `ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD` \$1 `ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD` \$1 `KAFKA_SASL_MECHANISM` \$1 `KAFKA_SASL_PLAIN_USERNAME` \$1 `KAFKA_SASL_PLAIN_PASSWORD` \$1 `ENCRYPTED_KAFKA_SASL_PLAIN_PASSWORD` \$1 `KAFKA_SASL_SCRAM_USERNAME` \$1 `KAFKA_SASL_SCRAM_PASSWORD` \$1 `KAFKA_SASL_SCRAM_SECRETS_ARN` \$1 `ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD` \$1 `KAFKA_SASL_GSSAPI_KEYTAB` \$1 `KAFKA_SASL_GSSAPI_KRB5_CONF` \$1 `KAFKA_SASL_GSSAPI_SERVICE` \$1 `KAFKA_SASL_GSSAPI_PRINCIPAL` \$1 `SECRET_ID` \$1 `CONNECTOR_URL` \$1 `CONNECTOR_TYPE` \$1 `CONNECTOR_CLASS_NAME` \$1 `ENDPOINT` \$1 `ENDPOINT_TYPE` \$1 `ROLE_ARN` \$1 `REGION` \$1 `WORKGROUP_NAME` \$1 `CLUSTER_IDENTIFIER` \$1 `DATABASE`)。

  每個值均為值字串，長度不可小於 1 個位元組，也不可以超過 1024 個位元組。

  這些金鑰值對會定義連線的參數。
+ `SparkProperties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2,048 個位元組。

  Spark 運算環境特定的連線屬性。
+ `AthenaProperties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2,048 個位元組。

  Athena 運算環境特定的連線屬性。
+ `PythonProperties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2,048 個位元組。

  Python 運算環境特定的連線屬性。
+ `PhysicalConnectionRequirements` – [PhysicalConnectionRequirements](#aws-glue-api-catalog-connections-connections-PhysicalConnectionRequirements) 物件。

  成功建立此連線所需的實體連線需求，例如虛擬私有雲端 (VPC) 和 `SecurityGroup`。
+ `AuthenticationConfiguration` – [AuthenticationConfigurationInput](#aws-glue-api-catalog-connections-connections-AuthenticationConfigurationInput) 物件。

  連線的身分驗證屬性。
+ `ValidateCredentials` – 布林值。

  在建立連線期間驗證憑證的旗標。預設為 true。
+ `ValidateForComputeEnvironments` – UTF-8 字串陣列。

  驗證指定連線屬性的運算環境。

## TestConnectionInput 結構
<a name="aws-glue-api-catalog-connections-connections-TestConnectionInput"></a>

用於指定測試服務的連線的結構。

**欄位**
+ `ConnectionType` – *必要：*UTF-8 字串 （有效值： `JDBC` \$1 `SFTP` \$1 `MONGODB` `KAFKA` \$1 `NETWORK` `MARKETPLACE` \$1 `CUSTOM` \$1 `SALESFORCE` `VIEW_VALIDATION_REDSHIFT` \$1 `VIEW_VALIDATION_ATHENA` \$1 \$1 `GOOGLEADS` \$1 \$1 \$1 \$1 \$1 `GOOGLESHEETS` `GOOGLEANALYTICS4` `SERVICENOW` `MARKETO` `SAPODATA` `ZENDESK` `JIRACLOUD` `NETSUITEERP` `HUBSPOT` `FACEBOOKADS` \$1 \$1 `INSTAGRAMADS` \$1 \$1 \$1 `ZOHOCRM` \$1 \$1 \$1 \$1 `SALESFORCEPARDOT` `SALESFORCEMARKETINGCLOUD` `ADOBEANALYTICS` `SLACK` `LINKEDIN` `MIXPANEL` `ASANA` `STRIPE` \$1 `SMARTSHEET` \$1 \$1 `DATADOG` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `WOOCOMMERCE` `INTERCOM` `SNAPCHATADS` `PAYPAL` `QUICKBOOKS` `FACEBOOKPAGEINSIGHTS` `FRESHDESK` `TWILIO` `DOCUSIGNMONITOR` `FRESHSALES` `ZOOM` `GOOGLESEARCHCONSOLE` `SALESFORCECOMMERCECLOUD` `SAPCONCUR` `DYNATRACE` `MICROSOFTDYNAMIC365FINANCEANDOPS` `MICROSOFTTEAMS` `BLACKBAUDRAISEREDGENXT` `MAILCHIMP` `GITLAB` `PENDO` `PRODUCTBOARD` `CIRCLECI` `PIPEDIVE` `SENDGRID` `AZURECOSMOS` `AZURESQL` `BIGQUERY` `BLACKBAUD` `CLOUDERAHIVE` `CLOUDERAIMPALA` `CLOUDWATCH` `CLOUDWATCHMETRICS` `CMDB` `DATALAKEGEN2` `DB2` `DB2AS400` `DOCUMENTDB` `DOMO` `DYNAMODB` `GOOGLECLOUDSTORAGE` `HBASE` `KUSTOMER` `MICROSOFTDYNAMICS365CRM` `MONDAY` `MYSQL` `OKTA` \$1 \$1 \$1 \$1 \$1 \$1 `OPENSEARCH` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `ORACLE` `PIPEDRIVE` `POSTGRESQL` `SAPHANA` `SQLSERVER` `SYNAPSE` `TERADATA` `TERADATANOS` `TIMESTREAM` `TPCDS` `VERTICA`

  要測試的連線類型。此操作僅適用於 `JDBC` 或 `SALESFORCE` 連線類型。
+ `ConnectionProperties` – *必要：*索引鍵/值對的映射陣列，不可超過 100 對。

  每個金鑰均是 UTF-8 字串 (有效值：`HOST` \$1 `PORT` \$1 `USERNAME="USER_NAME"` \$1 `PASSWORD` \$1 `ENCRYPTED_PASSWORD` \$1 `JDBC_DRIVER_JAR_URI` \$1 `JDBC_DRIVER_CLASS_NAME` \$1 `JDBC_ENGINE` \$1 `JDBC_ENGINE_VERSION` \$1 `CONFIG_FILES` \$1 `INSTANCE_ID` \$1 `JDBC_CONNECTION_URL` \$1 `JDBC_ENFORCE_SSL` \$1 `CUSTOM_JDBC_CERT` \$1 `SKIP_CUSTOM_JDBC_CERT_VALIDATION` \$1 `CUSTOM_JDBC_CERT_STRING` \$1 `CONNECTION_URL` \$1 `KAFKA_BOOTSTRAP_SERVERS` \$1 `KAFKA_SSL_ENABLED` \$1 `KAFKA_CUSTOM_CERT` \$1 `KAFKA_SKIP_CUSTOM_CERT_VALIDATION` \$1 `KAFKA_CLIENT_KEYSTORE` \$1 `KAFKA_CLIENT_KEYSTORE_PASSWORD` \$1 `KAFKA_CLIENT_KEY_PASSWORD` \$1 `ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD` \$1 `ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD` \$1 `KAFKA_SASL_MECHANISM` \$1 `KAFKA_SASL_PLAIN_USERNAME` \$1 `KAFKA_SASL_PLAIN_PASSWORD` \$1 `ENCRYPTED_KAFKA_SASL_PLAIN_PASSWORD` \$1 `KAFKA_SASL_SCRAM_USERNAME` \$1 `KAFKA_SASL_SCRAM_PASSWORD` \$1 `KAFKA_SASL_SCRAM_SECRETS_ARN` \$1 `ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD` \$1 `KAFKA_SASL_GSSAPI_KEYTAB` \$1 `KAFKA_SASL_GSSAPI_KRB5_CONF` \$1 `KAFKA_SASL_GSSAPI_SERVICE` \$1 `KAFKA_SASL_GSSAPI_PRINCIPAL` \$1 `SECRET_ID` \$1 `CONNECTOR_URL` \$1 `CONNECTOR_TYPE` \$1 `CONNECTOR_CLASS_NAME` \$1 `ENDPOINT` \$1 `ENDPOINT_TYPE` \$1 `ROLE_ARN` \$1 `REGION` \$1 `WORKGROUP_NAME` \$1 `CLUSTER_IDENTIFIER` \$1 `DATABASE`)。

  每個值均為值字串，長度不可小於 1 個位元組，也不可以超過 1024 個位元組。

  定義連線參數的金鑰值對。

  JDBC 連線使用下列連線屬性：
  + 必要：所有的 (`HOST`、`PORT`、`JDBC_ENGINE`) 或 `JDBC_CONNECTION_URL`。
  + 必要：所有的 (`USERNAME`、`PASSWORD`) 或 `SECRET_ID`。
  + 選用：`JDBC_ENFORCE_SSL`、`CUSTOM_JDBC_CERT`、`CUSTOM_JDBC_CERT_STRING`、`SKIP_CUSTOM_JDBC_CERT_VALIDATION`。這些參數用於使用 JDBC 設定 SSL。

  SALESFORCE 連線需要設定 `AuthenticationConfiguration` 成員。
+ `AuthenticationConfiguration` – [AuthenticationConfigurationInput](#aws-glue-api-catalog-connections-connections-AuthenticationConfigurationInput) 物件。

  包含 TestConnection 請求中身分驗證組態的結構。使用 OAuth 身分驗證連線至 Salesforce 時需要。

## PhysicalConnectionRequirements 結構
<a name="aws-glue-api-catalog-connections-connections-PhysicalConnectionRequirements"></a>

GetConnection 回應中的 OAuth 用戶端應用程式。

**欄位**
+ `SubnetId` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線使用的子網路 ID。
+ `SecurityGroupIdList` – UTF-8 字串的陣列，不可超過 50 個字串。

  連線使用的安全群組 ID 清單。
+ `AvailabilityZone` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線的可用區域。

## GetConnectionsFilter 結構
<a name="aws-glue-api-catalog-connections-connections-GetConnectionsFilter"></a>

篩選 `GetConnections` API 操作傳回的連線定義。

**欄位**
+ `MatchCriteria` – UTF-8 字串的陣列，不可超過 10 個字串。

  條件字串必須符合連線定義中記錄的條件，才能傳回該連線定義。
+ `ConnectionType` – UTF-8 字串 （有效值： `JDBC` \$1 `SFTP` \$1 `MONGODB` \$1 `KAFKA` `NETWORK` \$1 `MARKETPLACE` `CUSTOM` \$1 `SALESFORCE` `VIEW_VALIDATION_REDSHIFT` \$1 `VIEW_VALIDATION_ATHENA` `GOOGLEADS` \$1 `GOOGLESHEETS` \$1 \$1 `GOOGLEANALYTICS4` \$1 `SERVICENOW` \$1 \$1 \$1 \$1 \$1 `MARKETO` `SAPODATA` `ZENDESK` `JIRACLOUD` `NETSUITEERP` `HUBSPOT` `FACEBOOKADS` `INSTAGRAMADS` `ZOHOCRM` \$1 \$1 `SALESFORCEPARDOT` \$1 \$1 `SALESFORCEMARKETINGCLOUD` \$1 \$1 `ADOBEANALYTICS` \$1 \$1 \$1 `SLACK` `LINKEDIN` `MIXPANEL` `ASANA` `STRIPE` `SMARTSHEET` `DATADOG` \$1 \$1 `WOOCOMMERCE` \$1 `INTERCOM` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `SNAPCHATADS` `PAYPAL` `QUICKBOOKS` `FACEBOOKPAGEINSIGHTS` `FRESHDESK` `TWILIO` `DOCUSIGNMONITOR` `FRESHSALES` `ZOOM` `GOOGLESEARCHCONSOLE` `SALESFORCECOMMERCECLOUD` `SAPCONCUR` \$1 `DYNATRACE` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `ORACLE` \$1 \$1 \$1 `MICROSOFTDYNAMIC365FINANCEANDOPS` `MICROSOFTTEAMS` `BLACKBAUDRAISEREDGENXT` `MAILCHIMP` `GITLAB` `PENDO` `PRODUCTBOARD` `CIRCLECI` `PIPEDIVE` `SENDGRID` `AZURECOSMOS` `AZURESQL` `BIGQUERY` `BLACKBAUD` `CLOUDERAHIVE` `CLOUDERAIMPALA` `CLOUDWATCH` `CLOUDWATCHMETRICS` `CMDB` `DATALAKEGEN2` `DB2` `DB2AS400` `DOCUMENTDB` `DOMO` `DYNAMODB` `GOOGLECLOUDSTORAGE` `HBASE` `KUSTOMER` `MICROSOFTDYNAMICS365CRM` `MONDAY` `MYSQL` `OKTA` `OPENSEARCH` \$1 \$1 \$1 `PIPEDRIVE` \$1 \$1 \$1 `POSTGRESQL` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `SAPHANA` `SQLSERVER` `SYNAPSE` `TERADATA` `TERADATANOS` `TIMESTREAM` `TPCDS` `VERTICA`

  傳回的連線類型。目前不支援 SFTP。
+ `ConnectionSchemaVersion` – 數字 （整數），不可小於 1 或大於 2。

  表示連線是使用結構描述第 1 版還是第 2 版建立。

## AuthenticationConfiguration
<a name="aws-glue-api-catalog-connections-connections-AuthenticationConfiguration"></a>

包含身分驗證組態的結構。

**欄位**
+ `AuthenticationType` – UTF-8 字串 (有效值：`BASIC` \$1 `OAUTH2` \$1 `CUSTOM` \$1 `IAM`)。

  包含身分驗證組態的結構。
+ `SecretArn` – UTF-8 字串，需符合[Custom string pattern #36](aws-glue-api-common.md#regex_36)。

  用於儲存憑證的 Secret Manager ARN。
+ `KmsKeyArn` – UTF-8 字串，需符合[Custom string pattern #42](aws-glue-api-common.md#regex_42)。

  用於加密敏感身分驗證資訊的 KMS 金鑰的 Amazon Resource Name (ARN)。此金鑰用於保護儲存在身分驗證組態中的憑證和其他敏感資料。
+ `OAuth2Properties` – [OAuth2Properties](#aws-glue-api-catalog-connections-connections-OAuth2Properties) 物件。

  OAuth2 身分驗證的屬性。

## AuthenticationConfigurationInput 結構
<a name="aws-glue-api-catalog-connections-connections-AuthenticationConfigurationInput"></a>

CreateConnection 請求中包含身分驗證組態的結構。

**欄位**
+ `AuthenticationType` – UTF-8 字串 (有效值：`BASIC` \$1 `OAUTH2` \$1 `CUSTOM` \$1 `IAM`)。

  CreateConnection 請求中包含身分驗證組態的結構。
+ `OAuth2Properties` – [OAuth2PropertiesInput](#aws-glue-api-catalog-connections-connections-OAuth2PropertiesInput) 物件。

  CreateConnection 請求中的 OAuth2 身分驗證的屬性。
+ `SecretArn` – UTF-8 字串，需符合[Custom string pattern #36](aws-glue-api-common.md#regex_36)。

  用於在 CreateConnection 請求中儲存憑證的 Secret Manager ARN。
+ `KmsKeyArn` – UTF-8 字串，需符合[Custom string pattern #42](aws-glue-api-common.md#regex_42)。

  用於加密連線的 KMS 金鑰的 ARN。僅作為請求中的輸入並儲存在 Secret Manager 中。
+ `BasicAuthenticationCredentials` – [BasicAuthenticationCredentials](#aws-glue-api-catalog-connections-connections-BasicAuthenticationCredentials) 物件。

  身分驗證類型為基本身分驗證時使用的憑證。
+ `CustomAuthenticationCredentials` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2,048 個位元組。

  身分驗證類型為自訂身分驗證時使用的憑證。

## OAuth2Properties 結構
<a name="aws-glue-api-catalog-connections-connections-OAuth2Properties"></a>

包含 OAuth2 身分驗證屬性的結構。

**欄位**
+ `OAuth2GrantType` – UTF-8 字串 (有效值：`AUTHORIZATION_CODE` \$1 `CLIENT_CREDENTIALS` \$1 `JWT_BEARER`)。

  OAuth2 授權類型。例如，`AUTHORIZATION_CODE`、`JWT_BEARER` 或 `CLIENT_CREDENTIALS`。
+ `OAuth2ClientApplication` – [OAuth2ClientApplication](#aws-glue-api-catalog-connections-connections-OAuth2ClientApplication) 物件。

  用戶端應用程式類型。例如，AWS\$1MANAGED 或 USER\$1MANAGED。
+ `TokenUrl` – UTF-8 字串，長度不可超過 256 個位元組，且需符合 [Custom string pattern #40](aws-glue-api-common.md#regex_40)。

  供應商身分驗證伺服器的 URL，用於交換存取字符的授權碼。
+ `TokenUrlParametersMap` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 512 個位元組。

  新增至字符 `GET` 請求的參數映射。

## OAuth2PropertiesInput 結構
<a name="aws-glue-api-catalog-connections-connections-OAuth2PropertiesInput"></a>

CreateConnection 請求中包含 OAuth2 屬性的結構。

**欄位**
+ `OAuth2GrantType` – UTF-8 字串 (有效值：`AUTHORIZATION_CODE` \$1 `CLIENT_CREDENTIALS` \$1 `JWT_BEARER`)。

  CreateConnection 請求中的 OAuth2 授權類型。例如，`AUTHORIZATION_CODE`、`JWT_BEARER` 或 `CLIENT_CREDENTIALS`。
+ `OAuth2ClientApplication` – [OAuth2ClientApplication](#aws-glue-api-catalog-connections-connections-OAuth2ClientApplication) 物件。

  CreateConnection 請求中的用戶端應用程式類型。例如 `AWS_MANAGED` 或 `USER_MANAGED`。
+ `TokenUrl` – UTF-8 字串，長度不可超過 256 個位元組，且需符合 [Custom string pattern #40](aws-glue-api-common.md#regex_40)。

  供應商身分驗證伺服器的 URL，用於交換存取字符的授權碼。
+ `TokenUrlParametersMap` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 512 個位元組。

  新增至字符 `GET` 請求的參數映射。
+ `AuthorizationCodeProperties` – [AuthorizationCodeProperties](#aws-glue-api-catalog-connections-connections-AuthorizationCodeProperties) 物件。

  OAuth2 `AUTHORIZATION_CODE` 授權類型所需的屬性集。
+ `OAuth2Credentials` – [OAuth2Credentials](#aws-glue-api-catalog-connections-connections-OAuth2Credentials) 物件。

  身分驗證類型為 OAuth2 身分驗證時使用的憑證。

## OAuth2ClientApplication 結構
<a name="aws-glue-api-catalog-connections-connections-OAuth2ClientApplication"></a>

用於連線的 OAuth2 用戶端應用程式。

**欄位**
+ `UserManagedClientApplicationClientId` – UTF-8 字串，長度不可超過 2048 個位元組，且需符合 [Custom string pattern #37](aws-glue-api-common.md#regex_37)。

  用戶端應用程式 clientID (如果 ClientAppType 為 `USER_MANAGED`)。
+ `AWSManagedClientApplicationReference` – UTF-8 字串，長度不可超過 2048 個位元組，且需符合 [Custom string pattern #37](aws-glue-api-common.md#regex_37)。

   AWS 受管 SaaS 端用戶端應用程式的參考。

## AuthorizationCodeProperties 結構
<a name="aws-glue-api-catalog-connections-connections-AuthorizationCodeProperties"></a>

OAuth2 `AUTHORIZATION_CODE` 授權類型工作流程所需的屬性集。

**欄位**
+ `AuthorizationCode` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 4096 個位元組，需符合 [Custom string pattern #37](aws-glue-api-common.md#regex_37)。

  在 `AUTHORIZATION_CODE` 授權工作流程的第三階段中使用的授權碼。這是單次使用的程式碼，一旦交換存取字符就會失效，因此可以接受此值作為請求參數。
+ `RedirectUri` – UTF-8 字串，長度不可超過 512 個位元組，需符合 [Custom string pattern #41](aws-glue-api-common.md#regex_41)。

  使用者在發出授權碼時被授權伺服器重新導向至的重新導向 URI。授權碼交換為存取字符時，會接著使用 URI。

## BasicAuthenticationCredentials 結構
<a name="aws-glue-api-catalog-connections-connections-BasicAuthenticationCredentials"></a>

用於在未提供 `SecretArn` 值時提供基本身分驗證憑證。

**欄位**
+ `Username` – UTF-8 字串，長度不可超過 512 個位元組，需符合 [Custom string pattern #37](aws-glue-api-common.md#regex_37)。

  連線至資料來源的使用者名稱。
+ `Password` – UTF-8 字串，長度不可超過 512 個位元組，需符合 [Custom string pattern #33](aws-glue-api-common.md#regex_33)。

  連線至資料來源的密碼。

## OAuth2Credentials 結構
<a name="aws-glue-api-catalog-connections-connections-OAuth2Credentials"></a>

身分驗證類型為 OAuth2 身分驗證時使用的憑證。

**欄位**
+ `UserManagedClientApplicationClientSecret` – UTF-8 字串，長度不可超過 512 個位元組，需符合 [Custom string pattern #38](aws-glue-api-common.md#regex_38)。

  用戶端應用程式用戶端機密 (如果用戶端應用程式由使用者管理)。
+ `AccessToken` – UTF-8 字串，長度不可超過 4096 個位元組，需符合 [Custom string pattern #38](aws-glue-api-common.md#regex_38)。

  身分驗證類型為 OAuth2 時使用的存取字符。
+ `RefreshToken` – UTF-8 字串，長度不可超過 4096 個位元組，需符合 [Custom string pattern #38](aws-glue-api-common.md#regex_38)。

  身分驗證類型為 OAuth2 時使用的重新整理字符。
+ `JwtToken` – UTF-8 字串，長度不可超過 8000 個位元組，需符合 [Custom string pattern #39](aws-glue-api-common.md#regex_39)。

  當身分驗證類型為 OAuth2 時使用的 JSON Web Token (JWT)。

## 作業
<a name="aws-glue-api-catalog-connections-connections-actions"></a>
+ [CreateConnection 動作 (Python: create\$1connection)](#aws-glue-api-catalog-connections-connections-CreateConnection)
+ [DeleteConnection 動作 (Python: delete\$1connection)](#aws-glue-api-catalog-connections-connections-DeleteConnection)
+ [GetConnection 動作 (Python: get\$1connection)](#aws-glue-api-catalog-connections-connections-GetConnection)
+ [GetConnections 動作 (Python: get\$1connections)](#aws-glue-api-catalog-connections-connections-GetConnections)
+ [UpdateConnection 動作 (Python: update\$1connection)](#aws-glue-api-catalog-connections-connections-UpdateConnection)
+ [TestConnection 動作 (Python：test\$1connection)](#aws-glue-api-catalog-connections-connections-TestConnection)
+ [BatchDeleteConnection 動作 (Python: batch\$1delete\$1connection)](#aws-glue-api-catalog-connections-connections-BatchDeleteConnection)

## CreateConnection 動作 (Python: create\$1connection)
<a name="aws-glue-api-catalog-connections-connections-CreateConnection"></a>

在 Data Catalog 中建立連線定義。

用於建立聯合資源的連線需要 IAM `glue:PassConnection` 許可。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於建立連線的 Data Catalog 之 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `ConnectionInput` – *必要：*[ConnectionInput](#aws-glue-api-catalog-connections-connections-ConnectionInput) 物件。

  用於定義所要建立的連線的 `ConnectionInput` 物件。
+ `Tags` – 金鑰值對的映射陣列，不超過 50 對。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 UTF-8 字串，長度不可超過 256 個位元組。

  指派給連線的標籤。

**回應**
+ `CreateConnectionStatus` – UTF-8 字串 (有效值：`READY` \$1 `IN_PROGRESS` \$1 `FAILED`)。

  連線建立請求的狀態。對於某些身分驗證類型，請求可能需要一些時間，例如在透過 VPC 建立具有字符交換的 OAuth 連線時。

**錯誤**
+ `AlreadyExistsException`
+ `InvalidInputException`
+ `OperationTimeoutException`
+ `ResourceNumberLimitExceededException`
+ `GlueEncryptionException`

## DeleteConnection 動作 (Python: delete\$1connection)
<a name="aws-glue-api-catalog-connections-connections-DeleteConnection"></a>

從 Data Catalog 刪除連線。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線所在的 Data Catalog 之 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `ConnectionName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  欲刪除的連線的名稱。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `OperationTimeoutException`

## GetConnection 動作 (Python: get\$1connection)
<a name="aws-glue-api-catalog-connections-connections-GetConnection"></a>

從 Data Catalog 擷取連線定義

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線所在的 Data Catalog 之 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  欲擷取的連線定義的名稱。
+ `HidePassword` – 布林值。

  可讓您擷取連線中繼資料，無需傳回密碼。例如， AWS Glue 主控台會使用此旗標來擷取連線，而不會顯示密碼。當發起人可能沒有使用 AWS KMS 金鑰解密密碼的許可，但確實具有存取其餘連線屬性的許可時，請設定此參數。
+ `ApplyOverrideForComputeEnvironment` – UTF-8 字串 (有效值：`SPARK` \$1 `ATHENA` \$1 `PYTHON`)。

  對於可能在多個服務中使用的連線，指定所指定運算環境的傳回屬性。

**回應**
+ `Connection` – [連線](#aws-glue-api-catalog-connections-connections-Connection) 物件。

  要求的連線定義。

**錯誤**
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `GlueEncryptionException`

## GetConnections 動作 (Python: get\$1connections)
<a name="aws-glue-api-catalog-connections-connections-GetConnections"></a>

從 Data Catalog 擷取連線定義清單。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線所在的 Data Catalog 之 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `Filter` – [GetConnectionsFilter](#aws-glue-api-catalog-connections-connections-GetConnectionsFilter) 物件。

  用於控制將傳回哪些連線的篩選條件。
+ `HidePassword` – 布林值。

  可讓您擷取連線中繼資料，無需傳回密碼。例如， AWS Glue 主控台會使用此旗標來擷取連線，而不會顯示密碼。當發起人可能沒有使用 AWS KMS 金鑰解密密碼的許可，但確實具有存取其餘連線屬性的許可時，請設定此參數。
+ `NextToken` – UTF-8 字串。

  接續符記，如果這是接續呼叫。
+ `MaxResults` – 數字 (整數)，不可小於 1，也不可以大於 1000。

  一次回應傳回的最大連線數量。

**回應**
+ `ConnectionList` – 一個 [連線](#aws-glue-api-catalog-connections-connections-Connection) 物件陣列。

  要求的連線定義的清單。
+ `NextToken` – UTF-8 字串。

  接續符記 (如果傳回的連線清單不包括最後篩選的連線)。

**錯誤**
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `GlueEncryptionException`

## UpdateConnection 動作 (Python: update\$1connection)
<a name="aws-glue-api-catalog-connections-connections-UpdateConnection"></a>

更新 Data Catalog 中的連線定義。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線所在的 Data Catalog 之 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  欲更新的連線定義的名稱。
+ `ConnectionInput` – *必要：*[ConnectionInput](#aws-glue-api-catalog-connections-connections-ConnectionInput) 物件。

  用於重新定義有問題的連線的 `ConnectionInput` 物件。

**回應**
+ *無回應參數。*

**錯誤**
+ `InvalidInputException`
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `GlueEncryptionException`

## TestConnection 動作 (Python：test\$1connection)
<a name="aws-glue-api-catalog-connections-connections-TestConnection"></a>

測試服務的連線，以驗證您提供的服務憑證。

您可以提供現有的連線名稱或 `TestConnectionInput` 來測試不存在的連線輸入。同時提供兩者會導致錯誤。

如果動作成功，則服務傳回 HTTP 200 回應。

**請求**
+ `ConnectionName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  選用。測試連線的名稱。如果僅提供名稱，操作會取得連線並使用其進行測試。
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線所在的目錄 ID。
+ `TestConnectionInput` – [TestConnectionInput](#aws-glue-api-catalog-connections-connections-TestConnectionInput) 物件。

  用於指定測試服務的連線的結構。

**回應**
+ *無回應參數。*

**錯誤**
+ `InvalidInputException`
+ `OperationTimeoutException`
+ `ResourceNumberLimitExceededException`
+ `GlueEncryptionException`
+ `FederationSourceException`
+ `AccessDeniedException`
+ `EntityNotFoundException`
+ `ConflictException`
+ `InternalServiceException`

## BatchDeleteConnection 動作 (Python: batch\$1delete\$1connection)
<a name="aws-glue-api-catalog-connections-connections-BatchDeleteConnection"></a>

從 Data Catalog 刪除連線定義清單。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線所在的 Data Catalog 之 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `ConnectionNameList` – *必要：*UTF-8 字串的陣列，不可超過 25 個字串。

  欲刪除的連線名稱的清單。

**回應**
+ `Succeeded` – UTF-8 字串陣列。

  已成功刪除的連線定義名稱清單。
+ `Errors` – 金鑰值對的映射陣列。

  每個金鑰都是 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  每個值都是 [ErrorDetail](aws-glue-api-common.md#aws-glue-api-common-ErrorDetail) 物件。

  未成功刪除的連線名稱與錯誤詳細資訊的映射。

**錯誤**
+ `InternalServiceException`
+ `OperationTimeoutException`

# Connection Types API
<a name="aws-glue-api-catalog-connections-connections-type"></a>

連線類型 API 說明與描述連線類型相關的 AWS Glue APIs。

## Connection Management API
<a name="aws-glue-api-catalog-connections-connections-type-connection-management"></a>
+ [DescribeConnectionType 動作 (Python：describe\$1connection\$1type)](#aws-glue-api-catalog-connections-connections-type-DescribeConnectionType)
+ [ListConnectionTypes 動作 (Python：list\$1connection\$1types)](#aws-glue-api-catalog-connections-connections-type-ListConnectionTypes)
+ [ConnectionTypeBrief 結構](#aws-glue-api-catalog-connections-connections-type-ConnectionTypeBrief)
+ [ConnectionTypeVariant 結構](#aws-glue-api-catalog-connections-connections-type-ConnectionTypeVariant)

## DescribeConnectionType 動作 (Python：describe\$1connection\$1type)
<a name="aws-glue-api-catalog-connections-connections-type-DescribeConnectionType"></a>

`DescribeConnectionType` API 提供 AWS Glue中所指定連線類型的支援選項的完整詳細資訊。

**請求**
+ `ConnectionType` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要描述的連線類型名稱。

**回應**
+ `ConnectionType` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  連線類型的名稱。
+ `Description` – UTF-8 字串，長度不可超過 1024 個位元組。

  連線類型的描述。
+ `Capabilities` – [功能](#aws-glue-api-catalog-connections-connections-type-Capabilities) 物件。

  連接器支援的身分驗證類型、資料介面類型 (運算環境) 和資料操作。
+ `ConnectionProperties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 [屬性](#aws-glue-api-catalog-connections-connections-type-Property) 物件。

  運算環境中通用的連線屬性。
+ `ConnectionOptions` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 [屬性](#aws-glue-api-catalog-connections-connections-type-Property) 物件。

  傳回在 `ConnectionInput.ConnectionProperties` 中建立連線時可設定的屬性。`ConnectionOptions` 定義可在傳遞至資料框的連線選項映射中的 Spark ETL 指令碼中設定的參數。
+ `AuthenticationConfiguration` – [AuthConfiguration](#aws-glue-api-catalog-connections-connections-type-AuthConfiguration) 物件。

  用於連線的身分驗證類型。
+ `ComputeEnvironmentConfigurations` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 [ComputeEnvironmentConfiguration](#aws-glue-api-catalog-connections-connections-type-ComputeEnvironmentConfiguration) 物件。

  連線支援的運算環境。
+ `PhysicalConnectionRequirements` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 [屬性](#aws-glue-api-catalog-connections-connections-type-Property) 物件。

  連線的實體需求，例如 VPC、子網路和安全群組規格。
+ `AthenaConnectionProperties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 [屬性](#aws-glue-api-catalog-connections-connections-type-Property) 物件。

  Athena 運算環境特定的連線屬性。
+ `PythonConnectionProperties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 [屬性](#aws-glue-api-catalog-connections-connections-type-Property) 物件。

  Python 運算環境特定的連線屬性。
+ `SparkConnectionProperties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 [屬性](#aws-glue-api-catalog-connections-connections-type-Property) 物件。

  Spark 運算環境特定的連線屬性。

**錯誤**
+ `ValidationException`
+ `InvalidInputException`
+ `InternalServiceException`

## ListConnectionTypes 動作 (Python：list\$1connection\$1types)
<a name="aws-glue-api-catalog-connections-connections-type-ListConnectionTypes"></a>

`ListConnectionTypes` API 提供了一種探索機制來了解 AWS Glue中可用的連線類型。回應包含連線類型的清單，其中包含每種連線類型支援的高階詳細資訊。列出的連線類型是 `CreateConnection` API 中 `ConnectionType` 值的一組支援選項。

**請求**
+ `MaxResults` – 數字 (整數)，不可小於 1，也不可以大於 1000。

  回傳結果的數量上限。
+ `NextToken` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2048 個位元組，需符合[Custom string pattern #11](aws-glue-api-common.md#regex_11)。

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

**回應**
+ `ConnectionTypes` – 一個 [ConnectionTypeBrief](#aws-glue-api-catalog-connections-connections-type-ConnectionTypeBrief) 物件陣列。

  `ConnectionTypeBrief` 物件清單，其中包含所支援連線類型的簡短資訊。
+ `NextToken` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2048 個位元組，需符合[Custom string pattern #11](aws-glue-api-common.md#regex_11)。

  接續字元 (如果目前清單區段不是最後一個)。

**錯誤**
+ `InternalServiceException`

## ConnectionTypeBrief 結構
<a name="aws-glue-api-catalog-connections-connections-type-ConnectionTypeBrief"></a>

`ListConnectionTypes` API 傳回的支援連線類型的簡短資訊。

**欄位**
+ `ConnectionType` – UTF-8 字串 （有效值： `JDBC` \$1 `SFTP` \$1 `MONGODB` \$1 `KAFKA` `NETWORK` \$1 `MARKETPLACE` `CUSTOM` \$1 `SALESFORCE` `VIEW_VALIDATION_REDSHIFT` \$1 `VIEW_VALIDATION_ATHENA` `GOOGLEADS` \$1 `GOOGLESHEETS` \$1 \$1 `GOOGLEANALYTICS4` \$1 \$1 \$1 \$1 \$1 \$1 `SERVICENOW` `MARKETO` `SAPODATA` `ZENDESK` `JIRACLOUD` `NETSUITEERP` `HUBSPOT` `FACEBOOKADS` `INSTAGRAMADS` `ZOHOCRM` \$1 \$1 `SALESFORCEPARDOT` \$1 \$1 \$1 `SALESFORCEMARKETINGCLOUD` \$1 `ADOBEANALYTICS` \$1 \$1 \$1 `SLACK` `LINKEDIN` `MIXPANEL` `ASANA` `STRIPE` `SMARTSHEET` `DATADOG` \$1 `WOOCOMMERCE` \$1 \$1 `INTERCOM` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `SNAPCHATADS` `PAYPAL` `QUICKBOOKS` `FACEBOOKPAGEINSIGHTS` `FRESHDESK` `TWILIO` `DOCUSIGNMONITOR` `FRESHSALES` `ZOOM` `GOOGLESEARCHCONSOLE` `SALESFORCECOMMERCECLOUD` `SAPCONCUR` \$1 `DYNATRACE` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `ORACLE` \$1 \$1 \$1 `MICROSOFTDYNAMIC365FINANCEANDOPS` `MICROSOFTTEAMS` `BLACKBAUDRAISEREDGENXT` `MAILCHIMP` `GITLAB` `PENDO` `PRODUCTBOARD` `CIRCLECI` `PIPEDIVE` `SENDGRID` `AZURECOSMOS` `AZURESQL` `BIGQUERY` `BLACKBAUD` `CLOUDERAHIVE` `CLOUDERAIMPALA` `CLOUDWATCH` `CLOUDWATCHMETRICS` `CMDB` `DATALAKEGEN2` `DB2` `DB2AS400` `DOCUMENTDB` `DOMO` `DYNAMODB` `GOOGLECLOUDSTORAGE` `HBASE` `KUSTOMER` `MICROSOFTDYNAMICS365CRM` `MONDAY` `MYSQL` `OKTA` `OPENSEARCH` \$1 \$1 \$1 \$1 `PIPEDRIVE` \$1 \$1 `POSTGRESQL` \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1 `SAPHANA` `SQLSERVER` `SYNAPSE` `TERADATA` `TERADATANOS` `TIMESTREAM` `TPCDS` `VERTICA`

  連線類型的名稱。
+ `DisplayName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  顯示在 AWS Glue 主控台中連線類型的可供人類讀取的名稱。
+ `Vendor` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  建立或維護此連線類型的廠商或供應商名稱。
+ `Description` – UTF-8 字串，長度不可超過 1024 個位元組。

  連線類型的描述。
+ `Categories` – .

  此連線類型所屬的類別清單。類別可協助使用者根據使用案例篩選和尋找適當的連線類型。
+ `Capabilities` – [功能](#aws-glue-api-catalog-connections-connections-type-Capabilities) 物件。

  連接器支援的身分驗證類型、資料介面類型 (運算環境) 和資料操作。
+ `LogoUrl` – UTF-8 字串。

  與連線類型關聯的標誌 URL。
+ `ConnectionTypeVariants` – 一個 [ConnectionTypeVariant](#aws-glue-api-catalog-connections-connections-type-ConnectionTypeVariant) 物件陣列。

  此連線類型可用的變體清單。不同的變體可能會針對特定使用案例或相同一般連線類型的實作，提供特殊組態。

## ConnectionTypeVariant 結構
<a name="aws-glue-api-catalog-connections-connections-type-ConnectionTypeVariant"></a>

代表 AWS Glue Data Catalog 中連線類型的變體。連線類型變體為相同一般連線類型的不同實作提供了特定的組態和行為。

**欄位**
+ `ConnectionTypeVariantName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  連線類型變體的唯一識別碼。此名稱會在內部用於識別連線類型的特定變體。
+ `DisplayName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

   AWS Glue 主控台中顯示的連線類型變體的人類可讀取名稱。
+ `Description` – UTF-8 字串，長度不可超過 1024 個位元組。

  連線類型變體的詳細描述，包括其用途、使用案例和任何特定組態需求。
+ `LogoUrl` – UTF-8 字串。

  與連線類型變體關聯的標誌 URL。

## 資料類型
<a name="aws-glue-api-catalog-connections-connections-type-connection-types"></a>
+ [驗證結構](#aws-glue-api-catalog-connections-connections-type-Validation)
+ [AuthConfiguration 結構](#aws-glue-api-catalog-connections-connections-type-AuthConfiguration)
+ [功能結構](#aws-glue-api-catalog-connections-connections-type-Capabilities)
+ [屬性結構](#aws-glue-api-catalog-connections-connections-type-Property)
+ [AllowedValue 結構](#aws-glue-api-catalog-connections-connections-type-AllowedValue)
+ [ComputeEnvironmentConfiguration 結構](#aws-glue-api-catalog-connections-connections-type-ComputeEnvironmentConfiguration)

## 驗證結構
<a name="aws-glue-api-catalog-connections-connections-type-Validation"></a>

定義如何在連線屬性上執行驗證。

**欄位**
+ `ValidationType` – *必要：*UTF-8 字串 (有效值：`REGEX` \$1 `RANGE`)。

  要執行的驗證類型，例如 `REGEX`。
+ `Patterns` – .

  套用至驗證的模式清單。
+ `Description` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 1024 個位元組。

  驗證的描述。
+ `MaxLength` – 數字 (整數)。

  字串連線屬性的長度上限。
+ `Maximum` – 數字 (整數)。

  指定 `RANGE` 類型驗證時的最大值。
+ `Minimum` – 數字 (整數)。

  指定 `RANGE` 類型驗證時的最小值。

## AuthConfiguration 結構
<a name="aws-glue-api-catalog-connections-connections-type-AuthConfiguration"></a>

`DescribeConnectionType` API 傳回的連線的身分驗證組態。

**欄位**
+ `AuthenticationType` – *必要：*[屬性](#aws-glue-api-catalog-connections-connections-type-Property) 物件。

  用於連線的身分驗證類型。
+ `SecretArn` – [屬性](#aws-glue-api-catalog-connections-connections-type-Property) 物件。

  Secrets Manager 的 Amazon Resource Name (ARN)。
+ `OAuth2Properties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 [屬性](#aws-glue-api-catalog-connections-connections-type-Property) 物件。

  OAuth2 屬性的金鑰值對映射。每個值都是 `Property` 物件。
+ `BasicAuthenticationProperties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 [屬性](#aws-glue-api-catalog-connections-connections-type-Property) 物件。

  OAuth2 屬性的金鑰值對映射。每個值都是 `Property` 物件。
+ `CustomAuthenticationProperties` – 金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 [屬性](#aws-glue-api-catalog-connections-connections-type-Property) 物件。

  自訂身分驗證屬性的金鑰值對映射。每個值都是 `Property` 物件。

## 功能結構
<a name="aws-glue-api-catalog-connections-connections-type-Capabilities"></a>

指定 `DescribeConnectionType` API 傳回的支援的身分驗證類型。

**欄位**
+ `SupportedAuthenticationTypes` – *必要：*UTF-8 字串陣列。

  支援的身分驗證類型清單。
+ `SupportedDataOperations` – *必要：*UTF-8 字串陣列。

  支援的資料操作清單。
+ `SupportedComputeEnvironments` – *必要：*UTF-8 字串陣列。

  支援的運算環境清單。

## 屬性結構
<a name="aws-glue-api-catalog-connections-connections-type-Property"></a>

定義運算環境連線類型的物件。

**欄位**
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  屬性的名稱。
+ `Description` – *必要：*UTF-8 字串，長度不可超過 1024 個位元組。

  屬性的描述。
+ `Required` – *必要：*布林值。

  指示屬性是否為必要。
+ `PropertyTypes` – *必要：*UTF-8 字串陣列。

  描述屬性的類型。
+ `AllowedValues` – 一個 [AllowedValue](#aws-glue-api-catalog-connections-connections-type-AllowedValue) 物件陣列。

  `AllowedValue` 物件清單，代表屬性允許的值。
+ `DataOperationScopes` – UTF-8 字串陣列。

  指出哪些資料操作適用於屬性。

## AllowedValue 結構
<a name="aws-glue-api-catalog-connections-connections-type-AllowedValue"></a>

代表屬性允許值的物件。

**欄位**
+ `Description` – UTF-8 字串，長度不可超過 1024 個位元組。

  允許值的描述。
+ `Value` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  屬性允許的值。

## ComputeEnvironmentConfiguration 結構
<a name="aws-glue-api-catalog-connections-connections-type-ComputeEnvironmentConfiguration"></a>

包含 `DescribeConnectionType` API 傳回的運算環境 (例如 Spark、Python 或 Athena) 組態的物件。

**欄位**
+ `Name` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  運算環境組態的名稱。
+ `Description` – *必要：*UTF-8 字串，長度不可超過 1024 個位元組。

  運算環境的描述。
+ `ComputeEnvironment` – *必要：*UTF-8 字串 (有效值：`SPARK` \$1 `ATHENA` \$1 `PYTHON`)。

  運算環境類型。
+ `SupportedAuthenticationTypes` – *必要：*UTF-8 字串陣列。

  運算環境的支援的身分驗證類型。
+ `ConnectionOptions` – *必要：*金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值都是 [屬性](#aws-glue-api-catalog-connections-connections-type-Property) 物件。

  用作運算環境連線選項的參數。
+ `ConnectionPropertyNameOverrides` – *必要：*金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  連線屬性名稱會覆寫運算環境。
+ `ConnectionOptionNameOverrides` – *必要：*金鑰值對的映射陣列。

  每個金鑰均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  每個值均為 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 128 個位元組。

  連線選項名稱會覆寫運算環境。
+ `ConnectionPropertiesRequiredOverrides` – *必要：*。

  運算環境的覆寫所需的連線屬性。
+ `PhysicalConnectionPropertiesRequired` – 布林值。

  指出運算環境是否需要 `PhysicalConnectionProperties`。

# 連線中繼資料和預覽 API
<a name="aws-glue-api-catalog-connections-connections-metadata"></a>

下列連線 API 說明用於描述連線中繼資料的操作。

## 資料類型
<a name="aws-glue-api-catalog-connections-connections-metadata-objects"></a>
+ [實體結構](#aws-glue-api-catalog-connections-connections-metadata-Entity)
+ [欄位結構](#aws-glue-api-catalog-connections-connections-metadata-Field)

## 實體結構
<a name="aws-glue-api-catalog-connections-connections-metadata-Entity"></a>

所指定 `ConnectionType` 支援的實體。

**欄位**
+ `EntityName` – UTF-8 字串。

  實體的名稱。
+ `Label` – UTF-8 字串。

  用於實體的標籤。
+ `IsParentEntity` – 布林值。

  布林值，有助於判斷是否有可列出的子物件。
+ `Description` – UTF-8 字串。

  實體的描述。
+ `Category` – UTF-8 字串。

  回應中存在的實體類型。此值取決於來源連線。例如，這是 Salesforce 的 `SObjects`，及 Amazon Redshift 等來源的 `databases`、`schemas` 或 `tables`。
+ `CustomProperties` – 

  連接器可能為實體傳回的選用金鑰映射。

## 欄位結構
<a name="aws-glue-api-catalog-connections-connections-metadata-Field"></a>

`Field` 物件具有與連接器中欄位關聯的不同屬性的相關資訊。

**欄位**
+ `FieldName` – UTF-8 字串。

  欄位的唯一識別碼。
+ `Label` – UTF-8 字串。

  用於欄位的可讀取標籤。
+ `Description` – UTF-8 字串。

  欄位的描述。
+ `FieldType` – UTF-8 字串 (有效值：`INT` \$1 `SMALLINT` \$1 `BIGINT` \$1 `FLOAT` \$1 `LONG` \$1 `DATE` \$1 `BOOLEAN` \$1 `MAP` \$1 `ARRAY` \$1 `STRING` \$1 `TIMESTAMP` \$1 `DECIMAL` \$1 `BYTE` \$1 `SHORT` \$1 `DOUBLE` \$1 `STRUCT`)。

  欄位中的資料類型。
+ `IsPrimaryKey` – 布林值。

  指出此欄位是否可以用作所指定實體的主索引鍵。
+ `IsNullable` – 布林值。

  指出此欄位是否可為 null。
+ `IsRetrievable` – 布林值。

  指出是否可以在 SQL 查詢的 Select 子句中新增此欄位，或是否可以擷取。
+ `IsFilterable` – 布林值。

   指出此欄位是否可以在查詢資料時用於 SQL 陳述式的篩選條件子句 (`WHERE` 子句)。
+ `IsPartitionable` – 布林值。

  指出所指定欄位是否可用於分區對 SaaS 進行的查詢。
+ `IsCreateable` – 布林值。

  指示此欄位是否可以作為目的地寫入的一部分進行建立。
+ `IsUpdateable` – 布林值。

  指出此欄位是否可以作為目的地寫入的一部分進行更新。
+ `IsUpsertable` – 布林值。

  指出此欄位是否可以作為目的地寫入的一部分進行更新插入。
+ `IsDefaultOnCreate` – 布林值。

  指出此欄位是否在建立物件時自動填入，例如在時間戳記建立。
+ `SupportedValues` – .

  此欄位的支援值清單。
+ `SupportedFilterOperators` – UTF-8 字串陣列。

  指出此欄位的支援篩選條件運算子。
+ `CustomProperties` – 

  可傳回的選用金鑰映射。

## 作業
<a name="aws-glue-api-catalog-connections-connections-metadata-actions"></a>
+ [ListEntities 動作 (Python：list\$1entities)](#aws-glue-api-catalog-connections-connections-metadata-ListEntities)
+ [DescribeEntity 動作 (Python：describe\$1entity)](#aws-glue-api-catalog-connections-connections-metadata-DescribeEntity)
+ [GetEntityRecords 動作 (Python：get\$1entity\$1records)](#aws-glue-api-catalog-connections-connections-metadata-GetEntityRecords)

## ListEntities 動作 (Python：list\$1entities)
<a name="aws-glue-api-catalog-connections-connections-metadata-ListEntities"></a>

傳回連線類型支援的可用實體。

**請求**
+ `ConnectionName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  具有查詢任何連線類型所需憑證的連線名稱。
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  包含連線的目錄的目錄 ID。這可以是 null，根據預設， AWS 帳戶 ID 是目錄 ID。
+ `ParentEntityName` – UTF-8 字串。

  您要列出子項的父實體名稱。此參數會取得實體的完整路徑，以列出子實體。
+ `NextToken` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2048 個位元組，需符合[Custom string pattern #11](aws-glue-api-common.md#regex_11)。

  接續符記，如果這是接續呼叫，將會包含在內。
+ `DataStoreApiVersion` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 256 個位元組，且需符合 [Custom string pattern #23](aws-glue-api-common.md#regex_23)。

  SaaS 連接器的 API 版本。

**回應**
+ `Entities` – 一個 [實體](#aws-glue-api-catalog-connections-connections-metadata-Entity) 物件陣列。

  `Entity` 物件的清單。
+ `NextToken` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2048 個位元組，需符合[Custom string pattern #11](aws-glue-api-common.md#regex_11)。

  接續字符，如果目前區段不是最後一個，將會出現此接續字符。

**錯誤**
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `GlueEncryptionException`
+ `ValidationException`
+ `FederationSourceException`
+ `AccessDeniedException`

## DescribeEntity 動作 (Python：describe\$1entity)
<a name="aws-glue-api-catalog-connections-connections-metadata-DescribeEntity"></a>

提供有關與連線類型搭配使用的實體的詳細資訊，以及所選實體中每個欄位的資料模型描述。

 回應包含組成實體的所有欄位。

**請求**
+ `ConnectionName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  包含連線類型憑證的連線名稱。
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  包含連線的目錄的目錄 ID。這可以是 null，根據預設， AWS 帳戶 ID 是目錄 ID。
+ `EntityName` – *必要：*UTF-8 字串。

  要從連線類型描述的實體名稱。
+ `NextToken` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2048 個位元組，需符合[Custom string pattern #11](aws-glue-api-common.md#regex_11)。

  接續符記，如果這是接續呼叫，將會包含在內。
+ `DataStoreApiVersion` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 256 個位元組，且需符合 [Custom string pattern #23](aws-glue-api-common.md#regex_23)。

  用於資料存放區的 API 版本。

**回應**
+ `Fields` – 一個 [欄位](#aws-glue-api-catalog-connections-connections-metadata-Field) 物件陣列。

  描述該連接器實體的欄位。這是 `Field` 物件清單。`Field` 與資料庫中的資料欄非常相似。`Field` 物件具有有關與連接器中欄位關聯的不同屬性的資訊。
+ `NextToken` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2048 個位元組，需符合[Custom string pattern #11](aws-glue-api-common.md#regex_11)。

  接續字符，如果目前區段不是最後一個，將會出現此接續字符。

**錯誤**
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `GlueEncryptionException`
+ `ValidationException`
+ `FederationSourceException`
+ `AccessDeniedException`

## GetEntityRecords 動作 (Python：get\$1entity\$1records)
<a name="aws-glue-api-catalog-connections-connections-metadata-GetEntityRecords"></a>

此 API 用於查詢來自指定連線類型或原生 Amazon S3 型 AWS Glue 資料目錄的預覽資料。

以 JSON Blob 陣列傳回記錄。每個記錄都會根據 `DescribeEntity` API 定義的欄位類型，使用 Jackson JsonNode 進行格式化。

Spark 連接器會根據與 `DescribeEntity` API 中相同的資料類型映射產生結構描述。Spark 連接器會在傳回資料列時，將資料轉換為符合結構描述的適當的資料類型。

**請求**
+ `ConnectionName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  包含連線類型憑證的連線名稱。
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  包含連線的目錄的目錄 ID。這可以是 null，根據預設， AWS 帳戶 ID 是目錄 ID。
+ `EntityName` – *必要：*UTF-8 字串。

  要從所指定連線類型查詢預覽資料的實體名稱。
+ `NextToken` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2048 個位元組，需符合[Custom string pattern #11](aws-glue-api-common.md#regex_11)。

  接續符記，如果這是接續呼叫，將會包含在內。
+ `DataStoreApiVersion` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 256 個位元組，且需符合 [Custom string pattern #23](aws-glue-api-common.md#regex_23)。

  SaaS 連接器的 API 版本。
+ `ConnectionOptions` – 金鑰值對的映射陣列，不超過 100 對。

  每個金鑰都是 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 256 個位元組，需符合 [Custom string pattern #18](aws-glue-api-common.md#regex_18)。

  每個值都是 UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 256 個位元組，需符合 [Custom string pattern #17](aws-glue-api-common.md#regex_17)。

  查詢資料所需的連接器選項。
+ `FilterPredicate` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 100000 個位元組。

  您可以在查詢請求中套用的篩選條件述詞。
+  `Limit` – *必要：*數字 (長整數)，不可小於 1，也不可以大於 1,000。

  限制透過請求擷取的記錄數目。
+ `SelectedFields` – UTF-8 字串陣列，不可小於 1 個或超過 1000 個字串。

   要擷取作為預覽資料一部分的欄位清單。

**回應**
+ `Records` – 結構的陣列。

  要求的 物件的清單。
+ `NextToken` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 2048 個位元組，需符合[Custom string pattern #11](aws-glue-api-common.md#regex_11)。

  接續字符，如果目前區段不是最後一個，將會出現此接續字符。

**錯誤**
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `InvalidInputException`
+ `GlueEncryptionException`
+ `ValidationException`
+ `FederationSourceException`
+ `AccessDeniedException`

# 使用者定義的函數 API
<a name="aws-glue-api-catalog-functions"></a>

使用者定義的函數 API 說明用於使用函數的 AWS Glue 資料類型和操作。

## 資料類型
<a name="aws-glue-api-catalog-functions-objects"></a>
+ [UserDefinedFunction 結構](#aws-glue-api-catalog-functions-UserDefinedFunction)
+ [UserDefinedFunctionInput 結構](#aws-glue-api-catalog-functions-UserDefinedFunctionInput)

## UserDefinedFunction 結構
<a name="aws-glue-api-catalog-functions-UserDefinedFunction"></a>

此結構相當於 Hive 使用者定義函數 (`UDF`) 定義。

**欄位**
+ `FunctionName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  函數的名稱。
+ `DatabaseName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  包含函數的目錄資料庫名稱。
+ `ClassName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  包含函數程式碼的 Java 類別。
+ `OwnerName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  函數的擁有者。
+ `OwnerType` – UTF-8 字串 (有效值：`USER` \$1 `ROLE` \$1 `GROUP`)。

  擁有者類型。
+ `CreateTime` – 時間戳記。

  函數建立的時間。
+ `ResourceUris` – 一個 [ResourceUri](aws-glue-api-common.md#aws-glue-api-common-ResourceUri) 物件陣列，不可超過 1000 個結構。

  函數的資源 URI。
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  函數所在的 Data Catalog 之 ID。

## UserDefinedFunctionInput 結構
<a name="aws-glue-api-catalog-functions-UserDefinedFunctionInput"></a>

用於建立或更新使用者定義函數的結構。

**欄位**
+ `FunctionName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  函數的名稱。
+ `ClassName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  包含函數程式碼的 Java 類別。
+ `OwnerName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  函數的擁有者。
+ `OwnerType` – UTF-8 字串 (有效值：`USER` \$1 `ROLE` \$1 `GROUP`)。

  擁有者類型。
+ `ResourceUris` – 一個 [ResourceUri](aws-glue-api-common.md#aws-glue-api-common-ResourceUri) 物件陣列，不可超過 1000 個結構。

  函數的資源 URI。

## 作業
<a name="aws-glue-api-catalog-functions-actions"></a>
+ [CreateUserDefinedFunction 動作 (Python: create\$1user\$1defined\$1function)](#aws-glue-api-catalog-functions-CreateUserDefinedFunction)
+ [UpdateUserDefinedFunction 動作 (Python: update\$1user\$1defined\$1function)](#aws-glue-api-catalog-functions-UpdateUserDefinedFunction)
+ [DeleteUserDefinedFunction 動作 (Python: delete\$1user\$1defined\$1function)](#aws-glue-api-catalog-functions-DeleteUserDefinedFunction)
+ [GetUserDefinedFunction 動作 (Python: get\$1user\$1defined\$1function)](#aws-glue-api-catalog-functions-GetUserDefinedFunction)
+ [GetUserDefinedFunctions 動作 (Python: get\$1user\$1defined\$1functions)](#aws-glue-api-catalog-functions-GetUserDefinedFunctions)

## CreateUserDefinedFunction 動作 (Python: create\$1user\$1defined\$1function)
<a name="aws-glue-api-catalog-functions-CreateUserDefinedFunction"></a>

在 Data Catalog 建立新的函數定義。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於建立函數的 Data Catalog 之 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  用於建立函數的目錄資料庫之名稱。
+ `FunctionInput` – *必要：*[UserDefinedFunctionInput](#aws-glue-api-catalog-functions-UserDefinedFunctionInput) 物件。

  定義在 Data Catalog 中所建立函數的 `FunctionInput` 物件。

**回應**
+ *無回應參數。*

**錯誤**
+ `AlreadyExistsException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `EntityNotFoundException`
+ `OperationTimeoutException`
+ `ResourceNumberLimitExceededException`
+ `GlueEncryptionException`

## UpdateUserDefinedFunction 動作 (Python: update\$1user\$1defined\$1function)
<a name="aws-glue-api-catalog-functions-UpdateUserDefinedFunction"></a>

更新 Data Catalog 中現有的函數定義

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要更新函數所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  欲更新函數所在的目錄資料庫之名稱。
+ `FunctionName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  函數的名稱。
+ `FunctionInput` – *必要：*[UserDefinedFunctionInput](#aws-glue-api-catalog-functions-UserDefinedFunctionInput) 物件。

  一個 `FunctionInput` 物件，可在 Data Catalog 內重新定義函數。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

## DeleteUserDefinedFunction 動作 (Python: delete\$1user\$1defined\$1function)
<a name="aws-glue-api-catalog-functions-DeleteUserDefinedFunction"></a>

從 Data Catalog 刪除現有的函數定義

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  欲刪除函數所在的 Data Catalog 之 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  函數所在的目錄資料庫之名稱。
+ `FunctionName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  欲刪除的函數定義之名稱。

**回應**
+ *無回應參數。*

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`

## GetUserDefinedFunction 動作 (Python: get\$1user\$1defined\$1function)
<a name="aws-glue-api-catalog-functions-GetUserDefinedFunction"></a>

從 Data Catalog 擷取指定的函數定義

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要擷取函數所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  函數所在的目錄資料庫之名稱。
+ `FunctionName` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  函數的名稱。

**回應**
+ `UserDefinedFunction` – [UserDefinedFunction](#aws-glue-api-catalog-functions-UserDefinedFunction) 物件。

  要求的函數定義。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`

## GetUserDefinedFunctions 動作 (Python: get\$1user\$1defined\$1functions)
<a name="aws-glue-api-catalog-functions-GetUserDefinedFunctions"></a>

從 Data Catalog 擷取多函數定義。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  要擷取函數所在 Data Catalog 的 ID。如果未提供，預設會使用 AWS 帳戶 ID。
+ `DatabaseName` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  函數所在的目錄資料庫之名稱。如果沒有提供，則會傳回來自目錄中所有資料庫的函數。
+ `Pattern` – *必要：*UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，且需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  一種選用的函數名稱模式字串，可篩選傳回的函數定義。
+ `NextToken` – UTF-8 字串。

  接續符記，如果這是接續呼叫。
+ `MaxResults` – 數字 (整數)，不可小於 1，也不可以大於 100。

  一次回應傳回函數的最大數量。

**回應**
+ `UserDefinedFunctions` – 一個 [UserDefinedFunction](#aws-glue-api-catalog-functions-UserDefinedFunction) 物件陣列。

  要求的函數定義之清單。
+ `NextToken` – UTF-8 字串。

  接續符記 (如果傳回的函數清單不包括最後要求的函數)。

**錯誤**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `OperationTimeoutException`
+ `InternalServiceException`
+ `GlueEncryptionException`

# 將 Athena 目錄匯入至 AWS Glue
<a name="aws-glue-api-catalog-migration"></a>

遷移 API 說明與遷移 Athena 資料目錄相關的 AWS Glue 資料類型和操作 AWS Glue。

## 資料類型
<a name="aws-glue-api-catalog-migration-objects"></a>
+ [CatalogImportStatus 結構](#aws-glue-api-catalog-migration-CatalogImportStatus)

## CatalogImportStatus 結構
<a name="aws-glue-api-catalog-migration-CatalogImportStatus"></a>

結構包含移轉狀態資訊。

**欄位**
+ `ImportCompleted` – 布林值。

  如果移轉完成為 `True`，否則為 `False`。
+ `ImportTime` – 時間戳記。

  移轉開始進行的時間。
+ `ImportedBy` – UTF-8 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  啟動移轉的人員名稱。

## 作業
<a name="aws-glue-api-catalog-migration-actions"></a>
+ [ImportCatalogToGlue 動作 (Python: import\$1catalog\$1to\$1glue)](#aws-glue-api-catalog-migration-ImportCatalogToGlue)
+ [GetCatalogImportStatus 動作 (Python: get\$1catalog\$1import\$1status)](#aws-glue-api-catalog-migration-GetCatalogImportStatus)

## ImportCatalogToGlue 動作 (Python: import\$1catalog\$1to\$1glue)
<a name="aws-glue-api-catalog-migration-ImportCatalogToGlue"></a>

將現有的 Amazon Athena Data Catalog 匯入至 AWS Glue。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  欲匯入的目錄的 ID。目前，這應該是 AWS 帳戶 ID。

**回應**
+ *無回應參數。*

**錯誤**
+ `InternalServiceException`
+ `OperationTimeoutException`

## GetCatalogImportStatus 動作 (Python: get\$1catalog\$1import\$1status)
<a name="aws-glue-api-catalog-migration-GetCatalogImportStatus"></a>

擷取移轉操作的狀態。

**請求**
+ `CatalogId` – 目錄 ID 字串，長度不可小於 1 個位元組，也不可以超過 255 個位元組，需符合[Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine)。

  欲移轉的目錄的 ID。目前，這應該是 AWS 帳戶 ID。

**回應**
+ `ImportStatus` – [CatalogImportStatus](#aws-glue-api-catalog-migration-CatalogImportStatus) 物件。

  指定的目錄移轉的狀態。

**錯誤**
+ `InternalServiceException`
+ `OperationTimeoutException`