第 4 步:为 Delta Lake 表设置权限 - Amazon Lake Formation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

第 4 步:为 Delta Lake 表设置权限

在本节中,您将学习如何创建包含符号链接清单文件的 Delta Lake 表 Amazon Glue Data Catalog、在中设置数据权限 Amazon Lake Formation 以及如何使用 Amazon Athena 查询数据。

创建 Delta Lake 表

在此步骤中,您将运行一项在数据目录中创建 Delta Lake 事务表的 Amazon Glue 作业。

  1. 在美国东部(弗吉尼亚北部)地区通过 https://console.aws.amazon.com/glue/ 登录主Amazon Glue机

  2. 从左侧导航窗格中选择作业

  3. 选择 native-delta-create

  4. 操作下,选择编辑作业

  5. 在 “Job det ail Amazon Glue Data Catalog s” 下,展开 “高级属性”,然后选中 “用作 Hive 元数据仓” 旁边的复选框,将表元数据添加到中。 Amazon Glue Data Catalog这将指定 Amazon Glue Data Catalog 为作业中使用的数据目录资源的元数据库,并允许稍后对目录资源应用 Lake Formation 权限。

  6. 选择保存

  7. 操作下选择运行

    此作业将在 lfdeltadb 数据库中创建名为 product 的 Delta Lake 表。在 Lake Formation 控制台中验证 product 表。

在 Lake Formation 中注册数据位置

接下来,将 Amazon S3 路径注册为数据湖的根位置。

  1. 通过 https://console.aws.amazon.com/lakeformation/ 以数据湖管理员用户身份打开 Lake Formation 控制台。

  2. 在导航窗格中的注册和提取下,选择数据位置

  3. 在控制台右上角,选择注册位置

  4. 注册位置页面上,输入以下内容:

    • Amazon S3 路径 – 选择浏览,然后选择 lf-otf-datalake-123456789012。单击 Amazon S3 根位置旁边的右箭头 (>) 以导航到 s3/buckets/lf-otf-datalake-123456789012/transactionaldata/native-delta 位置。

    • IAM 角色 — 选择 LF-OTF-RegisterRole 作为 IAM 角色。

    • 选择注册位置

授予对 Delta Lake 表的数据湖权限

在这一步,我们将向业务分析师用户授予数据湖权限。

  1. 数据湖权限下,选择授权

  2. 授予数据权限屏幕上,选择 IAM 用户和角色

  3. 从下拉列表中选择 lf-consumer-analystuser

  4. 选择命名数据目录资源

  5. 对于数据库,选择 lfdeltadb

  6. 对于,选择 product

  7. 接下来,您可以通过指定列来授予基于列的访问权限。

    1. 表权限下,选择选择

    2. 数据权限下,选择基于列的访问权限,然后选择包括列

    3. 依次选择列 product_namepricecategory

    4. 选择授权

使用 Athena 查询 Delta Lake 表

现在开始使用 Athena 查询您创建的 Delta Lake 表。如果您是首次在 Athena 中运行查询,则需要配置查询结果位置。有关更多信息,请参阅指定查询结果位置

  1. 以数据湖管理员用户身份注销,然后使用 Amazon CloudFormation 输出BusinessAnalystUser中前面注明的密码以美国东部(弗吉尼亚北部)区域的身份登录。

  2. https://console.aws.amazon.com/athena/ 打开 Athena 控制台。

  3. 选择设置,然后选择管理

  4. 查询结果的位置框中,输入您在 Amazon CloudFormation 输出中创建的存储桶的路径。复制 AthenaQueryResultLocation (s3://lf-otf-tutorial-123456789012/athena-results/) 的值并保存。

  5. 运行以下查询来预览存储在 Delta Lake 表中的 10 条记录:

    select * from lfdeltadb.product limit 10;

    有关查询 Delta Lake 表的更多信息,请参阅《Amazon Athena 用户指南》中的查询 Delta Lake 表一节