更新时间:2022-12-07 GMT+08:00
创建函数
功能描述
DLI支持创建使用UDF和UDTF等自定义函数应用于Spark作业开发当中。
语法格式
1 2 3 4 5 |
CREATE [TEMPORARY] FUNCTION [db_name.]function_name AS class_name [USING resource,...] resource: : (JAR|FILE|ARCHIVE)file_uri |
注意事项
- 如果在数据库中存在同名的函数,系统将会报错。
- 只支持Hive语法创建函数。
- 请注意避免该场景:如果创建的自定义函数F1指定类C1,程序包名JAR1,创建自定义函数F2也指定类C1,程序包JAR2,因为F2和F1使用相同的类名,导致功能相互冲突,影响作业执行。
关键字
- TEMPORARY:所创建的函数仅在当前会话中可用,并且不会持久化到底层元数据库中(如果有的话)。不能为临时函数指定数据库名称。
- USING <resources>:需要加载的资源。可以是JAR、文件或者URI的列表。
示例
创建函数mergeBill。
1 2 |
CREATE FUNCTION mergeBill AS 'com.xxx.hiveudf.MergeBill' using jar 'obs://onlyci-7/udf/MergeBill.jar'; |
父主题: 自定义函数