Hive UDF 修剪給定的字串

package MyHiveUDFs;

import org.apache.commons.lang.StringUtils;
import org.apache.hadoop.hive.ql.exec.UDF;
import org.apache.hadoop.io.Text;

public class Strip extends UDF {

private Text result = new Text();
 public Text evaluate(Text str) {
 if(str == null) {
 return null;
 }
 result.set(StringUtils.strip(str.toString()));
 return result;
 }
}

將上面的內容匯出到 jar 檔案中

轉到 Hive CLI 並新增 UDF JAR

hive> ADD jar /home/cloudera/Hive/hive_udf_trim.jar;

驗證 JAR 是否位於 Hive CLI 類路徑中

hive> list jars;
/home/cloudera/Hive/hive_udf_trim.jar

建立臨時功能

hive> CREATE TEMPORARY FUNCTION STRIP AS 'MyHiveUDFs.Strip';

UDF 輸出

 hive> select strip('   hiveUDF ') from dummy;
 OK
 hiveUDF