本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Catalogs API
Catalogs API 說明用於建立、刪除、尋找、更新和列出型錄的 API。
資料類型
型錄結構
目錄物件代表 AWS Glue Data Catalog 或聯合來源中資料庫的邏輯分組。您現在可以建立 Redshift 聯合型錄或包含其他帳戶或區域中 Redshift 資料庫的資源連結的型錄。
欄位
-
CatalogId– 目錄 ID 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。型錄的 ID。若要授予對預設型錄的存取權,不應提供此欄位。
-
Name– 必要:UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 64 個位元組,需符合 Custom string pattern #25。型錄的名稱。不能與帳戶 ID 相同。
-
ResourceArn– UTF-8 字串。指派給型錄資源的 Amazon Resource Name (ARN)。
-
Description– 描述字串,長度不可超過 2048 個位元組,需符合URI address multi-line string pattern。描述字串,長度不可超過 2048 個位元組,需符合 URI 位址多行字串模式。型錄的描述。
-
Parameters– 金鑰值對的對應陣列。每個金鑰都是金鑰字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。
每個值都是 UTF-8 字串,長度不可超過 512000 個位元組。
定義型錄參數和屬性的金鑰/值對的映射陣列。
-
CreateTime– 時間戳記。型錄建立的時間。
-
UpdateTime– 時間戳記。上次更新型錄的時間。
-
TargetRedshiftCatalog– TargetRedshiftCatalog 物件。描述資料庫資源連結的目標型錄的
TargetRedshiftCatalog物件。 -
FederatedCatalog– FederatedCatalog 物件。指向 AWS Glue Data Catalog 外部實體的
FederatedCatalog物件。 -
CatalogProperties– CatalogPropertiesOutput 物件。指定資料湖存取屬性和其他自訂屬性的
CatalogProperties物件。 -
CreateTableDefaultPermissions– 一個 PrincipalPermissions 物件陣列。PrincipalPermissions物件的陣列。為主體在資料表上建立一組預設許可。使用者 AWS Lake Formation。在正常 AWS Glue 操作過程中不使用。 -
CreateDatabaseDefaultPermissions– 一個 PrincipalPermissions 物件陣列。PrincipalPermissions物件的陣列。為主體在資料庫上建立一組預設許可。使用者 AWS Lake Formation。在正常 AWS Glue 操作過程中不使用。 -
AllowFullTableExternalDataAccess– UTF-8 字串 (有效值:True|False)。允許第三方引擎存取向 Lake Formation 註冊 Amazon S3 的位置中的資料。
CatalogInput 結構
描述型錄屬性的結構。
欄位
-
Description– 描述字串,長度不可超過 2048 個位元組,需符合URI address multi-line string pattern。描述字串,長度不可超過 2048 個位元組,需符合 URI 位址多行字串模式。型錄的描述。
-
FederatedCatalog– FederatedCatalog 物件。FederatedCatalog物件。參考 AWS Glue Data Catalog 外部實體的FederatedCatalog結構,例如 Redshift 資料庫。 -
Parameters– 金鑰值對的對應陣列。每個金鑰都是金鑰字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。
每個值都是 UTF-8 字串,長度不可超過 512000 個位元組。
定義型錄參數和屬性的金鑰/值對的映射陣列。
-
TargetRedshiftCatalog– TargetRedshiftCatalog 物件。描述資源連結的目標型錄的
TargetRedshiftCatalog物件。 -
CatalogProperties– CatalogProperties 物件。指定資料湖存取屬性和其他自訂屬性的
CatalogProperties物件。 -
CreateTableDefaultPermissions– 一個 PrincipalPermissions 物件陣列。PrincipalPermissions物件的陣列。為主體在資料表上建立一組預設許可。使用者 AWS Lake Formation。通常應明確設定為空白清單。 -
CreateDatabaseDefaultPermissions– 一個 PrincipalPermissions 物件陣列。PrincipalPermissions物件的陣列。為主體在資料庫上建立一組預設許可。使用者 AWS Lake Formation。通常應明確設定為空白清單。 -
AllowFullTableExternalDataAccess– UTF-8 字串 (有效值:True|False)。允許第三方引擎存取向 Lake Formation 註冊 Amazon S3 的位置中的資料。
TargetRedshiftCatalog 結構
描述資源連結的目標型錄的結構。
欄位
-
CatalogArn– 必要:UTF-8 字串。型錄資源的 Amazon Resource Name (ARN)。
CatalogProperties 結構
指定資料湖存取屬性和其他自訂屬性的結構。
欄位
-
DataLakeAccessProperties– DataLakeAccessProperties 物件。指定屬性的
DataLakeAccessProperties物件,以設定 Data Catalog 中目錄資源 AWS Glue 的資料湖存取。 -
IcebergOptimizationProperties– IcebergOptimizationProperties 物件。指定型錄的 Iceberg 資料表最佳化屬性的結構。其中包括壓縮、保留和孤立檔案刪除操作的組態,可套用至此型錄中的 Iceberg 資料表。
-
CustomProperties– 金鑰值對的對應陣列。每個金鑰都是金鑰字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。
每個值都是 UTF-8 字串,長度不可超過 512000 個位元組。
型錄的其他金鑰值屬性,例如資料欄統計資料最佳化。
CatalogPropertiesOutput 結構
內容屬性,其中包含型錄資源的組態屬性。
欄位
-
DataLakeAccessProperties– DataLakeAccessPropertiesOutput 物件。具有輸入屬性的
DataLakeAccessProperties物件,可設定 Data Catalog 中目錄資源 AWS Glue 的資料湖存取。 -
IcebergOptimizationProperties– IcebergOptimizationPropertiesOutput 物件。用於指定型錄 Iceberg 資料表最佳化設定的
IcebergOptimizationPropertiesOutput物件,包括壓縮、保留和孤立檔案刪除操作的組態。 -
CustomProperties– 金鑰值對的對應陣列。每個金鑰都是金鑰字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。
每個值都是 UTF-8 字串,長度不可超過 512000 個位元組。
型錄的其他金鑰值屬性,例如資料欄統計資料最佳化。
DataLakeAccessProperties 結構
輸入屬性,以設定 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 ,用於在查詢期間將資料傳入/傳出預備儲存貯體。
-
KmsKey– UTF-8 字串。加密金鑰,將用於將與型錄一起建立的暫存儲存貯體。
-
CatalogType– UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。為原生型錄資源指定聯合型錄類型。目前支援的類型為
aws:redshift。
IcebergOptimizationProperties 結構
指定型錄的 Iceberg 資料表最佳化屬性的結構,包括壓縮、保留和孤立檔案刪除操作的組態。
欄位
-
RoleArn– UTF-8 字串,需符合Custom string pattern #53。將擔任以執行 Iceberg 資料表最佳化操作之 IAM 角色的 Amazon Resource Name (ARN)。
-
Compaction– 金鑰值對的對應陣列。每個金鑰都是金鑰字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。
每個值都是 UTF-8 字串,長度不可超過 512000 個位元組。
金鑰值對的映射,用於指定 Iceberg 資料表壓縮操作的組態參數,可最佳化資料檔案的佈局,以改善查詢效能。
-
Retention– 金鑰值對的對應陣列。每個金鑰都是金鑰字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。
每個值都是 UTF-8 字串,長度不可超過 512000 個位元組。
金鑰值對的映射,用於指定 Iceberg 資料表保留操作的組態參數,以管理資料表快照的生命週期來控制儲存成本。
-
OrphanFileDeletion– 金鑰值對的對應陣列。每個金鑰都是金鑰字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。
每個值都是 UTF-8 字串,長度不可超過 512000 個位元組。
金鑰值對的映射,用於指定 Iceberg 孤立檔案刪除操作的組態參數,以識別和移除資料表中繼資料不再參考的檔案。
DataLakeAccessPropertiesOutput 結構
Data Catalog 中目錄資源的資料湖存取組態的輸出屬性 AWS Glue 。
欄位
-
DataLakeAccess– 布林值。開啟或關閉在 Data Catalog 中存取 Amazon Redshift 資料庫的 Apache Spark 應用程式的資料湖存取。
-
DataTransferRole– UTF-8 字串,需符合Custom string pattern #53。將擔任的角色 AWS Glue ,用於在查詢期間將資料傳入/傳出預備儲存貯體。
-
KmsKey– UTF-8 字串。加密金鑰,將用於將與型錄一起建立的暫存儲存貯體。
-
ManagedWorkgroupName– UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。為您的型錄資源建立的受管 Redshift Serverless 運算名稱。
-
ManagedWorkgroupStatus– UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。受管 Redshift Serverless 運算狀態。
-
RedshiftDatabaseName– UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。受管運算中的預設 Redshift 資料庫資源名稱。
-
StatusMessage– UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。可提供受管工作群組狀態詳細資訊的訊息。
-
CatalogType– UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。為原生型錄資源指定聯合型錄類型。目前支援的類型為
aws:redshift。
IcebergOptimizationPropertiesOutput 結構
包含 AWS Glue Data Catalog 中目錄資源 Iceberg 資料表最佳化組態的輸出屬性的結構。
欄位
-
RoleArn– UTF-8 字串,需符合Custom string pattern #53。用於執行 Iceberg 資料表最佳化操作的 IAM 角色的 Amazon Resource Name (ARN)。
-
Compaction– 金鑰值對的對應陣列。每個金鑰都是金鑰字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。
每個值都是 UTF-8 字串,長度不可超過 512000 個位元組。
金鑰值對的映射,用於指定 Iceberg 資料表壓縮操作的組態參數,可最佳化資料檔案的佈局,以改善查詢效能。
-
Retention– 金鑰值對的對應陣列。每個金鑰都是金鑰字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。
每個值都是 UTF-8 字串,長度不可超過 512000 個位元組。
金鑰值對的映射,用於指定 Iceberg 資料表保留操作的組態參數,以管理資料表快照的生命週期來控制儲存成本。
-
OrphanFileDeletion– 金鑰值對的對應陣列。每個金鑰都是金鑰字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。
每個值都是 UTF-8 字串,長度不可超過 512000 個位元組。
金鑰值對的映射,用於指定 Iceberg 孤立檔案刪除操作的組態參數,以識別和移除資料表中繼資料不再參考的檔案。
-
LastUpdatedTime– 時間戳記。Iceberg 最佳化屬性上次更新的時間戳記。
FederatedCatalog 結構
指向 AWS Glue Data Catalog 外部實體的目錄。
欄位
-
Identifier– UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 512 個位元組,且需符合 Single-line string pattern。聯合型錄的唯一識別碼。
-
ConnectionName– UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。外部資料來源連線的名稱,例如 Redshift 聯合型錄。
-
ConnectionType– UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。用於存取聯合型錄的連線類型,指定連線至外部資料來源的協定或方法。
作業
CreateCatalog 動作 (Python:create_catalog)
在 AWS Glue Data Catalog 中建立新的目錄。
請求
-
Name– 必要:UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 64 個位元組,需符合 Custom string pattern #25。要建立的型錄名稱。
-
CatalogInput– 必要:CatalogInput 物件。定義型錄的中繼資料的
CatalogInput物件。 -
Tags– 金鑰值對的映射陣列,不超過 50 對。每個金鑰均為 UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 128 個位元組。
每個值都是 UTF-8 字串,長度不可超過 256 個位元組。
金鑰值對的映射陣列,不超過 50 對。每個金鑰均為 UTF-8 字串,長度不可小於 1 個位元組,也不可以超過 128 個位元組。每個值都是 UTF-8 字串,長度不可超過 256 個位元組。您指派給型錄的標籤。
回應
無回應參數。
錯誤
InvalidInputExceptionAlreadyExistsExceptionResourceNumberLimitExceededExceptionInternalServiceExceptionOperationTimeoutExceptionGlueEncryptionExceptionConcurrentModificationExceptionAccessDeniedExceptionEntityNotFoundExceptionFederatedResourceAlreadyExistsExceptionFederationSourceException
UpdateCatalog 動作 (Python:update_catalog)
更新 AWS Glue Data Catalog 中現有目錄的屬性。
請求
-
CatalogId– 必要:目錄 ID 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合 Single-line string pattern。型錄的 ID。
-
CatalogInput– 必要:CatalogInput 物件。用於指定現有型錄的新屬性的
CatalogInput物件。
回應
無回應參數。
錯誤
EntityNotFoundExceptionInvalidInputExceptionInternalServiceExceptionOperationTimeoutExceptionGlueEncryptionExceptionConcurrentModificationExceptionAccessDeniedExceptionFederationSourceException
DeleteCatalog 動作 (Python:delete_catalog)
從 AWS Glue Data Catalog 移除指定的目錄。
完成此操作後,您將無法再存取已刪除目錄中的資料庫、資料表 (以及可能屬於資料表的所有資料表版本和分割區) 和使用者定義的函數。 會由服務自行決定,以非同步方式及時 AWS Glue 刪除這些「孤立」資源。
若要確保在呼叫 DeleteCatalog 操作之前立即刪除所有相關資源,請使用 DeleteTableVersion (或 BatchDeleteTableVersion)、DeletePartition (或 BatchDeletePartition)、DeleteTable (或 BatchDeleteTable)、DeleteUserDefinedFunction 和 DeleteDatabase,來刪除任何屬於型錄的資源。
請求
-
CatalogId– 必要:目錄 ID 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合 Single-line string pattern。型錄的 ID。
回應
無回應參數。
錯誤
EntityNotFoundExceptionInvalidInputExceptionInternalServiceExceptionOperationTimeoutExceptionGlueEncryptionExceptionConcurrentModificationExceptionAccessDeniedExceptionFederationSourceException
GetCatalog 動作 (Python:get_catalog)
要擷取的型錄的名稱。這應都是小寫。
請求
-
CatalogId– 必要:目錄 ID 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合 Single-line string pattern。型錄所在父型錄的 ID。如果未提供,預設會使用 AWS 帳戶號碼。
回應
-
Catalog– 目錄 物件。Catalog物件。Data Catalog 中指定 AWS Glue 目錄的定義。
錯誤
InvalidInputExceptionEntityNotFoundExceptionInternalServiceExceptionOperationTimeoutExceptionGlueEncryptionExceptionAccessDeniedExceptionEntityNotFoundExceptionFederationSourceExceptionFederationSourceRetryableException
GetCatalogs 動作 (Python:get_catalogs)
擷取 AWS Glue Data Catalog 中型錄中定義的所有型錄。對於 Redshift 聯合型錄使用案例,此操作會傳回映射至 Redshift 命名空間型錄中 Redshift 資料庫的型錄清單。
請求
-
ParentCatalogId– 目錄 ID 字串,長度不可小於 1 個位元組,也不可以超過 255 個位元組,需符合Single-line string pattern。型錄所在父型錄的 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– 必要:一個 目錄 物件。Catalog物件的陣列。所指定父型錄中的Catalog物件清單。 -
NextToken– UTF-8 字串。為一種接續符記,用於將傳回的符記清單分頁,而如果清單目前的區段不是最後區段就會傳回。
錯誤
InvalidInputExceptionInternalServiceExceptionOperationTimeoutExceptionGlueEncryptionExceptionAccessDeniedExceptionEntityNotFoundExceptionFederationSourceExceptionFederationSourceRetryableException