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
Apache pig 针对级联内置功能的清管器udf效率_Apache Pig_Pig Udf_Bigdata - Fatal编程技术网

Apache pig 针对级联内置功能的清管器udf效率

Apache pig 针对级联内置功能的清管器udf效率,apache-pig,pig-udf,bigdata,Apache Pig,Pig Udf,Bigdata,我不熟悉PIG脚本,我有一个要求,我需要在10种条件下执行梯形图If Else, 据我所知,我们只有三元运算符,所以我想写一个UDF,而不是像下面这样级联三元运算符:- (条件:陈述1?(条件:陈述2?陈述3)) 数据大小是以千万行为单位的,我是否应该继续努力为我的需求创建一个UDF呢 最后,如果它导致性能问题,那么付出努力是没有意义的 据我所知,将为考虑中的每一行调用UDF,对一百万条记录的递归调用是一项严重的开销。我认为如果您可以访问大型集群,UDF应该不会成为问题,它可以提高脚本的可读性。

我不熟悉PIG脚本,我有一个要求,我需要在10种条件下执行梯形图If Else, 据我所知,我们只有三元运算符,所以我想写一个UDF,而不是像下面这样级联三元运算符:- (条件:陈述1?(条件:陈述2?陈述3))

数据大小是以千万行为单位的,我是否应该继续努力为我的需求创建一个UDF呢

最后,如果它导致性能问题,那么付出努力是没有意义的


据我所知,将为考虑中的每一行调用UDF,对一百万条记录的递归调用是一项严重的开销。

我认为如果您可以访问大型集群,UDF应该不会成为问题,它可以提高脚本的可读性。 最后,您的脚本还被编译为java可执行文件。
如果您能够在昂贵的操作之前过滤数据,那么这将是对性能的最大好处

感谢Kecso,我做了同样的事情,删除了数据中不必要的属性,然后做了复杂的逻辑,代码现在执行得更好了。