在 S3 表目录中创建数据库和表 - Amazon Lake Formation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

在 S3 表目录中创建数据库和表

您可以创建数据库来组织 Apache Iceberg 表,也可以创建表来定义数据在 S3 表目录中的架构和位置。

  1. 通过 https://console.aws.amazon.com/lakeformation/ 打开 Lake Formation 控制台,然后以数据湖管理员或数据库创建者身份登录。

  2. 在导航窗格的 Data Catalog 下,选择数据库

  3. 选择创建数据库

  4. 创建数据库页面上,选择数据库选项,然后输入以下详细信息:

    • 名称:输入数据库的唯一名称。

    • 数据目录:选择 S3 表目录。数据库将位于此目录中。

    • 描述:(可选)添加描述和位置。

    • 新表的 IAM 访问控制:可以选择“仅对此数据库中的新表使用 IAM 访问控制”。有关此选项的信息,请参阅更改数据湖的默认设置部分。

    • 选择创建数据库。您可以看到创建的数据库在 S3 表目录下面。

以下 CLI 命令显示如何在 S3 表目录中创建数据库。

aws glue create-database 
--region us-east-1 \
--catalog-id "123456789012:s3tablescatalog/test" \
--database-input \
 '{ "Name": "testglueclidbcreation" }'       

您可以使用 Lake Formation 控制台或 Amazon Glue CreateTable API 在 S3 表目录中创建 Apache Iceberg 元数据表。

  1. 通过 https://console.aws.amazon.com/lakeformation/ 打开 Lake Formation 控制台,并以数据湖管理员或具有 CreateTable 权限的用户身份登录。

  2. 在导航窗格的 Data Catalog 下,选择

  3. 选择“创建表”。

  4. 创建表页面上,输入表的详细信息:

    S3 表目录
    • 表名称:输入表的唯一名称。

    • 目录:选择 S3 表目录作为目录。

    • 数据库:选择 S3 表目录下的数据库。

    • 描述:输入表的描述。

    • 架构:选择“添加列”以添加列和列的数据类型。您可以选择创建一个空表,然后稍后更新架构。Iceberg 允许您在创建表后演变架构和分区。您可以使用 Athena 查询更新表架构,使用 Spark 查询更新分区。

  5. 选择提交

aws glue create-table \ 
--database-name "testglueclidbcreation" \ 
--catalog-id "123456789012:s3tablescatalog/test" \ 
--region us-east-1 \ 
--table-input \ 
'{ "Name": "testtablegluecli", "Parameters": { "format": "ICEBERG" }, "StorageDescriptor": { "Columns": [ {"Name": "x", "Type": "int", "Parameters": {"required": "true"}} ] } }'