hive更新UDF的正確步驟

1. 刪除原函數(shù)和jar包

1.1 在hive窗口e中執(zhí)行刪除原函數(shù)

hive>DROP FUNCTION msgloanappsproc;

1.2 在beeline中執(zhí)行刪除jar包

hive (default)>  list jars;
/tmp/448a59e7-5ef8-4b76-8eed-ba04c73e126a_resources/udf-1.0.jar
hive (default)> delete jar hdfs:///user/hive/warehouse/extlib/udf-1.0.jar;
hive (default)>  list jars;
/tmp/448a59e7-5ef8-4b76-8eed-ba04c73e126a_resources/udf-1.0.jar
hive (default)> delete jar /tmp/448a59e7-5ef8-4b76-8eed-ba04c73e126a_resources/udf-1.0.jar;
Deleted [/tmp/448a59e7-5ef8-4b76-8eed-ba04c73e126a_resources/udf-1.0.jar] from class path
hive (default)>  list jars;
hive (default)> 

1.3 從hdfs上刪除jar包

hdfs dfs -rm -f -skipTrash /user/hive/warehouse/extlib/udf-1.0.jar

2 重新上傳jar包,注冊(cè)函數(shù)

2.1 上傳新的jar包到hdfs

hdfs dfs -put -f  /home/hadoop/shell/udf/udf-1.0.jar /user/hive/warehouse/extlib/

2.2 在hive窗口中執(zhí)行添加jar包

hive> add jar hdfs:///user/hive/warehouse/extlib/udf-1.0.jar;

2.3 在hive窗口中執(zhí)行注冊(cè)永久函數(shù)

hive> create function msgloanappsproc as "udf_ltf.MsgLoanAppsProc" using jar 'hdfs:///user/hive/warehouse/extlib/udf-1.0.jar';

2.4 在hive窗口中查看結(jié)果

hive>show functions like '*Proc';

3 重啟所有節(jié)點(diǎn)的hive server服務(wù),UDF生效。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容