什么是 Amazon Lake Formation? - Amazon Lake Formation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

什么是 Amazon Lake Formation?

欢迎阅读 Amazon Lake Formation 开发人员指南。

Amazon Lake Formation是全托管服务,可以帮助构建、保护和管理数据湖。Lake Formation 简化并自动化了创建数据湖通常需要的许多复杂的手动步骤。这些步骤包括收集、清理、移动和编目数据,以及安全地将这些数据用于分析和机器学习。

Lake Formation 提供了自己的权限模型,该模型增强了 IAM 权限模型。这种集中定义的权限模型允许通过简单的授予或撤消机制对存储在数据湖中的数据进行细粒度访问,就像关系数据库管理系统 (RDMS) 一样。Lake Formation 权限使用Amazon分析和机器学习服务(包括亚马逊 Amazon Athena、Amazon 和 Amazon Redshift)的列、行和单元格级别的精细控制来强制执行。 QuickSight

Lake Formation mat

Lake Formation 可以打破数据孤岛,将不同类型的结构化和非结构化数据合并到集中存储库中。首先,识别 Amazon S3 或关系数据库和 NoSQL 数据库中的现有数据存储,然后将数据移动到您的数据湖中。然后对数据进行搜寻、编目和准备以供分析。接下来,通过用户选择的分析服务,为他们提供安全的自助数据访问权限。

设置和数据管理

从已有的数据库中导入数据Amazon

一旦您指定了现有数据库的位置并提供了访问凭证,Lake Formation 就会读取数据及其元数据(架构)以了解数据源的内容。然后,它将数据导入到新的数据湖中,并将元数据记录在中央目录中。使用 Lake Formation,你可以从运行在亚马逊 RDS 中或托管在 Amazon EC2 中的 MySQL、PostgreSQL、SQL Server、MariaDB 和 Oracle 数据库中导入数据 支持批量和增量数据加载。

从其他外部来源导入数据

您可以使用 Lake Formation 通过连接 Java 数据库连接 (JDBC) 从本地数据库中移动数据。识别您的目标来源并在控制台中提供访问凭证,Lake Formation 会读取您的数据并将其加载到数据湖中。要从上面列出的数据库以外的数据库导入数据,您可以使用创建自定义 ETL 作业Amazon Glue。

对数据进行分类和标记

Lake Formation 会抓取并读取您的数据源以提取技术元数据,并创建可搜索的目录来描述这些信息,以便用户发现可用的数据集。您还可以在数据(表和列级别)中添加自己的自定义标签,以定义属性,例如 “敏感信息” 和 “欧洲销售数据”。Lake Formation 提供对这些元数据的基于文本的搜索,因此您的用户可以快速找到他们需要分析的数据。有关向 Data Catalog 中添加表的更多信息,请参阅管理数据目录表和数据库

转换数据

Lake Formation 可以对您的数据进行转换,例如重写各种日期格式以保持一致性,以确保数据以便于分析的方式存储。Lake Formation 创建转换模板并安排作业,为您的数据做好分析准备。您的数据使用Amazon Glue分栏格式(例如 Parquet 和 ORC)进行转换和写入,以获得更好的性能。

清除和删除重复数据

Lake Formation 通过提供一种需要去重和查找匹配记录的机器学习转换,帮助清理和准备数据 FindMatches 以供分析。例如,用于 FindMatches 在餐厅数据库中查找重复记录,例如当一条记录列出 “121 Main St.” 的 “Joe's Pizza” 时 还有另一部在 “121 Main” 上播出 “Joseph's Pizzeria”。 FindMatches 只会要求您将记录集标记为 “匹配” 或 “不匹配”。然后,系统将了解你将一对记录称为匹配项的标准,并将构建机器学习转换,你可以使用它来查找数据库中的重复记录或两个数据库中的匹配记录。有关更多信息 FindMatches,请参阅将记录匹配到Amazon Lake Formation FindMatches在《Amazon Glue开发者指南》中。

存储优化

许多小文件的存储效率低下可能会影响分析性能,这些小文件是在向数据湖写入新数据时自动创建的。处理这么多小文件会给分析服务带来额外的开销,并导致查询响应变慢。Lake Formation 包含存储优化器,可自动将小文件合并成更大的文件,将查询速度提高多达 7 倍。此过程通常称为压缩,是在后台执行的,因此在此过程中不会对生产工作负载造成性能影响。有关 Lake Formation 存储优化功能的更多信息,请参阅受管控表的存储优化

行级别安全性和单元格级安全性

Lake Formation 提供数据过滤器,允许您限制对列和行组合的访问。使用行级和单元格级安全性来保护敏感数据,例如个人身份信息 (PII)。有关行级别安全性的更多信息,请参阅数据筛选概述

安全管理

定义和管理访问控制

Lake Formation 提供了一个管理数据湖中数据的访问控制的单一位置。您可以定义安全策略,在数据库、表、列、行和单元格级别限制对数据的访问。这些策略适用于 IAM 用户和角色,也适用于通过外部身份提供商联合时的用户和群组。你可以使用细粒度的控件来访问Amazon Redshift Spectrum trum、Athena、Amazon Glue ETL 和适用于 Apache Spark 的 Amazon EMR 中由 Lake Formation 保护的数据。

实施审计日志记录

Lake Formation 提供全面的审计日志 CloudTrail ,用于监控访问情况并显示对集中定义的政策的遵守情况。您可以审核分析和机器学习服务的数据访问历史记录,这些服务通过 Lake Formation 读取数据湖中的数据。这使您可以查看哪些用户或角色尝试访问了哪些数据、使用了哪些服务以及何时访问了哪些数据。您可以像使用 CloudTrail API 和控制台访问任何其他 CloudTrail 日志一样访问审核日志。有关 CloudTrail 日志的更多信息,请参阅日志系统AmazonLake Formation API 调用使用Amazon CloudTrail

基于标签的访问控制

您可以对数据进行分类并限制对敏感信息的访问。您还可以在表和列级别为数据添加自己的自定义标签 (LF-tag) 来定义属性,例如 “敏感信息” 或 “欧洲销售数据”。Lake Formation 提供对这些元数据的基于文本的搜索,因此您的用户可以快速找到他们需要分析的数据。您可以根据这些 LF 标签授予对数据的访问权限。有关基于标记的访问控制的更多信息,请参阅基于Lake Formation 标签的访问控制

跨账户访问

Lake Formation 权限管理功能通过集中化方法简化了跨多个Amazon账户的分布式数据湖的保护和管理,为数据目录和 Amazon S3 站点提供精细的访问控制。

受监管的表

数据湖需要始终向用户显示正确的数据视图,即使同时实时或频繁地更新数据。加载流数据或合并来自多个源数据系统的更改需要parallel 处理多个表中的插入和删除。如今,开发人员编写自定义应用程序代码或使用开源工具来管理这些更新。这些解决方案复杂且难以扩展,因为编写在同时读取和写入相同数据时保持一致性的应用程序代码既繁琐又脆弱,而且容易出错。

Lake Formation 引入了新的 API,使用一种称为治理表的新数据湖表类型,支持原子、一致、隔离和持久 (ACID) 事务。受管控表允许多个用户使用清单同时在表中插入和删除数据,同时还允许其他用户对返回一致 up-to-date 结果的相同数据集同时运行分析查询和机器学习模型。

有关如何使用 Lake Formation 进行交易的更多信息,请参阅以下主题:

Amazon与 Lake Formation 的服务集成

以下Amazon服务集成Amazon Lake Formation并尊重 Lake Formation 权限。

Amazon 服务 如何整合
Amazon Glue Amazon Glue和 Lake Formation 共享相同的数据目录。对于控制台操作(例如查看表列表)和所有 API 操作,Amazon Glue用户只能访问他们拥有 Lake Formation 权限的数据库和表。
注意

Amazon Glue不支持 Lake Formation 列权限。

Amazon Athena 当Amazon Athena用户在查询编辑器中选择Amazon Glue目录时,他们只能查询他们拥有 Lake Formation 权限的数据库、表和列。不支持使用清单进行查询。

除了通过Amazon Identity and Access Management (IAM) 向 Athena 进行身份验证的委托人外,Lake Formation 还支持通过 JDBC 或 ODBC 驱动程序连接并通过 SAML 进行身份验证的Athena 用户。支持的 SAML 提供商包括 Okta 和微软 Active Directory 联合服务 (AD FS)。有关更多信息,请参阅 Amazon Athena 用户指南中的 Lake Formation 和 Athena JDBC 和 ODBC 驱动程序对 Athena 进行联合访问

注意

目前,以下区域不支持授权访问 Lake Formation 中的 SAML 身份:

  • 中东(巴林)- me-south-1

  • 亚太地区(香港)- ap-east-1

  • 非洲(开普敦)- af-south-1

  • 中国(宁夏)- cn-northwest-1

  • 亚太地区(大阪)– ap-northeast-3

Amazon Redshift Spectrum 当 Amazon Redshift 用户在Amazon Glue目录中的数据库上创建外部架构时,他们只能查询该架构中他们拥有 Lake Formation 权限的表和列。

不支持使用清单进行查询。

亚马逊 QuickSight 企业版 当亚马逊 QuickSight 企业版用户在注册到 Lake Formation 的 Amazon S3 位置查询数据集时,该用户必须拥有该数据的 Lake FormationSELECT 权限。
Amazon EMR 使用 Apache Zeppelin 或 EMR 笔记本提交 Apache Spark 应用程序时,将强制执行 Lake Formation 权限。

Lake Formation 还与 Amazon Key Management Service(Amazon KMS) 配合使用,使您能够更轻松地设置这些集成服务,以加密和解密亚马逊Simple Storage Service (Amazon S3) 位置的数据。

支持的区域

有关Amazon Web Services 区域支持的内容Amazon Lake Formation,请参阅Amazon Lake Formation定价

有关每个区域的Lake Formation 服务终端节点列表和Lake Formation 服务配额,请参阅Amazon Lake Formation终端节点和配额

下面提供了 Lake Formation 的受管表、事务支持、单元级安全和存储优化功能Amazon Web Services 区域。

区域名称 区域参数
美国东部(弗吉尼亚州北部) us-east-1
美国东部 (俄亥俄) us-east-2
美国西部(俄勒冈州) us-west-2
Asia Pacific (Mumbai) ap-south-1
Asia Pacific (Seoul) ap-northeast-2
亚太地区(新加坡) ap-southeast-1
Asia Pacific (Sydney) ap-southeast-2
Asia Pacific (Tokyo) ap-northeast-1
欧洲(法兰克福) eu-central-1
Europe (Ireland) eu-west-1
欧洲(伦敦) eu-west-2
欧洲(斯德哥尔摩) eu-north-1
Canada (Central) ca-central-1
South America (São Paulo) sa-east-1

Lake Formation 入门

我们建议您首先阅读以下部分: