标签 Apache Iceberg 下的文章

生成式 AI 的投资回报远超预期?Snowflake 调研全球 1900 位企业与 IT 专业人士后发现平均 ROI 高达 41%!点击下载完整报告

在这场以 What’s New for Snowflake Platform 为主题的技术发布中,Snowflake 产品管理高级总监 Artin Avanes,与产品管理团队成员 Christine 和 Raja Balakrishnan 一同,系统性地回顾并发布了 Snowflake 平台在过去一段时间内的重要进展。

不同于围绕单点功能的更新介绍,这场分享从一开始就明确了一个整体视角:Snowflake 正围绕 简洁性(Simplicity)、互联平台(Connected) 和 可信平台(Trusted) 三个关键支柱,持续重塑其作为数据与 AI 基础平台的能力边界。

简洁性:把能用变成规模化可用

Christine 在分享中重点展开了 Snowflake 的易用性支柱。她反复强调一个核心判断:真正的易用,并不是功能更少,而是在规模扩大之后依然可控、可理解、可管理。

Snowflake 仍然坚持单一产品、单一引擎的平台形态,覆盖分析型、混合型以及事务型工作负载,并以全托管的方式承担大部分运维复杂度。在过去 12 个月中,Snowflake 针对核心分析型工作负载实现了 两倍性能提升,且这一优化由平台自动完成,而非依赖用户侧调优。

随着越来越多企业在一个组织内拥有大量 Snowflake 账户和对象,组织级管理能力 成为此次更新的重点之一。Snowflake 正式推出组织账户(Organization Account),作为统一的全局管理入口;同时,通过组织级视图聚合各账户元数据,使使用情况、对象分布与成本消耗在组织层面变得可见。

在此基础上,Snowflake 进一步引入 组织用户与用户组 的管理模式,允许用户只在组织层定义一次,便可被授权至多个账户,避免重复配置。这一能力被视为大规模 Snowflake 部署的关键基础设施,目前已进入即将 GA 的阶段。

从可扩展到可运营:SPCS 的持续演进

围绕 Snowpark Container Services(SPCS),Christine 也披露了一系列面向运营友好型的增强。

SPCS 的目标并非只是让用户把自定义应用带到 Snowflake 平台,而是在 Snowflake 的安全边界内,尽可能降低运行和维护这些应用的成本与复杂度。新引入的自动扩缩容、增强版自动扩缩容以及即将上线的自动暂停能力,使服务能够根据负载峰谷动态调整,避免资源闲置。

同时,SPCS 在 Snowsight 中获得了更完整的可视化体验。开发者可以直接在 UI 中创建服务、执行作业,并查看历史日志、指标与平台事件,这些能力为应用与数据管道提供了内建的可观测性基础。

在性能层面,SPCS 即将支持 阶段挂载(Stage Mounts),为内部阶段提供更快速、稳定的文件访问能力,直接服务于 AI/ML 数据加载和管道吞吐需求。同时,块存储层新增的端到端加密能力,在不修改应用代码的前提下,增强了整体安全性。

互联平台:让数据真正跨系统流动

在互联这一支柱下,Artin 将重点放在 跨云互操作、数据共享与协作能力上。

首先,OpenFlow 作为托管体验已正式 GA,使来自异构数据系统的数据更容易被引入 Snowflake。其次,Snowflake 宣布与 SAP 的双向集成能力,以及 Oracle CDC 即将进入公开预览,进一步拓展了平台在企业数据整合场景中的覆盖面。

在协作层面,Snowflake 对开放表格式的支持持续加深。用户现在不仅可以共享 Apache Iceberg 和 Delta Lake 表,还能够共享语义视图,用于支持更准确的 AI 和 BI 应用。同时,笔记本、用户自定义函数等对象也可以通过 Snowflake 原生应用框架进行打包与分发,使构建和交付数据与 AI 产品的路径更加完整。

可信平台:为 AI 应用补上信任这一层

Raja Balakrishnan 的分享,集中在 Snowflake 平台的可信性升级上。他将 Horizon Catalog 定位为一个核心枢纽:既是开放表格式互操作的目录,也是可扩展治理与 AI 数据上下文的载体。

通过嵌入 Iceberg Open API 和 Apache Polaris API,Horizon Catalog 支持外部引擎直接读写 Snowflake 管理的 Iceberg 表,并在 Snowflake 内部展示来自外部数据源的血缘关系。在治理能力上,平台新增了多项目录功能,包括账户级 PII 自动检测、数据剖析与质量监控、非结构化数据中的 PII 识别,以及用于备份的数据快照能力。

在 Trust Center 中,数据安全能力被进一步整合。PII 检测正式进入熟悉的安全管理界面,同时支持异常访问告警和组织级安全态势可视化。安全扩展也可以通过市场形式被合作伙伴提供。

用 AI 治理 AI

在演示环节,Raja 重点展示了一个新的 AI SQL 函数 AI Redact。该函数能够自动检测并编辑非结构化文本中的敏感信息,并允许用户精细控制哪些字段被视为 PII。

通过一个客服通话记录的示例,他演示了如何在不暴露任何敏感信息的前提下,对文本进行情感分析:先对原始文本进行 PII 编辑,再将清洗后的数据输入 AI 分析函数。整个过程无需复杂流程,仅通过 SQL 即可完成。

此外,Snowflake 在 Snowsight 中引入了全新的数据质量界面。系统可自动生成数据剖析结果,并在 AI 辅助下帮助用户快速配置质量监控规则。例如,在 Customer ID 列被识别为潜在主键后,平台会自动建议唯一性约束,并展示其推理逻辑,确保 Human-in-the-loop。

在分享的最后,Artin 提到,随着平台能力的不断扩展,客户越来越关心如何用得更好。为此,Snowflake 正式推出 Well-Architected Framework,希望将多年积累的实践经验沉淀为一套可参考的方法论,覆盖从安全治理到成本优化等多个关键维度。

原视频地址:https://www.snowflake.com/en/build/americas/agenda/?login=ML

🔥【活动推荐】2 月 2 日-6 日,Snowflake Discover重磅上线!这是一场免费、线上、可实时互动的技术活动,旨在帮助您全面提升数据与 AI 能力,深入了解如何更高效地管理、整合与分析数据。4 天时间 18 场技术干货分享,由来自亚太地区的一线技术专家亲自分享与讲解~

点击报名 Discover,更多 Snowflake 精彩活动请关注专区

Apache Gravitino Introduction.png

Apache Gravitino 概要介绍

作者: shaofeng shi
最后更新: [2025-12-29]

背景

在大数据时代,企业往往需要管理来自多云多域、异构数据源的元数据,如 Apache Hive、MySQL、PostgreSQL、Iceberg、Lance、S3、GCS 等; 此外,随着 AI 模型训练和推理的大量应用,海量的多模态数据、模型元数据等也需要一种方案进行管理。传统的做法是为每个数据源单独管理元数据,这不仅增加了运维复杂度,还容易造成数据孤岛。Apache Gravitino 作为一个高性能、支持地理分布式的联邦元数据湖,为我们提供了统一管理多源元数据的解决方案。

Gravitino 最初是由 Datastrato 公司发起并创立,在2023年开源,2024年捐赠给 Apache 孵化器,在2025年5月从 Apache 孵化器毕业,成为 Apache Top Level Project。目前已经在小米、腾讯、知乎、Uber、Pinterest 等企业落地生产环境。

什么是 Apache Gravitino?

Apache Gravitino 是一个高性能、地理分布式、联邦化的元数据湖管理系统,为用户提供统一的数据和AI资产管理平台,它能够:

  • 统一元数据管理:为不同类型的数据源提供统一的元数据模型和API
  • 直接元数据管理:直接管理底层系统,变更会实时反映到源系统
  • 多引擎支持:支持Trino、Spark、Flink等多种查询引擎
  • 地理分布式部署:支持跨区域、跨云的部署架构
  • AI资产管理:不仅管理数据资产,还支持AI/ML模型的元数据管理

核心概念包括:

  • Metalake:元数据的容器/租户,通常一个组织对应一个metalake
  • Catalog:来自特定元数据源的元数据集合
  • Schema:第二级命名空间,对应数据库中的schema概念
  • Table:最底层的对象,表示具体的数据表

Gravitino 整体架构

Apache Gravitino 核心特性概述

统一元数据管理

Gravitino 提供了一个统一的元数据管理层,支持多种数据源的集成:

支持的数据源类型:

  • 关系型数据库:MySQL、PostgreSQL、OceanBase、Apache Doris、StarRocks 等
  • 大数据存储:Apache Hive、Apache Iceberg、Apache Hudi、Apache Paimon、Delta Lake(开发中)
  • 消息队列:Apache Kafka
  • 文件系统:HDFS、S3、GCS、Azure Blob Storage、阿里云 OSS
  • AI/ML 数据格式:Lance(专为AI/ML工作负载设计的列式数据格式)

REST API 服务

Gravitino 提供了丰富的 REST API 服务,支持不同数据格式的标准化访问:

Gravitino 核心 REST API

  • 完整的元数据管理 RESTful API 接口
  • 支持 Metalake、Catalog、Schema、Table 等所有元数据对象的 CRUD 操作
  • 支持用户、组、角色和权限管理的完整 API
  • 提供标签、策略、模型等高级功能的 API 接口
  • 支持多种认证方式(Simple、OAuth2、Kerberos)

Iceberg REST 服务

  • 遵循 Apache Iceberg REST API 规范
  • 支持多种后端存储(Hive、JDBC、自定义后端)
  • 提供完整的表管理和查询能力
  • 支持多种存储系统(S3、HDFS、GCS、Azure等)

Lance REST 服务

  • 实现 Lance REST API 规范
  • 专为 AI/ML 工作负载优化
  • 支持高效的向量数据存储和检索
  • 提供命名空间和表管理功能

元数据实时获取和修改

Gravitino 采用直接元数据管理模式,确保数据的实时性和一致性:

  • 实时同步:对元数据的变更会立即反映到底层数据源
  • 双向同步:支持从 Gravitino 到数据源,以及从数据源到 Gravitino 的元数据同步
  • 事务支持:保证元数据操作的原子性和一致性
  • 版本管理:支持元数据的版本控制和历史追踪

统一访问控制

Gravitino 实现了跨多数据源的统一权限管理:

核心特性:

  • 基于角色的访问控制(RBAC):支持用户、组、角色的灵活权限管理
  • 所有权模型:每个元数据对象都有明确的所有者
  • 权限继承:支持层次化的权限继承机制
  • 细粒度控制:从 Metalake 到具体表的多层级权限控制

支持的权限类型:

  • 用户和组管理权限
  • 目录和模式创建权限
  • 表、topic、fileset的读写权限
  • 模型注册和版本管理权限
  • 标签和策略应用权限

统一数据血缘

基于 OpenLineage 标准,Gravitino 提供了完整的数据血缘追踪能力:

  • 自动血缘收集:通过 Spark 插件自动收集数据血缘信息
  • 统一标识符:将不同数据源的标识符转换为 Gravitino 统一标识符
  • 多数据源支持:支持 Hive、Iceberg、JDBC、文件系统等多种数据源的血缘追踪

高可用性和扩展性

部署模式:

  • 单机部署:适合开发和测试环境
  • 集群部署:支持高可用和负载均衡
  • Kubernetes 部署:支持容器化部署和自动扩缩容
  • Docker 支持:提供官方 Docker 镜像

存储后端:

  • 支持多种元数据存储后端(MySQL、PostgreSQL等)
  • 支持分布式存储系统

安全特性

认证方式:

  • Simple 认证(用户名/密码)
  • OAuth2 认证
  • Kerberos 认证(针对 Hive 后端)

凭证管理:

  • 支持云存储凭证代理(S3、GCS、Azure等)
  • 动态凭证刷新
  • 安全的凭证传递机制

Apache Gravitino 的集成能力

Gravitino 与主流计算引擎和数据处理框架深度集成,为用户提供统一的数据访问体验。

计算引擎集成

Apache Spark

  • 通过 Gravitino Spark Connector 实现无缝集成
  • 支持 Spark SQL 和 DataFrame API
  • 自动数据血缘收集和追踪
  • 支持多种数据源的统一访问

Trino

  • 通过 Gravitino Trino Connector 服务集成
  • 支持跨数据源的联邦查询
  • 高性能的分析查询能力

Apache Flink

  • 通过 Gravitino Flink Connector 服务集成
  • 支持流批一体化数据处理
  • 实时数据处理和分析

Python 生态集成

PyIceberg

  • 支持 Python 环境下的 Iceberg 表访问
  • 与 Gravitino Iceberg REST 服务集成
  • 支持数据科学和机器学习工作流
  • 提供 Pandas 兼容的数据接口

Daft

  • 现代化的分布式数据处理框架
  • 专为 AI/ML 工作负载优化
  • 支持多模态数据处理
  • 与 Gravitino 元数据管理集成

云原生集成

Kubernetes

  • 支持 Kubernetes 原生部署
  • 提供 Helm Charts 和 Operator
  • 支持自动扩缩容和故障恢复
  • 集成云原生监控和日志系统

API 和 SDK

REST API

  • 完整的 RESTful API 接口
  • 支持所有元数据管理操作
  • 标准化的 HTTP 接口
  • 支持多种认证方式

Java SDK

  • 原生 Java 客户端库
  • 类型安全的 API 接口
  • 支持连接池和重试机制
  • 完整的异常处理

Python SDK

  • Python 客户端库
  • 支持异步操作
  • 与 Jupyter Notebook 集成
  • 支持数据科学工作流

这些集成能力使得 Gravitino 能够无缝融入现有的数据基础设施,为用户提供统一、高效的数据管理体验。后续文章将详细介绍 Gravitino 的各项能力、各个集成组件的配置和使用方法,敬请关注。

下一步


Apache Gravitino正在快速发展中,本文基于最新版本编写。如遇到问题,建议查阅官方文档或在GitHub上提交issue。

亚马逊云科技最近宣布为S3 Tables引入两项新功能,第一项功能是新的智能分层存储类,该存储类能够根据访问模式自动优化成本,第二项功能是支持跨 AWS 区域和账户自动维护一致的Apache Iceberg表副本的复制功能,该过程无需手动同步。

 

智能分层存储类会将数据自动分配到最具成本效益的三个低延迟层级之一,即 Frequent Access、Infrequent Access 或 Archive Instant Access。据公司介绍,最后一种是最低成本的层级,比 Infrequent Access 层级便宜 68%。亚马逊云科技的主任开发者倡导者 Sebastian Stromacq 这样写到:

在无访问达 30 天后,数据会被移动到 Infrequent Access 层级,在 90 天后,则会迁移到 Archive Instant Access 层级,这一过程不会对应用程序造成影响或性能降低。

 

默认情况下,表使用标准存储类,但创建表时可以指定智能分层(Intelligent-Tiering)作为存储类,用户也可以在表存储桶级别配置默认存储类。用户可以将智能分层设置为表存储桶的默认存储类,如果在创建表时未指定存储类,那么表将自动存储在智能分层中。

 

用户可以利用AWS命令行界面(AWS CLI),通过 put-table-bucket-storage-class 和 get-table-bucket-storage-class 命令来更改或验证其 S3 表格存储桶的存储层级。相关命令如下所示:

aws s3tables put-table-bucket-storage-class \   --table-bucket-arn $TABLE_BUCKET_ARN  \   --storage-class-configuration storageClass=INTELLIGENT_TIERING# Verify the storage classaws s3tables get-table-bucket-storage-class \   --table-bucket-arn $TABLE_BUCKET_ARN  \{ "storageClassConfiguration":   {      "storageClass": "INTELLIGENT_TIERING"   }}
复制代码

来自 Imperious Enterprise 的 AWS 架构师 Adefemi Adeyemi 在 LinkedIn 的帖子中指出:

大多数分析数据集在一段时间内是“热”的,但随后会逐渐“冷却”。借助 S3 Tables 的智能分层功能,你无需不断调整 Iceberg 数据的生命周期策略。该服务会根据访问模式自动将对象移至更便宜的存储层级,这对长期存在的数据湖来说是一大优势。

 

此外,S3 Tables 的复制功能可以帮助用户跨 AWS 区域和账户维护表格的一致性只读副本。当声明目标表格的存储桶时,服务会创建只读的副本表格,并以时间顺序复制所有更新,同时保持父子快照关系。这些副本表格将在源表格更新后的几分钟内得到更新,并支持独立于源表格的加密和保留策略。

 

Stromacq 说到:

用户可以通过Amazon SageMaker Unified Studio或任何兼容 Iceberg 的引擎(包括DuckDBPyIcebergApache SparkTrino)查询副本表格。

 

借助 AWS Management Console、API 或AWS SDK,用户可以创建和维护表格副本。此外,他们可以指定用于复制源表格的目标表格存储桶。当用户启用复制功能时,S3 Tables 会在这些存储桶中创建只读副本,使用最新状态进行回填,并持续监控更新以保持同步。

 

在同一篇 LinkedIn 帖子中,Adeyemi 指出:

对复制功能的原生支持让你能够快速创建只读副本,这些副本在几分钟内即可与源表保持同步,并且可作为 Iceberg 表进行查询。减少了自定义集成的工作量,让你有更多时间真正使用数据。

 

用户可以通过AWS Cost and Usage ReportsAmazon CloudWatch指标跟踪各访问层的存储使用情况。配置智能分层无需额外费用,用户仅需支付各层的存储成本。至于 S3 Table 的复制,用户需支付目标表格的 S3 Table 的存储费用、复制 PUT 请求的费用、表格更新(提交)以及复制数据的对象的监控费用。更多详情可参见定价页面

 

原文链接:

 AWS Adds Intelligent-Tiering and Replication for S3 Tables