欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Apache Hudi0.5.3部署和入门

程序员文章站 2022-07-14 20:32:31
...

部署准备

需要用到maven3.6.1+

部署

1.github下载源码包
https://github.com/apache/hudi/releases/tag/0.5.3
2.解压
3.进入目录编译
执行
mvn clean package -DskipTests -DskipITs
目前hudi使用的是hadoop2.7.3版本,公司服务器是3.1.0所以
执行
mvn clean package -DskipTests -DskipITs -Dhadoop.version=3.1.0

可能遇到的问题

可能会显示maven国内镜像如阿里云等没有一些jar包导致编译失败,需自己手动下载导入到本地maven仓库

1.这几个jar包在编译过程中显示没有的:
common-config-3.0.0.jar,kafka-avro-serializer-3.0.0.jar,common-utils-3.0.0.jar,kafka-schema-registry-client-3.0.0.jar

下载好后执行以下命令
mvn install:install-file -Dfile=/root/common-config-3.0.0.jar -DgroupId=io.confluent -DartifactId=common-config -Dversion=3.0.0 -Dpackaging=jar

mvn install:install-file -Dfile=/root/kafka-avro-serializer-3.0.0.jar -DgroupId=io.confluent -DartifactId=kafka-avro-serializer -Dversion=3.0.0 -Dpackaging=jar


mvn install:install-file -Dfile=/root/common-utils-3.0.0.jar -DgroupId=io.confluent -DartifactId=common-utils -Dversion=3.0.0 -Dpackaging=jar

mvn install:install-file -Dfile=/root/kafka-schema-registry-client-3.0.0.jar -DgroupId=io.confluent -DartifactId=kafka-schema-registry-client -Dversion=3.0.0 -Dpackaging=jar

Hive集成Hudi:

**将hudi jar复制到hive lib下
cp ./packaging/hudi-hadoop-mr-bundle/target/hudi-hadoop-mr-bundle-0.5.3.jar $HIVE_HOME/lib

建外部表关联hudi表位置,由于hudi重写了inputformat 和outpurtformat
所以建表时要

STORED AS INPUTFORMAT
‘org.apache.hudi.hadoop.HoodieParquetInputFormat’
OUTPUTFORMAT
‘org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat’

Presto集成Hudi

**presto 集成hudi 是基于hive catalog 同样是访问hive 外表进行查询,如果要集成需要把hudi 包copy 到presto hive-hadoop2插件下面

cp ./packaging/hudi-hadoop-mr-bundle/target/hudi-hadoop-mr-bundle-0.5.3.jar $PRESTO_HOME/plugin/hive-hadoop2/

spark-shell的使用

bin/spark-shell --jars ./packaging/hudi-spark-bundle/target/hudi-spark-bundle-0.5.3.jar --conf 'spark.serializer=org.apache.spark.serializer.KryoSerializer'

上一篇: 机器学习5:KNN

下一篇: Hudi0.9编译