hive自定义函数可以帮我们轻松解决很多sql不好实现的逻辑,所以偶然写写自定义函数还是很有用的. 但是我最近遇到一个问题,就是我函数写好了,使用CREATE FUNCTION default.temporary_time_combine as 'com.saas.ylz.bigdata.udf.TemporaryTimeCombine'
using jar 'hdfs:///hive/udf/temperature-time-combiner-1.0-SNAPSHOT.jar' 语句创建函数,函数创建成功,并且使用show functions 可以看到该函数,在hue也可以正常使用.但是!!!当我把脚本放到调度上去执行的时候,有时候能执行成功,有时候会报无效函数的错误!

报错信息:

 

然后我又去客户端和hue测试发现都是可以使用的,不晓得什么情况....只能百度求助了,有的小伙伴说要因为不是hive的内置函数,需要重新编译hive,有的小伙伴说重启集群就行了..这两个去验证的成本都太高了我没去验证....最终我的解决方式是每次都在脚本里面创建临时函数,这样至少能保证在当前的session该函数是有效的.

 

 

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐