1、spark-sql可以直接使用hive的自定義函數,而不需要重新寫一套spark-sql的自定義函數,這裏較大家一個簡單的配置方式即可
2、將hive的自定義函數jar拷貝到/usr/lib/spark-current/jars,我們的jar是先存在oss,所以用下面的命令,
osscmd get --host=oss-cn-hangzhou-internal.aliyuncs.com --id=accessid --key=accesskey oss://bigdata-cps-test/hive-udx-0.2-jar-with-dependencies.jar /usr/lib/spark-current/jars/hive-udx-0.2-jar-with-dependencies.jar
3、創建自定義函數
DROP FUNCTION IF EXISTS call_tree_pattern;
CREATE FUNCTION call_tree_pattern AS 'com.xx.gateway.elastic.udf.xxxUDF';
4、如果我們的項目從hsql遷移到spark-sql,就可以很平滑的把自定函數遷移過來了