udf 编写
?1 在hive/ql/src/java/org/apache/hadoop/hive/ql/udf/ 下放置一個java文件,其中包含你自定義的類, 重載類中evaluate函數實現你所需要的功能。 注意異常、空值得處理。
比如,UDFSplit.java, 提取String s中,按String d分隔后的第 start個字段。
s="a,b", d="," start=1, 則返回 "a".
2 在hive/ql/src/java/org/apache/hadoop/hive/ql/exec目錄,在類FunctionRegistry.java中注冊udf函數? registerudf("yourfuncname",YourClass.class, OperatorType.PREFIX, false);
3 最后重新編譯hive代碼,運行hive目錄下的buildhive.sh
udf, user define function基本上可以實現你所有想要的功能。 定義好函數后就可以像hive的built-in函數一樣使用,sum,substr
總結
- 上一篇: sh string
- 下一篇: autoconf和automake的安装