本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
填入和管理交易資料表
Apache Iceberg
您可以使用 AWS Glue Data Catalog 下列方法在 中填入 Iceberg、Hudi 和 Delta Lake 資料表:
-
AWS Glue 編目程式; – AWS Glue 編目程式可以在 Data Catalog 中自動探索和填入 Iceberg、Hudi 和 Delta Lake 資料表中繼資料。如需詳細資訊,請參閱使用爬蟲程式填入 Data Catalog 。
-
AWS Glue ETL 任務 – 您可以建立 ETL 任務,將資料寫入 Iceberg、Hudi 和 Delta Lake 資料表,並在 Data Catalog 中填入其中繼資料。如需詳細資訊,請參閱搭配 AWS Glue ETL 任務使用資料湖架構。
-
AWS Glue 主控台、 AWS Lake Formation 主控台 AWS CLI 或 API – 您可以使用 AWS Glue 主控台、Lake Formation 主控台或 API,在 Data Catalog 中建立和管理 Iceberg 資料表定義。
建立 Apache Iceberg 資料表
您可以建立 Apache Iceberg 資料表,該資料表使用 中的 Apache Parquet 資料格式 AWS Glue Data Catalog ,並將資料存放在 Amazon S3 中。Data Catalog 中的資料表是中繼資料定義,代表資料存放區中的資料。根據預設, AWS Glue 會建立 Iceberg v2 資料表。有關 v1 和 v2 資料表之間的區別,請參閱 Apache Iceberg 文件中的格式版本變更
Apache Iceberg
您可以使用 AWS Glue 或 Lake Formation 主控台或 AWS Glue API 中的 CreateTable
操作,在 Data Catalog 中建立 Iceberg 資料表。如需詳細資訊,請參閱 CreateTable 動作 (Python: create_table)。
當您在 Data Catalog 中建立 Iceberg 資料表時,您必須在 Amazon S3 中指定資料表格式和中繼資料檔案路徑,才能執行讀取和寫入。
當您向 註冊 Amazon S3 資料位置時,您可以使用 Lake Formation 使用精細存取控制許可來保護 Iceberg 資料表 AWS Lake Formation。對於 Amazon S3 中的來源資料和未向 Lake Formation 註冊的中繼資料,存取權取決於 Amazon S3 和 AWS Glue 動作的 IAM 許可政策。如需詳細資訊,請參閱管理許可。
注意
Data Catalog 不支援建立分割區和新增 Iceberg 資料表屬性。
先決條件
若要在 Data Catalog 中建立 Iceberg 資料表,並設定 Lake Formation 資料存取許可,您需要完成下列要求:
-
建立 Iceberg 資料表所需的許可,而沒有向 Lake Formation 註冊的資料。
除了在 Data Catalog 中建立資料表所需的許可之外,資料表建立器還需要下列許可:
s3:PutObject
資源 arn:aws:s3:::{bucketName}-
s3:GetObject
資源 arn:aws:s3::{bucketName} -
s3:DeleteObject
資源 arn:aws:s3:::{bucketName}
-
使用向 Lake Formation 註冊的資料建立 Iceberg 資料表所需的許可:
若要使用 Lake Formation 來管理和保護資料湖中的資料,請使用 Lake Formation 註冊具有資料表資料的 Amazon S3 位置。這樣 Lake Formation 就可以將登入資料提供給 AWS 分析服務,例如 Athena、Redshift Spectrum 和 Amazon EMR 來存取資料。如需註冊 Amazon S3 位置的詳細資訊,請參閱將 Amazon S3 位置新增至您的資料湖。
讀取和寫入向 Lake Formation 註冊的基礎資料的委託人需要下列許可:
-
lakeformation:GetDataAccess
-
DATA_LOCATION_ACCESS
在位置上具有資料位置許可的委託人在所有子位置上也具有位置許可。
如需資料位置許可的詳細資訊,請參閱基礎資料存取控制 ulink。
-
若要啟用壓縮,服務需要擔任具有更新 Data Catalog 中資料表許可的 IAM 角色。如需詳細資訊,請參閱 資料表最佳化先決條件
建立 Iceberg 資料表
您可以使用 AWS Glue 或 Lake Formation 主控台或本頁所記載 AWS Command Line Interface 的方式,建立 Iceberg v1 和 v2 資料表。您也可以使用 建立 Iceberg 資料表 AWS Glue 編目程式。如需詳細資訊,請參閱《 AWS Glue 開發人員指南》中的資料目錄和爬蟲程式。
建立 Iceberg 資料表