您的位置:首页 > 其它

Spark 2.x永久自定义函数编写

2018-03-06 18:03 183 查看
以前写过一篇spark1.6.x编写永久的自定义函数,今天补上写spark2.x永久自定义函数的步骤:
1、使用scala语言编写自定义函数,spark2.x已经不在支持使用hive的方式加载函数

    Scala类参数不同继承不同scala类(UnaryExpression、BinaryExpression、TernaryExpression、Expression)
    重写nullSafeEval方法或者eval方法(静态参数)
    重写doGenCode方法(动态参数)
2、将自定义函数集成FunctionRegistry类
3、编译打包放入spark-catalyst_2.11-2.2.0.jar

4、将参数传递方法集成functions.scala中
    functions.scala中对一个自定义函数处理:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息