栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Flink1.12.2+Hudi0.9编译

Flink1.12.2+Hudi0.9编译

  1. 安装thrift
wget https://mirrors.cnnic.cn/apache/thrift/0.19.0/thrift-0.12.0.tar.gz
tar -zxvf thrift-0.12.0.tar.gz
cd thrift-0.12.0

yum install libtool flex bison pkgconfig boost-devel libevent-devel zlib-devel python-devel ruby-devel openssl-devel ant



./bootstrap.sh

./configure

make &make install 
  1. 增加阿里云OSS支持

  org.apache.hadoop
  hadoop-aliyun
  3.2.1
  provided

  1. 设置hive版本(CDH上面hive版本为2.1.1)
    vim packaging/hudi-flink-bundle/pom.xml
    hive.version=2.1.1

  2. 打hudi包

mvn clean package -DskipTests -Drat.skip=true -Dscala-2.12 -T24C
mvn clean install -Drat.skip=true -Pflink-bundle-shade-hive2 -Pinclude-flink-sql-connector-hive -DskipTests -Dscala-2.12 -T24C

问题总结:
问题1. thrift库冲突

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.thrift.protocol.TProtocol.getScheme()Ljava/lang/Class;

发现是自己flink-parquet打的shaded包里面把org.apache.thrift打进去了,剔除出去重新打包就可以了


		                org.apache.maven.plugins
		                maven-shade-plugin
		                3.2.4
		                
		                    
		                        package
		                        
		                            shade
		                        
		                        
		                            true
		                            
		                            shade
                                                
                                                
                                                  
                                                    org.apache.flink:flink-formats
                                                  
                                                
		                            
		                                
		                                    
		                                    org.apache.flink.formats.parquet
		                                    
		                                    shaded.org.apache.flink.formats.parquet
		                                
										
											
											org.apache.parquet
											
											shaded.org.apache.parquet
										
		                            

		                        
		                    
		                
		            

主要更改为如下代码(只打包指定模块):

   
                                      
                                        org.apache.flink:flink-formats
                                      
                                    

问题2:flink向Hudi表写数据,元数据并没有更新到Hive里面,报错连接不上Hive,感觉是版本不匹配
,后maven 编译Hudi表的时候,不把hive依赖打进去,采用

mvn clean package -DskipTests -Drat.skip=true -Dscala-2.12 -T24C

问题3. 刚开始编译Hudi0.9 scala.version=2.12时报错,未找到原因,后先用scala.version=2.11编译成功之后,再用scala.version=2.12编译成功

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/630420.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号