蜂巢UDF如何工作?

时间:2020-06-06 00:54:00

标签: hadoop hive hadoop2

我已经写了一个UDF,确切地说是通用UDF。此UDF使用AES算法加密列。该UDF需要一些参数才能读取以连接到外部RDS表。因此,我认为使用属性文件并从文件系统(而非类路径)中读取文件是个好主意。

现在使用此设置。如果我仅使用select运行UDF,它就可以工作。即以下正在工作

select encrypt(name) from emp;

但是,如果我应用任何聚合函数或使用不同的聚合函数,它将失败。

select distinct encrypt(name) from emp; 

我意识到,在不同的时间内,它无法读取property file,并且位于本地文件系统上。当我更改为从class path读取时,两个查询均有效。

所以我的问题是:

当我从本地文件系统读取属性文件时,为什么第一个查询有效?它也不应该失败吗?

0 个答案:

没有答案