欢迎阅读2025年1月的Hudi简报,由Onehouse.ai[1]为您带来!随着我们迈入新的一年,Hudi生态系统继续发展壮大,带来新的项目更新、社区贡献和实际应用案例。让我们一起探索!
搭建桥梁:在数据湖上实现数据库体验
Fireside Chat
Apache Hudi创始人兼PMC主席Vinoth Chandar[2]与Data Engineering Weekly[3]的Ananth Packkildurai[4]进行了炉边谈话,讨论了新发布的Apache Hudi™ 1.0、Hudi的起源以及数据湖仓和数据目录的未来。请点击这里[5]查看录像。
班加罗尔Hudi社区聚会 🇮🇳
Bangalore Meetup
在Onehouse印度办公室举办的班加罗尔Hudi聚会座无虚席,开发者、贡献者和技术爱好者齐聚一堂,讨论Hudi 1.0和湖仓架构。这是一个充满洞察力的精彩夜晚,包含深入探讨、交流和对Hudi最新进展的深入分析。感谢让这次活动成功举办的演讲者和参与者!
湖仓编年史第5集:与Hudi PMC关于1.0发布的炉边谈话
Lakehouse Chronicles
延续这股势头,Apache Hudi湖仓编年史[6]系列的第5集已经上线,Hudi PMC成员和贡献者讨论了Hudi 1.0中一些最令人兴奋的特性,包括新的LSM风格时间线、表达式和二级索引、非阻塞并发控制等。如果你错过了,一定要查看录像[7],敬请期待更多精彩讨论!
Project Updates
GitHub Stats
Hudi社区宣布发布Hudi-rs[8] 0.3.0版本 - Apache Hudi的原生Rust实现,带有Python API绑定。此版本带来了重要功能,如支持读取Merge-on-Read (MoR)表、增量查询、新的Table和File Group API。查看这里[9]的发布说明。
📙博客/视频
MinIO with Hudi
这篇博客全面介绍了如何使用MinIO(一个开源对象存储/数据湖)设置Apache Hudi。通过基础知识、功能特性和实际用例的指导,演示了如何在本地运行Apache Hudi和MinIO。
Clustering
高效的数据组织对提高湖仓查询性能至关重要。这篇博客探讨了聚类技术,如线性排序和多维布局(Z序、希尔伯特曲线)如何优化存储中的数据。还深入介绍了Apache Hudi如何提供聚类服务来最小化数据扫描、减少查询延迟并提高存储效率。
EMR Setup
这篇实用博客提供了在AWS EMR Serverless 7.5.0上设置和运行Hudi Streamer 1.0.0的分步指南,实现无缝数据摄入。涵盖了配置Hudi Streamer、下载和管理JAR依赖、设置EMR Serverless作业以及通过AWS Lambda自动执行等关键方面。
Key Generators
在Hudi中正确定义记录和分区键对高效数据管理至关重要。这篇博客介绍了Apache Hudi中可用的开箱即用键生成器,帮助用户根据数据集选择正确的策略来唯一标识记录。如果你想更好地了解Hudi如何构建记录键和分区以加快更新速度,这是必读之作!
Table Performance
优化数据湖仓对高效数据处理和成本管理至关重要。这份全面指南深入探讨了提升湖仓表读写性能的策略。涵盖了选择适当的表类型(写时复制vs.读时合并)、实施有效的分区和聚类技术、管理文件大小以及利用表服务(如压缩和清理)等主题。
Concurrency Control
这篇见解深刻的博客深入探讨了开放数据湖仓架构中的并发控制。它探索了隔离和序列化等基础概念,并研究了Apache Hudi如何实现健壮的机制(OCC、MVCC、非阻塞)来在多样化的工作负载中维护ACID属性。
Notion Architecture
Kamran讨论了Notion构建高效、可扩展数据湖的方法,节省了超过100万美元。通过使用Debezium CDC、Kafka和Spark,以及Apache Hudi作为湖仓格式,Notion实现了从Postgres的增量摄入,优化了AI、搜索和分析的更新密集型工作负载。
6 Minutes of Hudi
Vu解释了为什么Uber开发Apache Hudi来处理增量更新和近实时处理。由于HDFS和Parquet缺乏原生更新支持,Uber设计了Hudi的文件组和基于日志的架构来优化读写操作。6分钟的精简介绍令人耳目一新!
NBCC in Hudi
在这篇文章中,Sameer讨论了Hudi 1.0中的非阻塞并发控制(NBCC)如何革新数据湖仓中的并发处理。与传统的乐观并发控制不同,NBCC消除了竞争,允许同时写入而无需重试或失败。结果如何?优化了资源利用并实现了现代湖仓工作负载的无缝实时摄入。
Data Lake Management
通过为数据湖带来类似数据库的功能,Apache Hudi重新定义了湖仓管理,具有增量处理、优化存储和高级索引功能。Mahesh在这篇文章中详细阐述了这一切。
如果你刚开始使用Apache Hudi,这里有一些快速指南帮助你了解实践方面:
讨论问题、帮助他人并向社区学习。我们的Slack频道已有4000多名Hudi用户。
加入我们的社交渠道,了解从深入技术概念到技巧和社区中发生的有趣事情。
欢迎关注 Hudi 公众号 ApacheHudi 获取微信群信息,加入钉钉群:35087066,发送空邮件至 dev-subscribe@hudi.apache.org[28] 参与讨论。
Hudi PMC成员/提交者将举行办公时间,以先到先得的方式互动回答问题。这是提出任何疑问的绝佳机会。
Apache Hudi社区欢迎任何人的贡献!以下是几种参与方式。
对文档、内容想法或项目有任何反馈?请给我们留言!
[1]
Onehouse.ai: http://onehouse.ai/
[2]
Vinoth Chandar: https://www.linkedin.com/in/vinothchandar
[3]
Data Engineering Weekly: https://www.dataengineeringweekly.com/
[4]
Ananth Packkildurai: https://www.linkedin.com/in/ananthdurai
[5]
这里: https://www.onehouse.ai/webinar/bridging-the-gap-a-database-experience-on-the-data-lake
[6]
**Apache Hudi湖仓编年史**: https://youtube.com/playlist?list=PLxSSOLH2WRMNQetyPU98B2dHnYv91R6Y8&feature=shared
[7]
录像: https://youtu.be/IxMSgPVcugs?feature=shared
[8]
Hudi-rs: https://github.com/apache/hudi-rs
[9]
这里: https://github.com/apache/hudi-rs/releases/tag/release-0.3.0
[10]
PR#12514: https://github.com/apache/hudi/pull/12514
[11]
PR#12601: https://github.com/apache/hudi/pull/12601
[12]
PR#12466: https://github.com/apache/hudi/pull/12466
[13]
PR#12623: https://github.com/apache/hudi/pull/12623
[14]
PR#12692: https://github.com/apache/hudi/pull/12692
[15]
MinIO入门Apache Hudi: https://dataxplorer.medium.com/an-intro-to-hudi-with-minio-i-75536fe75b4c
[16]
开放数据湖仓中的聚类是什么?: https://www.onehouse.ai/blog/what-is-clustering-in-an-open-data-lakehouse
[17]
在EMR Serverless 7.5.0上使用新的Hudi Streamer 1.0.0实践指南: https://www.linkedin.com/pulse/how-use-new-hudi-streamer-100-emr-serverless-750-hands-on-soumil-shah-fxrae/
[18]
Apache Hudi中的开箱即用键生成器: https://hudi.apache.org/blog/2025/01/15/outofbox-key-generators-in-hudi/
[19]
加速湖仓表性能(完整指南): https://www.onehouse.ai/blog/accelerating-lakehouse-table-performance-the-complete-guide
[20]
开放数据湖仓中的并发控制: https://hudi.apache.org/blog/2025/01/28/concurrency-control
[21]
Notion的Hudi数据湖: https://www.linkedin.com/posts/atechguide_systemdesign-architecture-activity-7288588577850961920-YLws
[22]
Apache Hudi 6分钟入门: https://www.linkedin.com/posts/vutr27_dataengineering-dataanalytics-datalake-activity-7287833136162385920-zCyE
[23]
Hudi 1.0中的NBCC: https://www.linkedin.com/posts/sameer-shaik-21551818b_apachehudi-dataengineering-concurrencycontrol-activity-7287541872556724224-jLuq
[24]
Apache Hudi - 数据湖管理系统: https://www.linkedin.com/posts/mahesh-ramichetty-160b8121_apache-hudi-next-gen-datalake-managment-activity-7287519376465870849-c-nV
[25]
Apache Spark: https://hudi.apache.org/docs/next/quick-start-guide
[26]
Apache Flink: https://hudi.apache.org/docs/next/flink-quick-start-guide
[27]
Docker演示: https://hudi.apache.org/docs/next/docker_demo
[28]
dev-subscribe@hudi.apache.org: mailto:dev-subscribe@hudi.apache.org
[29]
设想LakeDB:湖仓架构的下一次演进: https://www.dataengineeringweekly.com/p/envisioning-lakedb-the-next-evolution
[30]
快照隔离 vs 可序列化: https://brooker.co.za/blog/2024/12/17/occ-and-isolation.html
[31]
Uber的MySQL实践: https://www.uber.com/en-CA/blog/mysql-at-uber/
[32]
Husky:Datadog规模的高效压缩: https://www.datadoghq.com/blog/engineering/husky-storage-compaction/
[33]
在Kubernetes上运行Apache Flink入门: https://www.decodable.co/blog/get-running-with-apache-flink-on-kubernetes-2
[34]
云端可扩展OLTP:BIG DEAL是什么?: https://www.cidrdb.org/cidr2024/papers/p63-helland.pdf