本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立與 Amazon SageMaker 資料湖倉的 Aurora 零 ETL 整合
當您建立與 Lakehouse Amazon SageMaker 的 Aurora零 ETL 整合時,您可以指定來源 Aurora 資料庫叢集和目標 AWS Glue 受管目錄。您也可以自訂加密設定和新增標籤。Aurora 會在來源資料庫叢集與其目標之間建立整合。一旦整合作用中,您插入至來源資料庫叢集的任何資料就會複寫至設定的目標。
先決條件
建立與 Lakehouse Amazon SageMaker 的零 ETL 整合之前,您必須建立來源資料庫叢集和目標 AWS Glue 受管目錄。您也必須將資料庫叢集新增為授權整合來源,以允許複寫至目錄。
如需完成上述每個步驟的指示,請參閱 開始使用 Aurora 零 ETL 整合。
所需的許可
建立與 Amazon SageMaker 資料湖倉的零 ETL 整合需要特定 IAM 許可。您至少需要執行下列動作的許可:
為來源 Aurora 資料庫叢集建立零 ETL 整合。
檢視並刪除所有零 ETL 整合。
在目標 AWS Glue 受管目錄中建立傳入整合。
存取 AWS Glue 受管目錄使用的 Amazon S3 儲存貯體。
如果已設定自訂加密,請使用 AWS KMS 金鑰進行加密。
向 Lake Formation 註冊資源。
在 AWS Glue 受管目錄上放置資源政策,以授權傳入整合。
下列範例政策示範建立和管理與 Amazon SageMaker 資料湖倉的整合所需的最低權限許可。如果您的使用者或角色具有更廣泛的許可,例如 AdministratorAccess 受管政策,則可能不需要這些確切許可。
此外,您必須在目標 AWS Glue 受管目錄上設定資源政策,以授權傳入整合。使用下列 AWS CLI 命令來套用資源政策。
aws glue put-resource-policy \ --policy-in-json '{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "glue.amazonaws.com" }, "Action": [ "glue:AuthorizeInboundIntegration" ], "Resource": ["arn:aws:glue:region:account_id:catalog/catalog_name"], "Condition": { "StringEquals": { "aws:SourceArn": "arn:aws:rds:region:account_id:db:source_name" } } }, { "Effect": "Allow", "Principal": { "AWS": "account_id" }, "Action": ["glue:CreateInboundIntegration"], "Resource": ["arn:aws:glue:region:account_id:catalog/catalog_name"] } ] }' \ --regionregion
注意
Glue 目錄 Amazon Resource Name (ARN) 具有下列格式:
-
Glue 目錄 –
arn:aws:glue:{region}:{account-id}:catalog/catalog-name
選擇不同帳戶中的目標 AWS Glue 受管目錄
如果您打算指定位於另一個 的目標 AWS Glue 受管目錄 AWS 帳戶,您必須建立角色,允許目前帳戶中的使用者存取目標帳戶中的資源。如需詳細資訊,請參閱AWS 帳戶 為您擁有的另一個 IAM 使用者提供存取權。
角色必須具有下列許可,允許使用者檢視目標帳戶中可用的 AWS Glue 目錄。
角色必須具有下列信任策略,其可指定目標帳戶 ID。
如需建立角色的指示,請參閱使用自訂信任政策建立角色。
建立與 Amazon SageMaker 資料湖倉的零 ETL 整合
您可以使用 AWS CLI、 Amazon SageMaker 或 RDS API 建立與湖房的零 ETL AWS 管理主控台整合。
重要
與 Amazon SageMaker 資料湖倉的零 ETL 整合不支援重新整理或重新同步操作。如果您在建立整合之後遇到問題,則必須刪除整合並建立新的整合。
建立與 Amazon SageMaker 資料湖倉的零 ETL 整合
登入 AWS 管理主控台 並開啟位於 https://https://console.aws.amazon.com/rds/
的 Amazon RDS 主控台。 -
在左側導覽窗格中,選擇零 ETL 整合。
-
選擇建立零 ETL 整合。
-
對於整合識別符,輸入整合的名稱。此名稱最多可有 63 個英數字元,且可包含連字號。
-
選擇下一步。
對於來源,請選取資料源自其中的 Aurora 資料庫叢集。
注意
如果未正確設定資料庫叢集參數,RDS 即會通知您。如果您收到此訊息,您可以選擇為我修正或手動設定它們。如需手動修正它們的指示,請參閱 步驟 1:建立自訂資料庫叢集參數群組。。
修改資料庫叢集參數需要重新開機。在可以建立整合之前,必須先完成重新開機,且新參數值必須成功套用至叢集。
-
(選用) 選取自訂資料篩選選項,並將資料篩選條件新增至您的整合。您可以使用資料篩選條件來定義目標 Amazon SageMaker 資料湖倉的複寫範圍。如需詳細資訊,請參閱Aurora 零 ETL 整合的資料篩選。
-
順利設定來源資料庫叢集後,即可選擇下一步。
針對目標,執行下列動作:
(選用) 若要 AWS 帳戶 對湖房目標使用不同的 Amazon SageMaker ,請選擇指定不同的帳戶。然後,輸入具有顯示 AWS Glue 目錄許可之 IAM 角色的 ARN。如需建立 IAM 角色的指示,請參閱 選擇不同帳戶中的目標 AWS Glue 受管目錄。
對於 AWS Glue 目錄,從來源資料庫叢集選取複寫資料的目標。您可以選擇現有的 AWS Glue 受管目錄做為目標。
目標 IAM 角色需要描述目標目錄的許可,並且必須具有下列許可:
目標 IAM 角色必須具有下列信任關係:
您必須使用在 中建立的 Lake Formation 管理員角色,授予目標 IAM 角色描述目標 AWS Glue 受管目錄的許可步驟 3b:建立 Amazon SageMaker AI 零 ETL 整合的 AWS Glue 目錄。
注意
如果指定的 AWS Glue 受管目錄的資源政策或組態設定未正確設定,RDS 會通知您。如果您收到此訊息,您可以選擇為我修正或手動設定它們。
如果您選取的來源和目標位於不同的 AWS 帳戶中,則 Amazon RDS 無法為您修正這些設定。您必須導覽至其他帳戶,然後在 SageMaker Unified Studio 中手動修正這些設定。
-
正確設定目標 AWS Glue 受管目錄後,請選擇下一步。
-
(選用) 對於標籤,將一或多個標籤新增至整合。如需詳細資訊,請參閱標記 Amazon Aurora 和 Amazon RDS 資源。
-
對於加密,指定您想要加密整合的方式。根據預設,RDS 會加密與 的所有整合 AWS 擁有的金鑰。若要改為選擇客戶受管金鑰,請啟用自訂加密設定,然後選擇要用於加密的 KMS 金鑰。如需詳細資訊,請參閱加密 Amazon Aurora 資源。
可選擇性地新增加密內容。如需詳細資訊,請參閱 AWS Key Management Service 開發人員指南中的加密內容。
注意
除了您新增的任何項目之外,Amazon RDS 還會新增下列加密內容對:
-
aws:glue:integration:arn-IntegrationArn -
aws:servicename:id-glue
這會將您可以新增的整體配對數量從 8 減少為 6,並對授予限制的整體字元限制造成影響。如需詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的使用授予限制條件。
-
-
選擇下一步。
檢閱您的整合設定,然後選擇建立零 ETL 整合。
如果建立失敗,請參閱 針對 Aurora 零 ETL 整合進行疑難排解,取得疑難排解步驟。
整合建立時的狀態為 Creating,而目標 Amazon SageMaker 資料湖倉的狀態為 Modifying。在此期間,您無法查詢目錄或對其進行任何組態變更。
成功建立整合時,整合和目標 Amazon SageMaker 資料湖倉的狀態都會變更為 Active。
若要使用 準備零 ETL 整合的目標 AWS Glue 受管目錄 AWS CLI,您必須先使用 create-integration-resource-property 命令搭配下列選項:
-
--resource-arn– 指定將成為整合目標之 AWS Glue 受管目錄的 ARN。 -
--target-processing-properties– 指定 IAM 角色的 ARN 以存取目標 AWS Glue 受管目錄
aws glue create-integration-resource-property --region us-east-1 --resource-arn arn:aws:glue:region:account_id:catalog/catalog_name\ --target-processing-properties '{"RoleArn" : "arn:aws:iam::account_id:role/TargetIamRole"}'
若要使用 建立與 Lakehouse Amazon SageMaker 的零 ETL 整合 AWS CLI,請使用 create-integration 命令搭配下列選項:
-
--integration-name- 指定整合的名稱。 -
--source-arn- 指定 Aurora 資料庫叢集的 ARN,它將會成為整合來源。 -
--target-arn– 指定將成為整合目標之 AWS Glue 受管目錄的 ARN。
對於 Linux、macOS 或 Unix:
aws rds create-integration \ --integration-namemy-sagemaker-integration\ --source-arn arn:aws:rds:{region}:{account-id}:cluster:my-db\ --target-arn arn:aws:glue:{region}:{account-id}:catalog/catalog-name
在 Windows 中:
aws rds create-integration ^ --integration-namemy-sagemaker-integration^ --source-arn arn:aws:rds:{region}:{account-id}:cluster:my-db^ --target-arn arn:aws:glue:{region}:{account-id}:catalog/catalog-name
若要使用 Amazon RDS API 建立與 Amazon SageMaker 的零 ETL 整合,請搭配下列參數使用 CreateIntegration 操作:
注意
目錄名稱限制為 19 個字元。如果 IntegrationName 參數將用作目錄名稱,請確保其符合此要求。
-
IntegrationName- 指定整合的名稱。 -
SourceArn- 指定 Aurora 資料庫叢集的 ARN,它將會成為整合來源。 -
TargetArn– 指定將成為整合目標之 AWS Glue 受管目錄的 ARN。
使用客戶自管金鑰加密整合
如果您在建立與 的整合 AWS 擁有的金鑰 時指定自訂 KMS 金鑰,而不是 Amazon SageMaker,則金鑰政策必須提供 SageMaker Unified Studio 動作的服務主體存取權CreateGrant。此外,它必須允許目前的使用者執行 DescribeKey 和 CreateGrant 動作。
下列範例政策示範如何在金鑰政策中提供必要許可。它包含內容索引鍵,以進一步減少許可範圍。
如需詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的建立金鑰政策。
後續步驟
成功建立與 Amazon SageMaker 的零 ETL 整合後,您可以開始將資料新增至來源 Aurora 資料庫叢集,並在 Amazon SageMaker 資料湖倉中查詢資料。資料會自動複寫,並可用於分析和機器學習工作負載。