hive自定義udf函式

2021-10-02 04:48:28 字數 1589 閱讀 2881

在建立自定義函式時,需要將jar包全部部署到hive server節點的所有機器的使用者定義的udf引數目錄

hive.reloadable.aux.jars.path.jars.path.property<

/property>

<

value

>

/usr/lib/hive/lib<

/value

>

**呼叫

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

import org.apache.hadoop.hive.ql.metadata.hiveexception;

import org.apache.hadoop.hive.ql.udf.generic.genericudf;

import org.apache.hadoop.hive.serde2.objectinspector.objectinspector;

import org.apache.hadoop.hive.serde2.objectinspector.primitive.primitiveobjectinspecto***ctory;

import org.apache.hadoop.io.text;

/** * /usr/lib/hive/lib

* * hive.reloadable.aux.jars.path.jars.path.property+目錄

*/public

class

test extends genericudf );

system.

out.

println

(evaluate.

tostring()

);}//udf中引數校驗

public

objectinspector

initialize

(objectinspector[

] arguments) throws udfargumentexception

return primitiveobjectinspecto***ctory.writablebooleanobjectinspector;

}//udf中需要傳遞的引數

public

object

evaluate

(deferredobject[

] arguments) throws hiveexception

//報錯是報錯內容

public

string

getdisplaystring

(string[

] strings)

return sb.

tostring()

;}}

建立永久函式

create function str_add as

'com.test.test'

using jar 'hdfs://

namespace

/user/hive/lib/test.jar

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函式

匯入自定義udf.jar的第3種方式!匯入核心依賴 外部pom已經匯入了hadoop依賴!org.apache.hivegroupid hive execartifactid 1.2.1version dependency dependencies package com.zhengkw.userf...