百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

深入解析全新 AWS S3 Tables:重塑数据湖仓架构

liuian 2025-05-16 14:47 3 浏览

在 AWS re:Invent 2024 大会中,AWS 发布了 Amazon S3 Tables : 一项专为可扩展存储和管理结构化数据而设计的解决方案,基于 Apache Iceberg 开放表格式标准构建。在深入了解 Amazon S3 Tables 之前,我们需要先理解什么是“开放表格式”(Open Table Format, 简称 OTF)以及 Apache Iceberg。

什么是开放表格式(Open Table Format,OTF)?

在传统数据库中,读取数据通常涉及安装数据库软件、创建数据库、定义表结构(schema)和表或外部表,然后再从这些表中读取数据。而开放表格式则采取不同方式:

  • 数据直接以文件形式(如 Apache Parquet、Apache ORC 或 Apache Avro)存储在数据湖中。
  • 不需要将数据加载到数据库中,而是通过表格式协议将这些文件 组织并管理为“虚拟表”,就像它们存在于数据库中一样。

为了简化查询,可以使用例如 AWS Glue Catalog 这样的目录系统来注册这些虚拟表,进而让 Apache Spark、Trino、AWS Athena 等查询引擎 能够无缝访问和处理数据。

目前主流的开放表格式包括:

  • Apache Iceberg
  • Delta Lake
  • Apache Hudi

这些格式因其 高性能、强可扩展性以及支持时间旅行查询和 schema 演化 等高级功能而受到广泛采用。

Apache Iceberg 简介

Apache Iceberg 是一款为数据湖中的大规模数据集设计的开源表格式,提供如下特性:

  • 支持 ACID 事务,确保数据一致性;
  • 支持 schema 演化,适应业务变化;
  • 支持 时间旅行(Time Travel),便于历史数据回溯与审计。

Iceberg 提供了一种类似传统数据库的数据管理体验,让 AWS S3 这类云对象存储更具数据库特性,同时提升了数据分析任务的 性能、数据可靠性和灵活性

S3 中的桶类型演进

在此次发布之前,Amazon S3 主要有两种类型的存储桶(bucket):

  1. 通用存储桶(General Purpose Bucket):最初的标准 S3 存储类型;
  2. 目录桶(Directory Bucket):在 2023 年 re:Invent 推出,属于 S3 Express,支持更快的性能和分层存储结构。

而在 2024 年,Amazon S3 Tables 引入了第三种桶类型:S3 Table Bucket —— 专门用于存储结构化表格数据,与 Apache Iceberg 深度集成,提供数据库级的数据管理体验。

S3 Tables

Amazon S3 Tables 是一种 在 S3 中托管的 Apache Iceberg 表,旨在让结构化数据(如每日交易记录、传感器读数或广告曝光等)存储和分析更加简单高效。这类数据以行和列的形式组织,类似于传统数据库中的表。将 Apache Iceberg 表直接集成到 Amazon S3 中的 全托管服务,标志着数据湖与数据仓库(湖仓)融合迈出了重要一步。

使用 S3 Tables 时,数据存储在一种名为 “表桶”(table bucket) 的特殊 S3 存储桶中。该桶以表为子资源进行组织,并原生支持 Apache Iceberg 格式,从而实现对表数据的高效管理与无缝查询。

用户可以使用标准 SQL 语句,结合 Amazon Athena、Amazon Redshift、Apache Spark 等主流工具,对这些表进行查询,数据分析变得直观且易于上手。S3 Tables 的设计目标是在控制存储成本的同时,显著提升查询性能

S3 Table资源分类体系(New Taxonomy)

  • Namespaces(命名空间):命名空间是对 S3 表的逻辑分组方式,用于更高效地组织和管理表。它们不是实际的物理资源(不像 S3 表或表桶那样存在),而是纯粹的组织工具,便于进行权限控制和数据管理的扩展。
  • S3 表桶 & 表级策略(Table Bucket & Table Policies):现在,您可以为表桶(Bucket)和表(Table)分别编写资源级策略(Resource-Based Policies),同时也支持基于命名空间的策略管理。这增强了精细化的访问控制能力。
  • 表的 ARN(Table ARN):每个 S3 表现在都拥有一个唯一的 ARN(Amazon Resource Name),用于唯一标识和编写资源访问策略,便于集成与权限管理。
  • S3 Tables 接口终端节点(S3 Tables Endpoint):Amazon 为 S3 Tables 引入了全新的 接口终端节点(Interface Endpoint),这些终端节点是区域(Region)专属的,支持通过私有网络安全访问。
  • S3 Tables 操作类 API(Operational APIs):Amazon 推出了全新的 API,用于执行表的基本操作,包括:istTable 、CreateTable、GetTableMetadataLocation、UpdateMetadataLocation、DeleteTable
  • S3 Tables 管理类 API(Management APIs):为更好地进行表和桶的管理,AWS 还新增了以下 API:PutTablePolicy、PutTableBucketPolicy、PutTableMaintenanceConfig、PutTableBucketMaintenanceConfig

这些新能力标志着 S3 Tables 在数据治理、权限控制和操作自动化方面的全面进化。

S3 Tables 的核心优势与特性

Amazon S3 表兼具现代表存储系统的可扩展性、性能和可管理性。通过增强性能、确保表级安全性并优化存储成本,它们解决了大规模管理表格数据的核心挑战,使其成为一款强大的解决方案。

  1. 面向分析任务的性能优化
  2. 查询性能提升最高可达3倍,每秒事务数提升可达10倍(相较于用户自建 Iceberg 表+通用 S3 存储)。
  3. 自动进行 表维护、文件压缩和快照管理,持续优化查询效率、降低存储成本。
  4. 无缝对接 AWS 分析服务
  5. 支持 Apache Iceberg 标准,与 Amazon Athena、Redshift、EMR 等分析服务无缝对接。
  6. 用户可继续使用现有的工具链和技能,简化数据处理流程,提高开发效率
  7. 简化的数据管理与治理
  8. 引入 “表桶(table buckets)” 的概念,为表数据专门设计的 S3 存储类型。
  9. 支持表级权限控制,便于数据治理。
  10. 原生支持 Iceberg 的 schema 演化 和 time travel 功能,表结构可随业务变化灵活演进,无需复杂迁移。
  11. 对 Snowflake 与 Iceberg 格局的影响
  12. AWS 的深度集成意味着对 Apache Iceberg 作为开放表格式的强力背书
  13. Snowflake 也在积极支持 Iceberg,S3 Tables 的出现促进 跨平台协作与兼容,为同时使用 AWS 和 Snowflake 的企业带来更大灵活性。

S3 Tables 对湖仓架构和数据分析的深远意义

  1. 加速湖仓一体化落地:S3 Tables 打通了数据湖存储与数据仓库引擎的界限,以 Iceberg 为桥梁,实现结构化数据在数据湖中高性能、安全管理和查询,推动企业真正从“数仓+数湖”走向“统一的湖仓架构”。
  2. 降低构建现代数据平台的门槛:用户无需自己搭建元数据服务或处理表维护事务,即可使用标准的 Iceberg 表模型,极大简化数据湖平台运维复杂度
  3. 增强数据资产治理与生命周期管理能力:借助 S3 Tables 的原生表模型和权限管理,企业可以更轻松实现数据审计、访问控制、版本回溯等功能,提升数据可信度和合规性。
  4. 推动开源生态标准化与可移植性:随着 AWS 和 Snowflake 等巨头对 Iceberg 的支持,企业不再被绑定于某一个数据平台,可以在多个云服务和计算引擎之间灵活切换,提升架构弹性。


Amazon S3 Tables 的发布不仅是 AWS 数据湖服务的重要升级,更标志着 “数据湖即数据仓库” 的理念正在成为现实。它将 性能、兼容性、治理能力 三者统一于一体,为构建下一代统一的数据分析平台提供了强有力的基础设施支撑。

在 AWS re:Invent 2024 大会中,AWS 发布了 Amazon S3 Tables : 一项专为可扩展存储和管理结构化数据而设计的解决方案,基于 Apache Iceberg 开放表格式标准构建。在深入了解 Amazon S3 Tables 之前,我们需要先理解什么是“开放表格式”(Open Table Format, 简称 OTF)以及 Apache Iceberg。

什么是开放表格式(Open Table Format,OTF)?

在传统数据库中,读取数据通常涉及安装数据库软件、创建数据库、定义表结构(schema)和表或外部表,然后再从这些表中读取数据。而开放表格式则采取不同方式:

  • 数据直接以文件形式(如 Apache Parquet、Apache ORC 或 Apache Avro)存储在数据湖中。
  • 不需要将数据加载到数据库中,而是通过表格式协议将这些文件 组织并管理为“虚拟表”,就像它们存在于数据库中一样。

为了简化查询,可以使用例如 AWS Glue Catalog 这样的目录系统来注册这些虚拟表,进而让 Apache Spark、Trino、AWS Athena 等查询引擎 能够无缝访问和处理数据。

目前主流的开放表格式包括:

  • Apache Iceberg
  • Delta Lake
  • Apache Hudi

这些格式因其 高性能、强可扩展性以及支持时间旅行查询和 schema 演化 等高级功能而受到广泛采用。

Apache Iceberg 简介

Apache Iceberg 是一款为数据湖中的大规模数据集设计的开源表格式,提供如下特性:

  • 支持 ACID 事务,确保数据一致性;
  • 支持 schema 演化,适应业务变化;
  • 支持 时间旅行(Time Travel),便于历史数据回溯与审计。

Iceberg 提供了一种类似传统数据库的数据管理体验,让 AWS S3 这类云对象存储更具数据库特性,同时提升了数据分析任务的 性能、数据可靠性和灵活性

S3 中的桶类型演进

在此次发布之前,Amazon S3 主要有两种类型的存储桶(bucket):

  1. 通用存储桶(General Purpose Bucket):最初的标准 S3 存储类型;
  2. 目录桶(Directory Bucket):在 2023 年 re:Invent 推出,属于 S3 Express,支持更快的性能和分层存储结构。

而在 2024 年,Amazon S3 Tables 引入了第三种桶类型:S3 Table Bucket —— 专门用于存储结构化表格数据,与 Apache Iceberg 深度集成,提供数据库级的数据管理体验。

S3 Tables

Amazon S3 Tables 是一种 在 S3 中托管的 Apache Iceberg 表,旨在让结构化数据(如每日交易记录、传感器读数或广告曝光等)存储和分析更加简单高效。这类数据以行和列的形式组织,类似于传统数据库中的表。将 Apache Iceberg 表直接集成到 Amazon S3 中的 全托管服务,标志着数据湖与数据仓库(湖仓)融合迈出了重要一步。

使用 S3 Tables 时,数据存储在一种名为 “表桶”(table bucket) 的特殊 S3 存储桶中。该桶以表为子资源进行组织,并原生支持 Apache Iceberg 格式,从而实现对表数据的高效管理与无缝查询。

用户可以使用标准 SQL 语句,结合 Amazon Athena、Amazon Redshift、Apache Spark 等主流工具,对这些表进行查询,数据分析变得直观且易于上手。S3 Tables 的设计目标是在控制存储成本的同时,显著提升查询性能

S3 Table资源分类体系(New Taxonomy)

  • Namespaces(命名空间):命名空间是对 S3 表的逻辑分组方式,用于更高效地组织和管理表。它们不是实际的物理资源(不像 S3 表或表桶那样存在),而是纯粹的组织工具,便于进行权限控制和数据管理的扩展。
  • S3 表桶 & 表级策略(Table Bucket & Table Policies):现在,您可以为表桶(Bucket)和表(Table)分别编写资源级策略(Resource-Based Policies),同时也支持基于命名空间的策略管理。这增强了精细化的访问控制能力。
  • 表的 ARN(Table ARN):每个 S3 表现在都拥有一个唯一的 ARN(Amazon Resource Name),用于唯一标识和编写资源访问策略,便于集成与权限管理。
  • S3 Tables 接口终端节点(S3 Tables Endpoint):Amazon 为 S3 Tables 引入了全新的 接口终端节点(Interface Endpoint),这些终端节点是区域(Region)专属的,支持通过私有网络安全访问。
  • S3 Tables 操作类 API(Operational APIs):Amazon 推出了全新的 API,用于执行表的基本操作,包括:istTable 、CreateTable、GetTableMetadataLocation、UpdateMetadataLocation、DeleteTable
  • S3 Tables 管理类 API(Management APIs):为更好地进行表和桶的管理,AWS 还新增了以下 API:PutTablePolicy、PutTableBucketPolicy、PutTableMaintenanceConfig、PutTableBucketMaintenanceConfig

这些新能力标志着 S3 Tables 在数据治理、权限控制和操作自动化方面的全面进化。

S3 Tables 的核心优势与特性

Amazon S3 表兼具现代表存储系统的可扩展性、性能和可管理性。通过增强性能、确保表级安全性并优化存储成本,它们解决了大规模管理表格数据的核心挑战,使其成为一款强大的解决方案。

  1. 面向分析任务的性能优化
  2. 查询性能提升最高可达3倍,每秒事务数提升可达10倍(相较于用户自建 Iceberg 表+通用 S3 存储)。
  3. 自动进行 表维护、文件压缩和快照管理,持续优化查询效率、降低存储成本。
  4. 无缝对接 AWS 分析服务
  5. 支持 Apache Iceberg 标准,与 Amazon Athena、Redshift、EMR 等分析服务无缝对接。
  6. 用户可继续使用现有的工具链和技能,简化数据处理流程,提高开发效率
  7. 简化的数据管理与治理
  8. 引入 “表桶(table buckets)” 的概念,为表数据专门设计的 S3 存储类型。
  9. 支持表级权限控制,便于数据治理。
  10. 原生支持 Iceberg 的 schema 演化 和 time travel 功能,表结构可随业务变化灵活演进,无需复杂迁移。
  11. 对 Snowflake 与 Iceberg 格局的影响
  12. AWS 的深度集成意味着对 Apache Iceberg 作为开放表格式的强力背书
  13. Snowflake 也在积极支持 Iceberg,S3 Tables 的出现促进 跨平台协作与兼容,为同时使用 AWS 和 Snowflake 的企业带来更大灵活性。

S3 Tables 对湖仓架构和数据分析的深远意义

  1. 加速湖仓一体化落地:S3 Tables 打通了数据湖存储与数据仓库引擎的界限,以 Iceberg 为桥梁,实现结构化数据在数据湖中高性能、安全管理和查询,推动企业真正从“数仓+数湖”走向“统一的湖仓架构”。
  2. 降低构建现代数据平台的门槛:用户无需自己搭建元数据服务或处理表维护事务,即可使用标准的 Iceberg 表模型,极大简化数据湖平台运维复杂度
  3. 增强数据资产治理与生命周期管理能力:借助 S3 Tables 的原生表模型和权限管理,企业可以更轻松实现数据审计、访问控制、版本回溯等功能,提升数据可信度和合规性。
  4. 推动开源生态标准化与可移植性:随着 AWS 和 Snowflake 等巨头对 Iceberg 的支持,企业不再被绑定于某一个数据平台,可以在多个云服务和计算引擎之间灵活切换,提升架构弹性。


Amazon S3 Tables 的发布不仅是 AWS 数据湖服务的重要升级,更标志着 “数据湖即数据仓库” 的理念正在成为现实。它将 性能、兼容性、治理能力 三者统一于一体,为构建下一代统一的数据分析平台提供了强有力的基础设施支撑。

相关推荐

【常识】如何优化Windows 7

优化Windows7可以让这个经典系统运行更流畅,特别是在老旧硬件上。以下是经过整理的实用优化方案,分为基础优化和进阶优化两部分:一、基础优化(适合所有用户)1.关闭不必要的视觉效果右键计算机...

系统优化!Windows 11/10 必做的十个优化配置

以下是为Windows10/11用户整理的10个必做优化配置,涵盖性能提升、隐私保护和系统精简等方面,操作安全且无需第三方工具:1.禁用不必要的开机启动项操作路径:`Ctrl+S...

最好用音频剪辑的软件,使用方法?

QVE音频剪辑是一款简单实用的软件,功能丰富,可编辑全格式音频。支持音频转换、合并、淡入淡出、变速、音量调节等,无时长限制,用户可自由剪辑。剪辑后文件音质无损,支持多格式转换,便于存储与跨设备播放,满...

Vue2 开发总踩坑?这 8 个实战技巧让代码秒变丝滑

前端开发的小伙伴们,在和Vue2打交道的日子里,是不是总被各种奇奇怪怪的问题搞得头大?数据不响应、组件传值混乱、页面加载慢……别慌!今天带来8个超实用的Vue2实战技巧,每一个都能直击痛...

Motion for Vue:为Vue量身定制的强大动画库

在前端开发中,动画效果是提升用户体验的重要手段。Vue生态系统中虽然有许多动画库,但真正能做到高性能、易用且功能丰富的并不多。今天,我们要介绍的是MotionforVue(motion-v),...

CSS view():JavaScript 滚动动画的终结

前言CSSview()方法可能会标志着JavaScript在制作滚动动画方面的衰落。如何用5行CSS代码取代50多行繁琐的JavaScript,彻底改变网页动画每次和UI/U...

「大数据」 hive入门

前言最近会介入数据中台项目,所以会推出一系列的跟大数据相关的组件博客与文档。Hive这个大数据组件自从Hadoop诞生之日起,便作为Hadoop生态体系(HDFS、MR/YARN、HIVE、HBASE...

青铜时代的终结:对奖牌架构的反思

作者|AdamBellemare译者|王强策划|Tina要点运维和分析用例无法可靠地访问相关、完整和可信赖的数据。需要一种新的数据处理方法。虽然多跳架构已经存在了几十年,并且可以对...

解析IBM SQL-on-Hadoop的优化思路

对于BigSQL的优化,您需要注意以下六个方面:1.平衡的物理设计在进行集群的物理设计需要考虑数据节点的配置要一致,避免某个数据节点性能短板而影响整体性能。而对于管理节点,它虽然不保存业务数据,但作...

交易型数据湖 - Apache Iceberg、Apache Hudi和Delta Lake的比较

图片由作者提供简介构建数据湖最重要的决定之一是选择数据的存储格式,因为它可以大大影响系统的性能、可用性和兼容性。通过仔细考虑数据存储的格式,我们可以增强数据湖的功能和性能。有几种不同的选择,每一种都有...

深入解析全新 AWS S3 Tables:重塑数据湖仓架构

在AWSre:Invent2024大会中,AWS发布了AmazonS3Tables:一项专为可扩展存储和管理结构化数据而设计的解决方案,基于ApacheIceberg开放表格...

Apache DataFusion查询引擎简介

简介DataFusion是一个查询引擎,其本身不具备存储数据的能力。正因为不依赖底层存储的格式,使其成为了一个灵活可扩展的查询引擎。它原生支持了查询CSV,Parquet,Avro,Json等存储格式...

大数据Hadoop之——Flink Table API 和 SQL(单机Kafka)

一、TableAPI和FlinkSQL是什么TableAPI和SQL集成在同一套API中。这套API的核心概念是Table,用作查询的输入和输出,这套API都是批处理和...

比较前 3 名Schema管理工具

关注留言点赞,带你了解最流行的软件开发知识与最新科技行业趋势。在本文中,读者将了解三种顶级schema管理工具,如AWSGlue、ConfluentSchemaRegistry和Memph...

大数据技术之Flume

第1章概述1.1Flume定义Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。Flume基于流式架构,灵活简单。1.2Flume的优点1.可以和...