AWS Lake Formation 使用 AWS Glue Data Catalog 以数据库和表的形式存储 Amazon S3 数据的元数据。表存储有关基础数据的信息,包括架构信息、分区信息和数据位置。数据库是表的集合。数据目录还包含资源链接,这些链接是指向外部账户中共享数据库和表的链接,用于跨账户访问数据湖中的数据。每个 AWS 账户在每个 AWS 区域都有一个数据目录。
Lake Formation 提供了关系数据库管理系统 (RDBMS) 权限模型,用于授予或撤销对数据目录中的数据库、表和列以及 Amazon S3 中的基础数据的访问权限。
在了解 Lake Formation 权限模型的详细信息之前,查看以下背景信息会很有帮助:
-
Lake Formation 管理的数据湖位于 Amazon Simple Storage Service (Amazon S3) 中的指定位置。
-
Lake Formation 维护一个数据目录,其中包含有关要导入数据湖的源数据(例如日志和关系数据库中的数据)以及有关 Amazon S3 中数据湖中的数据的元数据。元数据以数据库和表的形式进行组织。元数据表包含架构、位置、分区以及有关它们所表示的数据的其他信息。元数据数据库是表的集合。
-
Lake Formation 数据目录与 AWS Glue 使用的数据目录相同。您可以使用 AWS Glue 爬网程序创建数据目录表,也可以使用 AWS Glue 提取、转换、加载 (ETL) 作业来填充数据湖中的基础数据。
-
数据目录中的数据库和表称为“数据目录资源”。数据目录中的表称为“元数据表”,以区别于数据来源中的表或 Amazon S3 中的表格数据。元数据表在 Amazon S3 或数据来源中指向的数据称为“基础数据”。
-
主体是指用户或角色、Amazon QuickSight 用户或组、通过 SAML 提供商向 Lake Formation 进行身份验证的用户或组,或者用于跨账户访问控制的 AWS 账户 ID、组织 ID 或组织单位 ID。
-
AWS Glue 爬网程序创建元数据表,但您也可以使用 Lake Formation 控制台、API 或 AWS Command Line Interface (AWS CLI) 手动创建元数据表。创建元数据表时,必须指定一个位置。创建数据库时,位置是可选的。表位置可以是 Amazon S3 位置或数据来源位置,例如 Amazon Relational Database Service (Amazon RDS) 数据库。数据库位置始终是 Amazon S3 位置。
-
与 Lake Formation 集成的服务(如 Amazon Athena 和 Amazon Redshift)可以访问数据目录以获取元数据并检查运行查询的授权。有关集成服务的完整列表,请参阅 AWS 服务与 Lake Formation 的集成。