本指南展示如何将表格数据从 Amazon Simple Storage Service(Amazon S3)通用存储桶,迁移到专用于表格数据的 Amazon S3 表类数据存储服务。S3 表类数据存储服务引入了一种全新的存储桶类型 — S3 表存储桶,该存储桶用于存储完全托管的 Apache Iceberg 表。与在 Amazon S3 通用存储桶中存储 Iceberg 表相比,使用 S3 表存储桶可将查询性能提升高达三倍,每秒处理的事务量提升高达十倍。

本指南设置了使用 AWS Step Functions 和搭载 Apache Spark 的 Amazon EMR,将在 AWS Glue Data Catalog 中注册且存储于 Amazon S3 通用存储桶中的 Apache Iceberg 表和 Apache Hive 表迁移至 Amazon S3 表存储桶的自动迁移流程。由于对 Apache Iceberg 提供了内置支持,您可以使用包括 Amazon Athena、Amazon Redshift 和 Apache Spark 在内的常用查询引擎,对 S3 表存储桶中的表格数据进行查询。

注意:[免责声明]

架构图

[架构图描述]

下载架构图 PDF 

Well-Architected 支柱

当您在云中构建系统时,AWS Well-Architected Framework 可以帮助您了解所做决策的利弊。框架的六大支柱使您能够学习设计和操作可靠、安全、高效、经济高效且可持续的系统的架构最佳实践。使用 AWS 管理控制台中免费提供的 AWS Well-Architected Tool,您可以通过回答每个支柱的一组问题,根据这些最佳实践来检查您的工作负载。

上面的架构图是按照 Well-Architected 最佳实践创建的解决方案示例。要做到完全的良好架构,您应该遵循尽可能多的 Well-Architected 最佳实践。

  • 通过使用 CloudFormation,您能够实现自动化部署,并全面掌握所有已创建的 AWS 资源及其部署状态。为了加强监控与预警,Lambda 函数会将调用和操作事件存储在 Amazon CloudWatch Logs 中,而 Amazon SNS 则会发送有关迁移工作流状态的电子邮件通知。这些服务共同为 S3 表类数据存储服务提供了强大的审计与监控功能。S3 表类数据存储服务提供自动压缩和未引用文件清理功能。这些服务的组合有助于确保最佳性能,便于故障排查,并将运营开销降至最低,使您能够在数据管理操作中保持卓越表现。

    阅读《卓越运营》白皮书 
  • S3 表类数据存储服务IAM 协同工作,提供强大的安全措施。它们提供基于身份和资源的细粒度访问控制,确保只有经过授权的用户和流程才能与您的数据进行交互。通过静态加密和传输中加密,数据保护得到进一步加强,在迁移过程及之后全程保护您的信息。IAM 旨在精确控制谁可以访问 AWS 资源以及他们可以执行哪些操作,使您能够严格遵守合规要求。通过实施这些安全功能,您可以防止对表数据的未经授权访问,保护敏感信息,并确保您的迁移过程符合组织的安全策略和监管标准。

    阅读《安全性》白皮书 
  • Lambda 可自动扩展,以处理跨多个可用区(AZ)不断增加的并发请求,确保高可用性。Amazon SNS 可跨可用区传递消息,而 Amazon S3 则为日志提供持久的多可用区存储。S3 表类数据存储服务提供自动维护功能,支持并发操作,并继承了 Amazon S3 的持久性。Step Functions 为工作流管理提供重试和捕获机制。AWS Glue 表提供一种无服务器的方式来组织相关数据。这些服务共同支持在整个迁移过程中保持稳定的性能、数据持久性和自动维护,从而最大限度地减少人工干预,并最大程度地提高您的数据操作可靠性。

    阅读《可靠性》白皮书 
  • S3 表类数据存储服务具备与 S3 本身相同的持久性、可用性、可扩展性和性能特征,并且可以自动优化存储以最大限度地提高查询性能并最大限度地降低成本。  Step Functions 通过将工作流分解为更小、可管理的任务并进行编排来提高效率,从而减少总体处理时间并降低资源利用率。AWS Glue 表凭借其读时模式功能,支持对大型数据集进行灵活高效的查询。总体而言,与传统的 Amazon S3 存储桶相比,这些服务为分析工作负载提供了更好的对象数据存储、查询吞吐量和事务处理能力。

    阅读《性能效率》白皮书 
  • Lambda 提供无服务器计算,无需预配置基础设施即可实现多个并行调用的经济高效扩展。Amazon S3 提供可靠的低成本对象存储,Amazon SNS 则能高效地将消息传递给多个订阅用户。S3 表类数据存储服务通过自动压缩、快照管理和未引用文件清理功能,显著降低了运营成本。这种自动化使您无需为优化表而构建和维护昂贵计算集群,而传统上,这一过程需要专业的开发团队和复杂的系统。

    此外,本指南将经济高效的存储与可扩展的计算和编排相结合,而 S3 表类数据存储服务可在不增加额外基础设施成本的情况下,保持 Apache Iceberg 表的高性能。这种方法不仅可以优化开支,还可以提高可靠性,并降低现代分析的准入门槛。

    阅读《成本优化》白皮书 
  • Lambda 是一项无服务器计算服务,可按需预置资源,通过消除闲置基础设施来降低能源消耗。同样地,Amazon SNS 具有无服务器消息传递功能,无需维护不间断运行的服务器,即可高效地在应用程序和订阅用户之间传递消息。Amazon S3 表类数据存储服务通过压缩来优化存储布局,并通过自动维护来删除不必要的数据,从而进一步提高可持续性。这种方法显著减少了数据持久化所需的存储占用空间。通过使用这些无服务器和存储效率高的服务,您的迁移过程不仅更具成本效益,还与环境可持续性目标保持一致,彰显了在云运营中负责任地使用资源的承诺。  

    阅读《可持续性》白皮书 

免责声明

示例代码;软件库;命令行工具;概念验证;模板;或其他相关技术(包括由我方人员提供的任何前述项)作为 AWS 内容按照《AWS 客户协议》或您与 AWS 之间的相关书面协议(以适用者为准)向您提供。您不应将这些 AWS 内容用在您的生产账户中,或用于生产或其他关键数据。您负责根据特定质量控制规程和标准测试、保护和优化 AWS 内容,例如示例代码,以使其适合生产级应用。部署 AWS 内容可能会因创建或使用 AWS 可收费资源(例如,运行 Amazon EC2 实例或使用 Amazon S3 存储)而产生 AWS 费用。

本指南中提及第三方服务或组织并不意味着 Amazon 或 AWS 与第三方之间存在认可、赞助或从属关系。AWS 的指南是一个技术起点,您可以在部署架构时自定义与第三方服务的集成。

此页内容对您是否有帮助?