编译hudi
首先安装maven,修改仓库为aliyun,准备进行maven编译。
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
再安装git,通过git拉取代码。
// 拉取代码
git clone https://github.com/apache/hudi.git && cd hudi
// 修改hudi/pom.xml
<repository>
<id>nexus-aliyun</id>
<name>nexus-aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
// 修改hudi-utilities/pom.xml
vi hudi-utilities/pom.xml
<!-- Kafka -->
<dependency>
<groupId>io.confluent</groupId>
<artifactId>kafka-avro-serializer</artifactId>
<version>6.1.1</version>
</dependency>
<dependency>
<groupId>io.confluent</groupId>
<artifactId>common-config</artifactId>
<version>6.1.1</version>
</dependency>
<dependency>
<groupId>io.confluent</groupId>
<artifactId>common-utils</artifactId>
<version>6.1.1</version>
</dependency>
<dependency>
<groupId>io.confluent</groupId>
<artifactId>kafka-schema-registry-client</artifactId>
<version>6.1.1</version>
</dependency>
// 编译
mvn clean package -DskipTests -DskipITs
编译的时候有几个jar包无法从国内maven仓库拉取,https://download.youkuaiyun.com/download/qq_41106844/18167168我做了一个资源下载,需要的可以私信。
在只有数仓的时代中,人们将精力留在处理结构化数据上,把非结构化数据解析后存储为结构化数据。但是随着发展,人们不再局限于处理结构化数据,开始将非结构化数据(图片,视频,音频,json,XML等)直接存储到数据湖中,对非结构化数据进行处理。
优点
- 支持较快upsert/delete
- 支持增量拉取
- 具有Table Schema
- 对小文件的合并管理
- ACID语义保证
- 支持多种分析引擎
hudi的特性
- 快速upsert,可插入索引
- 以原子方式操作数据并具有回滚功能
- 写入器之间的快照隔离
- savepoint用户数据恢复的保存点
- 管理文件大小、使用统计数据布局
- 数据行的异步压缩和柱状数据
- 时间轴数据跟踪血统