【hudi】基于hive2.1.1的编译hudi-1.0.0源码

hudi版本1.0.0
需要使用较低版本的hive,编译hudi只需要修改下类即可:
org.apache.hudi.hadoop.hive.HoodieCombineHiveInputFormat

一、复制org.apache.hadoop.hive.common.StringInternUtils

找个hive2.3.9的源码包,创建包路径,并将此类复制到hudi的hudi-common到下。
当然其他包(hudi-hadoop-mr)也可以。HoodieCombineHiveInputFormat类能读取到就可以。
在这里插入图片描述

二、添加方法并修改

基于不同的hive版本,只是有一些方法,中string <—> path 不同,因此添加一些转换对象,将path和string互转即可。如下:
添加方法:

    public static <T> Map<Path, T> toPathMap(Map<String, T> input) {
   
   
        Map<Path, T> output = new HashMap<>();
        input.forEach((s, strings) -> {
   
   
            output.put(new Path(s), strings);
        });
        return output;
    }

    public static
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值