Hadoop 在Hive中,简单UDAF和通用UDAF有什么区别?
此处有文档页面: 但简单UDAF和通用UDAF之间没有很好的区别 如果可能,请指出一些示例。简单UDAF类扩展了UDAF,并有一个或多个静态内部类实现UDAFEvaluator您的UDAF逻辑。在运行时,配置单元将使用反射来检查witch静态内部UDAFEvaluator是否适合他接收的参数。这将减慢作业的进程,但更容易实现Hadoop 在Hive中,简单UDAF和通用UDAF有什么区别?,hadoop,hive,Hadoop,Hive,此处有文档页面: 但简单UDAF和通用UDAF之间没有很好的区别 如果可能,请指出一些示例。简单UDAF类扩展了UDAF,并有一个或多个静态内部类实现UDAFEvaluator您的UDAF逻辑。在运行时,配置单元将使用反射来检查witch静态内部UDAFEvaluator是否适合他接收的参数。这将减慢作业的进程,但更容易实现 使用泛型UADF时,您的类扩展AbstractGenericUDAFResolver,您需要重写函数getEvaluatorGenericUDAFParameterInfo
使用泛型UADF时,您的类扩展AbstractGenericUDAFResolver,您需要重写函数getEvaluatorGenericUDAFParameterInfo info。该函数将为Hive提供正确的计算器。实现起来更复杂,但在运行时更快,因为没有使用反射。我想看看Edward Capriolo等人的作品。在第169页,有一个章节叫做UDF vs GenericUDF,刚才在这里查阅了这本书。尽管对UDF的解释是正确的,但对UDAFs来说似乎是正确的。