使用 AWS 数据交换无缝共享 Apache Hudi 数据集 大数据博客
使用 AWS 数据交换无缝共享 Apache Hudi 数据集
作者 Saurabh Bhutyani Ankith Ede 和 Chandra Krishnan日期 2024 年 5 月 22 日分类 Amazon Athena 分析 AWS 数据交换 最佳实践 技术指南
查看原文
文章重点
Apache Hudi 提供了强大的数据管理功能,能够为数据湖中的数据带来完全的在线事务处理 (OLTP) 功能。AWS 数据交换 提供了一个平台,让用户可以查找、订阅和使用第三方数据集,简化了数据共享过程。本文介绍了如何在 AWS 环境下利用 AWS 数据交换与 Apache Hudi 相结合,设置数据共享系统。Apache Hudi 是 Uber 于 2016 年开发的,旨在支持公司快速增长的共享出行平台,建立快速可靠的事务性数据湖。如今,Hudi 已被广泛应用于构建大规模数据湖,是目前最活跃且高效的开源数据湖项目,以其快速增量更新和强大的服务层而著称。
Apache Hudi 是一个重要的数据管理工具,因为它使您能够为存储在数据湖中的数据提供完全的 OLTP 数据库功能。因此,Hudi 用户可以以云对象存储的数据扩展成本存储大量数据,而无需承担数据仓库或数据库的更高扩展费用。Hudi 还提供了数据来源追踪、与主流访问控制和治理机制的集成,以及近实时性能的数据增量提取。AWS 联合开源社区的伙伴,已在多个服务中支持 Apache Hudi,包括 Amazon EMR、Amazon Athena、Amazon Redshift 等服务。
AWS 数据交换 是 AWS 提供的一项服务,使用户能够在 AWS 云中查找、订阅和使用第三方数据集。AWS 数据交换中的数据集是可以随时间更改或更新的数据集合,同时也提供了一个平台,让数据生产者能够让他们的数据供订阅者使用。
在本文中,我们将展示如何利用 AWS 数据交换结合 Apache Hudi 的数据共享能力。
AWS 数据交换的优势
AWS 数据交换为双方提供了一系列好处。对于订阅者而言,它提供了一种方便的方式来访问和使用第三方数据,而无需构建和维护数据交付、权限或计费技术。订阅者可以从合格的 AWS 数据交换提供商处查找和订阅数千个产品,并将其与 AWS 服务一起使用。对于提供商而言,AWS 数据交换提供了一个安全、透明且可靠的渠道,以接触 AWS 客户。它消除了提供商必须构建和维护数据交付、权限和计费技术的需求,使其能够专注于创建和管理数据集。
要成为 AWS 数据交换的提供商,需要遵循以下步骤来确定合格性。提供商需要注册为 提供商,确保其数据符合法律合规要求,并创建数据集、修订和导入资产。提供商可以定义其数据产品的公开报价,包括价格、持续时间、数据订阅协议、退款政策和自定义报价。AWS 数据交换 API 和 AWS 数据交换控制台可用于管理数据集和资产。
总体而言,AWS 数据交换通过为客户提供查找和订阅第三方数据的平台,并为提供商提供发布和管理数据产品的能力,简化了 AWS 云中的数据共享过程。通过消除对复杂数据交付和权限技术的需求,并提供安全可靠的交换渠道,它为订阅者和提供商带来了双重好处。
解决方案概述
将 Apache Hudi 的规模和操作能力与 AWS 数据交换的安全数据共享特性相结合,使您能够维护事务数据的单一真实来源。同时,它还可通过允许其他利益相关者使用数据提供的洞察力,使您实现自动生成商业价值。本文展示了如何在您的 AWS 环境中使用 Amazon Simple Storage ServiceAmazon S3、Amazon EMR、Amazon Athena 和 AWS 数据交换设置这样一个系统。以下图表说明了解决方案架构。
设置环境以进行数据共享
在创建数据集并在 AWS 数据交换中将其列为数据产品之前,您需要先注册为数据生产者。请按照以下步骤注册为数据提供者:
登录您希望用于在 AWS 数据交换上列出和管理产品的 AWS 账号。作为提供商,您负责遵守这些指南以及 AWS Marketplace 卖方条款和条件及 AWS 客户协议。AWS 可能会更新这些指南。AWS 会移除任何违反这些指南的产品,并可能暂停提供商将来使用该服务。AWS 数据交换可能有一些 AWS 区域要求;有关更多信息,请参阅服务端点。
打开 AWS Marketplace 管理门户注册页面,输入有关您将如何使用 AWS 数据交换的相关信息。
在 法定商业名称 中,输入客户在订阅您的数据时看到的名称。检查条款和条件,并选择 我已阅读并同意 AWS Marketplace 卖方条款和条件。
选择与您作为数据提供者将创建的产品类型相关的信息。选择 注册并登录管理门户。
如果您希望向 AWS Marketplace 或 AWS 数据交换提交收费产品,您必须提供您的税务和银行信息。您可以在 设置 页面添加此信息:
选择 支付信息 标签。选择 完成税务信息 并填写表格。选择 完成银行信息 并填写表格。选择 公共配置文件 标签并更新您的公共配置文件。选择 通知 标签,并配置附加电子邮件地址以接收通知。您现在可以配置与 AWS 数据交换的无缝数据共享。
将 Apache Hudi 数据集上载至 AWS 数据交换
在创建 Hudi 数据集并注册为数据提供者后,请按照以下步骤在 AWS 数据交换中创建数据集:
登录您希望用于在 AWS 数据交换上列出和管理产品的 AWS 账号。在 AWS 数据交换控制台上,选择导航窗格中的 拥有的数据集。选择 创建数据集。 选择要创建的数据集类型本篇文章中,我们选择 Amazon S3 数据访问。选择 选择 Amazon S3 位置。 选择存放 Hudi 数据集的 Amazon S3 位置。添加 Amazon S3 位置以便在 AWS 数据交换中注册后,会生成一个存储桶策略。
复制 JSON 文件并更新 Amazon S3 中的存储桶策略。 更新存储桶策略后,选择 下一步。等待 CREATES3DATAACCESSFROMS3BUCKET 任务显示为 完成 ,然后选择 完成数据集。使用注册的 Hudi 数据集发布产品
完成以下步骤以使用 Hudi 数据集发布产品:
在 AWS 数据交换控制台上,选择导航窗格中的 产品。请确保您位于要创建产品的区域。
选择 发布新产品 开始创建新产品的工作流。
选择您想要的产品可见性:公开将在 AWS 数据交换目录以及 AWS Marketplace 网站上公开可用或私有只有您共享的 AWS 账户才能访问。选择您要发布的数据的敏感信息类别。选择 下一步。选择您想要添加到产品的数据集,然后选择 添加所选项 将数据集添加到新产品中。根据时间定义对数据集修订的访问权限。欲了解更多信息,请参阅 修订访问规则。选择 下一步。提供新产品的信息,包括简短描述。其中一个必填字段是产品标志,必须以支持的图像格式PNG、JPG 或 JPEG并且文件大小必须不超过 100 KB。 可选地,在 定义产品 部分中的 数据字典和示例 下,选择数据集并选择 编辑 以上传数据字典到产品中。在 长描述 中,输入在客户查看您的产品时要显示的描述。支持 Markdown 格式。选择 下一步。根据您选择的产品可见性配置报价、续订和数据订阅协议。选择 下一步。审核所有产品和报价信息,然后选择 发布 以创建新私有产品。管理共享数据集的权限和访问控制
在 AWS 数据交换上发布的数据集只有在客户订阅了产品时才能使用。完成以下步骤以订阅该数据:
在 AWS 数据交换控制台中,选择导航窗格中的 浏览目录。在搜索栏中输入您要订阅的产品名称并按 回车。选择该产品以查看其详细页面。在产品详细页面上,选择 继续订阅。选择您喜欢的价格和持续时间组合,选择是否为订阅启用自动续订,并审核报价详情,包括数据订阅协议 (DSA)。数据集可在美国东部弗吉尼亚北部区域使用。
审核定价信息,选择定价报价,如果您和您的组织同意 DSA、定价和支持信息,选择 订阅。
在订阅通过后,您将能够在 订阅 页面上看到该产品。
使用 Amazon S3 访问点在 Athena 中创建表
完成以下步骤以在 Athena 中创建表:
打开 Athena 控制台。如果这是您第一次使用 Athena,选择 探索查询编辑器 并设置写入查询结果的 S3 存储桶:Athena 将在 Athena 控制台上显示查询结果,或者如果您使用的是 ODBC/JDBC 驱动程序,将其发送给您。此外,结果会写入结果 S3 存储桶。
选择 查看设置。
选择 管理。在 查询结果位置和加密 下,选择 浏览 Amazon S3 来选择查询结果将被写入的位置。选择 保存。选择一个存储桶和文件夹,您希望自动将查询结果写入。Athena 将在 Athena 控制台上显示查询结果,或者如果您使用的是 ODBC/JDBC 驱动程序,将其发送给您。此外,结果会写入结果 S3 存储桶。
完成以下步骤以创建工作组:
在导航窗格中,选择 工作组。选择 创建工作组。 为您的工作组输入名称在本文中为 dataexchange,选择您的分析引擎Athena SQL,并选择 启用对 Amazon S3 中请求者支付存储桶的查询。这对于访问第三方数据集非常重要。 在 Athena 查询编辑器中,选择您创建的工作组。 运行以下 DDL 来创建表: 加速器安卓下载免费现在,您可以使用 Athena SQL 语句运行分析查询。以下截图显示了查询结果的示例。
通过 AWS 数据交换和 Apache Hudi 增强客户协作和体验
AWS 数据交换提供了一个安全简便的接口,用于访问高质量数据。通过访问超过 3500 个数据集,您可以在分析和数据科学中使用顶级高质量数据。此外,能够将 Hudi 数据集以本篇文章显示的方式添加,允许您与湖库型用例实现更深入的集成。将 Apache Hudi 数据集融入 AWS 数据交换可以加速商业成果的几种潜在用例包括:
近实时更新的数据集 Apache Hudi 的一大特征是能够提供近实时的增量数据处理。随着新数据的流入,Hudi 允许实时提取数据,提供一个最新的真相源。AWS 数据交换支持动态更新的数据集,能够跟上这些增量更新。对于依赖最新信息的下游客户,Apache Hudi 和 AWS 数据交换的组合意味着他们可以在 AWS 数据交换上订阅