写点什么

Apache Hudi 1.0 正式发布

  • 2025-01-28
    北京
  • 本文字数:1215 字

    阅读完需:约 4 分钟

Apache Hudi 1.0 正式发布

最近,Apache 软件基金会宣布 Apache Hudi 1.0 正式发布。这是一个支持近实时分析的事务型数据湖平台,最初于 2017 年推出。Apache Hudi 提供了一种做过专门优化的开放式表格式,可实现增量数据管道的高效写入,提供可靠的查询性能。


最初,Hudi 是作为 Apache Hadoop 上的增量处理框架在 Uber 开发的,并于 2019 年提交给 Apache 软件基金会,旨在弥合类似数据库的功能与开放的数据湖架构之间的差距。Hudi 的主要优势在于能够同时支持近实时查询和批量查询。


最新版本引入的新特性旨在将数据湖转化为项目社区所认为的完备的 “数据湖管理系统”(DLMS)。Uber Hudi 项目创建者、Onehouse 首席执行官 Vinoth Chandar 写道:


Hudi 的亮点在于提供了高性能的开放式表格格式以及全面的开源软件栈,可对数据湖进行摄取、存储、优化和有效的自管理。在 Hudi 所处的大型供应商生态系统中,开放格式和开放软件之间的区别经常被忽略。尽管如此,对于 Hudi 的用户来说,避免‍与任何特定的数据供应商的计算锁定仍然是一个重要的考虑因素。


Hudi 1.0 (遵循 Apache 2.0 许可)引入了新的二级索引系统,旨在提高查询性能并降低数据扫描成本。现在,用户可以在二级列上创建基于 SQL 的索引,从而大大加快查询执行速度。该版本还包括基于表达式的索引,和 PostgreSQL 中的一项功能类似,它取代了传统的分区策略,使数据组织更加灵活高效。去年,当预览版发布时,Snyk 首席软件工程师 Boris Litvak 曾经写道:


在对象存储的三大 ACID 存储格式中,Apache Hudi 1.0(测试版)是第一个引入数据 “函数索引 ”的格式。在 SQL DB 术语中,我们通常称之为 “二级索引”。Delta.io 和 Apache Iceberg 何时会跟进?



图片来源:Apache Hudi 博客


该版本引入了对部分更新的支持,允许对特定字段而不是整行进行更新,从而提高了存储和计算效率。此外,非阻塞并发控制使多个流作业可以写入同一个数据集,而且不会造成瓶颈或故障。在谈到数据库架构时,Chandar 补充道:


至于完备的 DLMS 功能,Hudi 1.0 可以通过 Apache Spark 提供最接近的体验。用户可以部署安装了 Hudi 1.0 的 Spark 服务器(或 Spark Connect),提交 SQL/ 任务,通过 SQL 命令协调表服务,尽情使用二级索引功能,从而像 DBMS 一样加快查询速度。


Hudi 1.0 增强了存储引擎,包括采用日志结构合并(LSM)树来实现高效的时间线管理。这样就可以支持长期数据保留,并确保高性能查询规划,即使是包含数十亿条记录的数据集也不例外。Onehouse 和 Apache Hudi PMC 软件工程师 Bhavani Sudha Saktheeswaran 评论 说:


无论是要构建开放式数据平台,将数据流导入数据湖仓,并摒弃数据仓库,还是要优化高性能查询,Hudi 1.0.0 都能让你比以往更轻松地使用数据湖仓。


在旧金山 QCon 大会上,Saktheeswaran 和 Uber 软件工程师 Saketh Chintapalli 发表了关于使用 Apache Hudi 进行增量数据处理的演讲。会议录音可从 InfoQ 上获取。


原文链接:

https://www.infoq.com/news/2025/01/apache-hudi/

2025-01-28 08:0017835

评论

发布
暂无评论

重磅 | 用友《数字化中台》震撼上市!数智化转型和商业创新实践的企业级经验!

博文视点Broadview

Springboot 配置文件、隐私数据脱敏的最佳实践(原理+源码)

程序员小富

Java springboot 数据安全 数据脱敏

十大排序算法--插入排序

Ayue、

排序算法 8月日更

【Maven技术专题】如何使用Assembly插件实现自定义打包

洛神灬殇

maven assembly 8月日更

索信达控股:银行4.0的AI世界——开启算法力的时代

索信达控股

人工智能 金融科技 银行

复杂多变场景下的Groovy脚本引擎实战

vivo互联网技术

敏捷开发 脚本语言

手撸二叉树之对称二叉树

HelloWorld杰少

算法和数据结构 8月日更

基于docker的分布式性能测试框架功能验证(二)

FunTester

分布式 性能测试 接口测试 测试框架 测试开发

图分析在吴亦凡事件中的应用场景

6979阿强

图算法 图计算 GraphScope 吴亦凡 一站式图计算平台

基于ECS快速搭建 Docker 环境

若尘

Docker 服务器 8月日更

kafka SpringBoot

Rubble

kafka springboot 8月日更

分布式性能测试框架用例方案设想(二)

FunTester

分布式 性能测试 接口测试 测试框架 测试开发

深度学习中的分布式训练

安第斯智能云

人工智能 深度学习

【LeetCode】加一Java题解

Albert

算法 LeetCode 8月日更

PostgreSQL 中如何控制行级安全和列级安全

Qunar技术沙龙

sql postgresql 运维 安全 权限

Python代码阅读(第1篇):列表映射后的平均值

Felix

Python 编程 Code Programing 阅读代码

【Flutter 专题】132 图解 PaginatedDataTable 分页表格

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 8月日更

原来select语句在MySQL中是这样执行的!看完又涨见识了!这回我要碾压面试官!

冰河

MySQL 面试 精通MySQL SELECT查询流程 查询缓存

百度爱番番移动端网页秒开实践

百度Geek说

大前端 优化 网页加速 移动端

知道ThreadLocal吗?一起聊聊到底有啥用

华为云开发者联盟

Java 架构 线程 ThreadLocal 链路

synchronized 优化手段之锁膨胀机制!

王磊

Java 并发 8月日更

netty系列之:netty初探

程序那些事

Java 响应式编程 Netty nio 程序那些事

多语言ASR?没有什么听不懂,15种语言我全都要

华为云开发者联盟

语言 ASR 多语言ASR 单语模型 Conformer

一文带你搞定AOP切面

华为云开发者联盟

spring aop 切面编程 面向切面编程 切面

Lucene 倒排索引原理

Qunar技术沙龙

数据库 全文检索 lucene 倒排索引 搜索

Rust从0到1-模式-可反驳性

rust 模式 Patterns Refutability 可反驳性

鸿蒙内核之内存调测:动态内存池信息统计

华为云开发者联盟

鸿蒙 内存 动态内存池 内存信息

【Vue2.x 源码学习】第二十四篇 - 异步更新流程

Brave

源码 vue2 8月日更

AudioTracker实用封装

Changing Lin

8月日更

Design for failure常见的12种设计思想

架构精进之路

降级 重试 容错 8月日更

译文 | 四种产品经理成长框架,你是哪一种?

LigaAI

产品经理 产品管理 PM

Apache Hudi 1.0 正式发布_数据湖仓_Renato Losio_InfoQ精选文章