Hive自定義函式UDF 一

2021-09-25 07:31:12 字數 1436 閱讀 5670

在使用hive的時候,hive本身自帶的函式不足以滿足於我們需求的情況下,我們可以自定義滿足我們需求的函式。

1、繼承org.apache.hadoop.hive.ql.exec.udf;

2、寫固定的evaluate()方法。這個方法名字是固定的。

注意:evaluate方法支援過載。

1、**

package com.hive.test;

import org.apache.hadoop.hive.ql.exec.udf;

public class hiveudf extends udfelse if(num>500)else }}

2、將此**打成jar包並上傳linux3、準備測試資料[root@cmaster test]# vim num.txt 

4、建立表並且匯入資料

hive> create table mytest(id int) row format delimited fields terminated by ' ';

hive> load data local inpath '/test/num.txt' into table mytest;

5、將jar載入到hive中

hive> add jar /test/hiveudf_jar/hive_test.jar

> ;

6、建立乙個臨時函式指向上邊編譯的類

hive> create temporary function myf as 'com.hive.test.hiveudf';
7、可以呼叫這個函式了

hive> select myf(id) from mytest;

okvery good

good

good

badtime taken: 1.742 seconds, fetched: 4 row(s)

8、呼叫完函式可以刪除

hive> drop temporary function myf;
注意:查詢hive所有函式使用 show functions

hive> show functions;

hive自定義函式UDF

hive自定義函式 udf 可以幫助使用者輕鬆實現在hql語句中展現自定義查詢結果。這裡以乙個簡單的連線函式來實現使用者自定義函式,假設表結構如下 表中只有兩個簡單的字段,id和name。這裡實現乙個將id和name用 連線的函式,最後輸出結果。第一步 書寫stringjoin類,繼承udf,實現名...

hive自定義函式 UDF

幾個命令 檢視所有函式 hive show functions 檢視函式的使用方法 hive desc function 函式名 兩數和 addudf 自定義hive函式 description name myadd value myadd int a int b return a b extend...

hive自定義udf函式

在建立自定義函式時,需要將jar包全部部署到hive server節點的所有機器的使用者定義的udf引數目錄 hive.reloadable.aux.jars.path.jars.path.property property value usr lib hive lib value 呼叫 impor...