Apache Hudi:云数据湖解决方案
1. 引入
开源Apache Hudi项目为Uber等大型组织提供流处理能力,每天可处理数据湖上的数十亿条记录。
随着世界各地的组织采用该技术,Apache开源数据湖项目已经日渐成熟。
Apache Hudi(Hadoop Upserts Deletes and Incrementals)是一个数据湖项目,可在与Apache Hadoop兼容的云存储系统(包括Amazon S3、Aliyun OSS)上进行流数据处理。
该项目最初于2016年在Uber开发,于2017年成为开源,并于2019年1月进入Apache孵化器。作为开源的结果反馈,Hudi已被阿里巴巴,腾讯,AWS,Uber和Kyligence等主要技术供应商的采用。
6月4日,Hudi(发音为"Hoodie")正式成为Apache软件基金会(ASF)的顶级项目,这是一个里程碑,标志着该项目已经达到了较高的代码成熟度和开发人员社区的参与。ASF是Hadoop,Spark,Kafka和其他广泛使用的数据库和数据管理程序的地方。
2. Hudi如何实现Uber的云数据湖
Hudi现在是被多个组织使用的开源项目,其中Uber一直是坚定的用户。
Uber数据工程经理Tanvi Kothari表示,Uber使用Hudi每天处理超过150PB数据湖中的5,000亿条记录。
Kothari运营着Uber全球数据仓库团队,该团队负责为Uber的所有业务提供核心数据表。她指出,Hudi支持Uber对10,000多个表和数千个数据管道的读写进行增量处理。
Kothari说:”Hudi消除了处理大数据中的许多挑战,它可以帮助您扩展ETL [Extract,Transform,Load]管道并提高数据保真度。”
3. Hudi作为云数据湖分析的基石
大数据分析供应商Kyligence Solutions将Apache Hudi作为产品的一部分,该公司在中国上海和加利福尼亚州圣何塞设有办事处,Kyligence的合伙人兼首席架构师史少锋说道,他的公司使用许多Apache开源项目,包括Apache Kylin,Hadoop和Spark技术,来帮助企业管理数据。
史少锋表示,Apache Hudi为Kyligence提供了一种直接在Hadoop分布式文件系统(HDFS)或Amazon S3上管理更改数据集的方法。
Kyligence于2019年开始为美国客户使用Hudi,同时在此期间,AWS推出了与Hudi和Amazon Elastic MapReduce(EMR)服务的集成。Kyligence Cloud服务现在还支持Hudi作为其所有用户进行在线分析处理的数据源格式。
史表示很高兴看到Hudi毕业成为Apache的顶级项目的成就,他说,“Hudi有一个开放而热情的社区,甚至将一系列Hudi文章翻译成中文,使中国用户更容易了解该技术。”
4. Hudi如何赋能云数据湖流处理
ASF Apache Hudi的共同创始人兼VP Vinoth Chandar说,Hudi提供了使用数据流的功能,并使用户能够更新数据集。
Chandar将Hudi启用的流处理视为一种数据处理方式,在这种方式中,数据湖管理员可以处理增量数据,然后可以使用该数据。
Chandar说:“真正考虑Hudi的一个好方法是作为一个数据存储或数据库,该数据库在[AWS] S3、[Aliyun] OSS中存储的数据之上提供事务处理功能。”
Chandar接着说,Hudi成为顶级项目也反映了该项目的成熟度。但是,尽管Hudi现在是Apache的顶级项目,但这项工作尚未达到1.0版本,最新的更新是3月25日发布的0.5.2里程碑(毕业后又发布了0.5.3版本)。
Hudi开发人员目前正在开发0.6.0版本,Chandar表示该版本将于6月底发布。 Chandar说,该版本将是一个重要的里程碑,它将具有性能增强和改进的数据迁移功能,以帮助用户将数据带入Hudi数据湖。他说:“我们的计划是至少每个季度发布一个主要版本,然后希望每个月在主要版本之上发布bugfix版本。”
Apache Hudi:云数据湖解决方案的更多相关文章
- 基于Apache Hudi构建数据湖的典型应用场景介绍
1. 传统数据湖存在的问题与挑战 传统数据湖解决方案中,常用Hive来构建T+1级别的数据仓库,通过HDFS存储实现海量数据的存储与水平扩容,通过Hive实现元数据的管理以及数据操作的SQL化.虽然能 ...
- KLOOK客路旅行基于Apache Hudi的数据湖实践
1. 业务背景介绍 客路旅行(KLOOK)是一家专注于境外目的地旅游资源整合的在线旅行平台,提供景点门票.一日游.特色体验.当地交通与美食预订服务.覆盖全球100个国家及地区,支持12种语言和41种货 ...
- DeltaLake数据湖解决方案
Delta Lake 是DataBricks公司推出的一种数据湖解决方案,Delta为该方案的核心组件.围绕数据流走向(数据入湖从流入数据湖.数据组织管理.数据查询到流出数据湖)推出了一系列功能特性, ...
- Apache Hudi表自动同步至阿里云数据湖分析DLA
1. 引入 Hudi 0.6.0版本之前只支持将Hudi表同步到Hive或者兼容Hive的MetaStore中,对于云上其他使用与Hive不同SQL语法MetaStore则无法支持,为解决这个问题,近 ...
- 实战 | 将Apache Hudi数据集写入阿里云OSS
1. 引入 云上对象存储的廉价让不少公司将其作为主要的存储方案,而Hudi作为数据湖解决方案,支持对象存储也是必不可少.之前AWS EMR已经内置集成Hudi,也意味着可以在S3上无缝使用Hudi.当 ...
- 印度最大在线食品杂货公司Grofers的数据湖建设之路
1. 起源 作为印度最大的在线杂货公司的数据工程师,我们面临的主要挑战之一是让数据在整个组织中的更易用.但当评估这一目标时,我们意识到数据管道频繁出现错误已经导致业务团队对数据失去信心,结果导致他们永 ...
- 深度对比Apache CarbonData、Hudi和Open Delta三大开源数据湖方案
摘要:今天我们就来解构数据湖的核心需求,同时深度对比Apache CarbonData.Hudi和Open Delta三大解决方案,帮助用户更好地针对自身场景来做数据湖方案选型. 背景 我们已经看到, ...
- 对话Apache Hudi VP, 洞悉数据湖的过去现在和未来
Apache Hudi是一个开源数据湖管理平台,用于简化增量数据处理和数据管道开发,该平台可以有效地管理业务需求,例如数据生命周期,并提高数据质量.Hudi的一些常见用例是记录级的插入.更新和删除.简 ...
- 通过Apache Hudi和Alluxio建设高性能数据湖
T3出行的杨华和张永旭描述了他们数据湖架构的发展.该架构使用了众多开源技术,包括Apache Hudi和Alluxio.在本文中,您将看到我们如何使用Hudi和Alluxio将数据摄取时间缩短一半.此 ...
随机推荐
- Java——foreach的使用
foreach: foreach是Java5的新特性,常常用于遍历数组.集合等方面.它是for语句的特殊简化版本,但是foreach语句不能完全取代for语句,所有的foreach语句都可以改写为fo ...
- C# 数据操作系列 - 18 让Dapper更强的插件
0. 前言 在前一篇中我们讲到了Dapper的应用,但是给我们的感觉Dapper不像个ORM更像一个IDbConnection的扩展.是的,没错.在实际开发中我们经常用Dapper作为对EF Core ...
- bootstrap table Showing 1 to 5 of 5 rows 页码显示英文
注意导包先后顺序bootstrap-table-zh-CN.js链接:https://cdn.bootcdn.net/ajax/libs/bootstrap-table/1.16.0/locale/b ...
- Rocket - tilelink - AtomicAutomata之二
https://mp.weixin.qq.com/s/XDUtw0uPrVXC4CChbydF_A 分析在透传和代理两种模式下,AtomicAutomata可能出现的问题. 1. 透 ...
- Bootstrap解决页面缩小变形的办法
bootstrap布局是应用得很广泛的一种网页布局方法,例如:我们用一种中间内容很流行的布局分布:3-6-3式布局.代码如下 <style type="text/css"&g ...
- Java实现 LeetCode 559 N叉树的最大深度(遍历树,其实和便利二叉树一样,代码简短(●ˇ∀ˇ●))
559. N叉树的最大深度 给定一个 N 叉树,找到其最大深度. 最大深度是指从根节点到最远叶子节点的最长路径上的节点总数. 例如,给定一个 3叉树 : 我们应返回其最大深度,3. 说明: 树的深度不 ...
- Java实现 LeetCode 395 至少有K个重复字符的最长子串
395. 至少有K个重复字符的最长子串 找到给定字符串(由小写字符组成)中的最长子串 T , 要求 T 中的每一字符出现次数都不少于 k .输出 T 的长度. 示例 1: 输入: s = " ...
- Java实现8枚硬币问题(减治法)
1 问题描述 在8枚外观相同的硬币中,有一枚是假币,并且已知假币与真币的重量不同,但不知道假币与真币相比较轻还是较重.可以通过一架天平来任意比较两组硬币,设计一个高效的算法来检测这枚假币. 2.1 减 ...
- CMAKE工具学习
最近在学习各大物联网平台的SDK包,发现其工程都使用了一种叫cmake的工具在管理代码.于是花了一天时间简单学习了解了cmake工具,其目的是让自己能读懂使用该工具管理的代码,并能简单使用该工具管理我 ...
- android日常开发总结的技术经验60条
全部Activity可继承自BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效. 数据库表段字段常量和SQL逻辑分离,更清晰,建议使用 ...