選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

存取共用聯合目錄

焦點模式
存取共用聯合目錄 - AWS Lake Formation

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

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

AWS Lake Formation 跨帳戶功能可讓使用者安全地跨多個 AWS 帳戶、 AWS 組織或直接與另一個帳戶中的 IAM 主體共用分散式資料湖,提供中繼資料和基礎資料的精細存取。

Lake Formation 使用 AWS Resource Access Manager (AWS RAM) 服務來促進資源共享。當您與另一個帳戶共用目錄資源時, AWS RAM 會傳送邀請給承授者帳戶,以接受或拒絕資源授予。

Amazon Athena 和 Redshift Spectrum 等整合式分析服務需要資源連結,才能在查詢中包含共用資源。主體需要在 中建立資源連結 AWS Glue Data Catalog ,以從另一個資源共用資源 AWS 帳戶。如需資源連結的詳細資訊,請參閱資源連結如何在 Lake Formation 中運作

目錄連結容器是 Data Catalog 物件,其參考來自其他 AWS 帳戶的本機或跨帳戶聯合資料庫層級目錄。您也可以在目錄連結容器中建立資料庫連結和資料表連結。當您建立資料庫連結或資料表連結時,您必須指定位於相同目標 Amazon Redshift 資料庫層級目錄 (Amazon Redshift 資料庫) 下的目標資源。

若要建立目錄連結容器,您需要 Lake Formation CREATE_CATALOGglue:CreateCatalog許可。

您可以使用 AWS Lake Formation 主控台、CreateCatalogAPI 或 AWS Command Line Interface (), AWS Glue 建立指向任何 AWS 區域中 Redshift 資料庫層級聯合目錄的目錄連結容器AWS CLI。

建立目錄連結容器至共用目錄 (主控台)
  1. 在 https://https://console.aws.amazon.com/lakeformation/ 開啟 AWS Lake Formation 主控台。以擁有 Lake Formation CREATE_CATALOG許可的委託人身分登入。

  2. 在導覽窗格中,選擇目錄,然後選擇建立目錄

  3. 設定目錄詳細資訊頁面上,提供以下資訊:

    名稱

    輸入與目錄名稱遵守相同規則的名稱。名稱可與目標共用目錄相同。

    Type

    選擇目錄連結容器做為目錄類型。

    來源

    選擇 Redshift

    目標 Redshift 目錄

    選取 Redshift 資料庫層級聯合目錄,或從清單中選擇本機 (擁有) 目錄。

    此清單包含與您的帳戶共用的所有目錄。請注意,目錄擁有者帳戶 ID 會與每個目錄一起列出。如果您沒有看到您知道與您的帳戶共用的目錄,請檢查下列項目:

    • 如果您不是資料湖管理員,請檢查資料湖管理員是否授予目錄上的 Lake Formation 許可。

    • 如果您是資料湖管理員,且您的帳戶與授予帳戶不在同一個 AWS 組織中,請確定您已接受目錄的 AWS Resource Access Manager (AWS RAM) 資源共享邀請。如需詳細資訊,請參閱接受來自的資源共用邀請 AWS RAM

  4. 若要讓 Apache Iceberg 查詢引擎能夠讀取和寫入 Amazon Redshift 命名空間, 會 AWS Glue 建立具有執行讀取和寫入操作所需的運算和儲存資源的受管 Amazon Redshift 叢集,而不會影響 Amazon Redshift 資料倉儲工作負載。您需要為 IAM 角色提供在 Amazon S3 儲存貯體之間傳輸資料所需的許可。

  5. 選擇 Next (下一步)

  6. (選用) 選擇新增許可,將許可授予其他主體。

    不過,授予目錄連結容器的許可不會授予目標 (連結) 目錄的許可。您必須分別授予目標目錄的許可,目錄連結才能在 Athena 中顯示。

  7. 接著,檢閱目錄連結容器詳細資訊,然後選擇建立目錄

    然後,您可以在目錄頁面下檢視連結容器名稱。

    現在,您可以在目錄連結容器中建立資料庫連結和資料表連結,以啟用查詢引擎的存取。

建立目錄連結容器 CLI 範例
  • 在下列範例中, TargetRedshiftCatalog 物件會指定 Amazon Redshift 聯合資料庫層級目錄 (Amazon Redshift 資料庫) 的生成。建立目錄連結容器時,DataLakeAccess必須啟用 。

    aws glue create-catalog \
      --cli-input-json 
        '{
            "Name": "linkcontainer", 
            "CatalogInput": {
                "TargetRedshiftCatalog": {
                   "CatalogArn": "arn:aws:us-east-1:123456789012:catalog/nscatalog/dev"
                 },
                "CatalogProperties": {
                  "DataLakeAccessProperties" : {
                    "DataLakeAccess" : true,
                    "DataTransferRole" : "arn:aws:iam::111122223333:role/DataTransferRole"
                 } 
               }
            }
        }'
              

您可以在目錄連結容器下建立資料庫和資料表連結的資源連結。當您建立資料庫資源連結或資料表資源連結時,您必須指定位於連結容器指向的相同目標 Amazon Redshift 資料庫層級目錄 (Amazon Redshift 資料庫) 下的目標資源。

您可以使用 AWS Lake Formation 主控台、API 或 AWS Command Line Interface () 建立共用 Amazon Redshift 資料庫或資料表的資源連結AWS CLI。

  • 如需詳細說明,請參閱 建立共用 Data Catalog 資料庫的資源連結

    以下是在目錄連結容器下建立資料庫資源連結 AWS CLI 的範例。

    aws glue create-database \
      --cli-input-json \
        '{
            "CatalogId": "111122223333:linkcontainer",
            "DatabaseInput": {
                "Name": "dblink",
                 "TargetDatabase": {
                   "CatalogId": "123456789012:nscatalog/dev",
                    "DatabaseName": "schema1"
                 }
            }
        }'
            
  • 若要在目錄連結容器下建立資料表資源連結,您必須先在本機中建立 AWS Glue 資料庫, AWS Glue Data Catalog 以包含資料表資源連結。

    如需建立共用資料表的資源連結的詳細資訊,請參閱 建立共用 Data Catalog 資料表的資源連結

    • 建立資料庫以包含資料表資源連結範例

      aws glue create-database \
        --cli-input-json \
            '{
                "CatalogId": "111122223333:linkcontainer",
                "DatabaseInput": {
                    "Name": "db1",
                    "Description": "creating parent database for table link"
                }
            }'
                    
    • 建立資料表資源連結範例

      aws glue create-table \
        --cli-input-json \
          '{
              "CatalogId": "111122223333:linkcontainer",
               "DatabaseName": "db1",
              "TableInput": {
                  "Name": "tablelink",
                  "TargetTable": {
                      "CatalogId": "123456789012:nscatalog/dev",
                     "DatabaseName": "schema1", 
                      "Name": "table1"
                   }
              }
          }'
                      
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。