Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hadoop 在Hive中,简单UDAF和通用UDAF有什么区别?_Hadoop_Hive - Fatal编程技术网

Hadoop 在Hive中,简单UDAF和通用UDAF有什么区别?

Hadoop 在Hive中,简单UDAF和通用UDAF有什么区别?,hadoop,hive,Hadoop,Hive,此处有文档页面: 但简单UDAF和通用UDAF之间没有很好的区别 如果可能,请指出一些示例。简单UDAF类扩展了UDAF,并有一个或多个静态内部类实现UDAFEvaluator您的UDAF逻辑。在运行时,配置单元将使用反射来检查witch静态内部UDAFEvaluator是否适合他接收的参数。这将减慢作业的进程,但更容易实现 使用泛型UADF时,您的类扩展AbstractGenericUDAFResolver,您需要重写函数getEvaluatorGenericUDAFParameterInfo

此处有文档页面:

但简单UDAF和通用UDAF之间没有很好的区别

如果可能,请指出一些示例。

简单UDAF类扩展了UDAF,并有一个或多个静态内部类实现UDAFEvaluator您的UDAF逻辑。在运行时,配置单元将使用反射来检查witch静态内部UDAFEvaluator是否适合他接收的参数。这将减慢作业的进程,但更容易实现


使用泛型UADF时,您的类扩展AbstractGenericUDAFResolver,您需要重写函数getEvaluatorGenericUDAFParameterInfo info。该函数将为Hive提供正确的计算器。实现起来更复杂,但在运行时更快,因为没有使用反射。

我想看看Edward Capriolo等人的作品。在第169页,有一个章节叫做UDF vs GenericUDF,刚才在这里查阅了这本书。尽管对UDF的解释是正确的,但对UDAFs来说似乎是正确的。