Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/32.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 将值附加到PIG变量_Hadoop_Apache Pig - Fatal编程技术网

Hadoop 将值附加到PIG变量

Hadoop 将值附加到PIG变量,hadoop,apache-pig,Hadoop,Apache Pig,我需要向PIG中声明的变量追加一个值 %声明描述“测试/nimmiv/清管器” 原始=使用PigStorage('\t')作为(a1:chararray,a2:chararray,a3:long)加载“test.log” /*有猪加工吗*/ 值=FOREACH原始生成$0 TMP=FOREACH原始生成$1作为路径 路径=不同的TMP /*转储路径将给我一个值(tmp),我需要将这个值附加到现有的值Test/nimmiv/pig=>Test/nimmiv/pig/tmp*/ 将值存储到“$DES

我需要向PIG中声明的变量追加一个值

%声明描述“测试/nimmiv/清管器”

原始=使用PigStorage('\t')作为(a1:chararray,a2:chararray,a3:long)加载“test.log”

/*有猪加工吗*/

值=FOREACH原始生成$0

TMP=FOREACH原始生成$1作为路径

路径=不同的TMP

/*转储路径将给我一个值(tmp),我需要将这个值附加到现有的值Test/nimmiv/pig=>Test/nimmiv/pig/tmp*/

将值存储到“$DESC/$PATH”中


这将引发未定义的别名错误。将此值附加到现有路径的最简单方法是什么。

未定义的别名是“value”,它似乎以前没有引入过,并且在您尝试在其上存储之前必须已经存在。

您可以使用UNION,如中所述

例如:

combined = UNION value, path;

那只是一个打字错误。我在变量值中有一些值。所以,我的问题是如何将元组值附加到声明的变量值。Union运算符用于合并两个或多个关系。我希望在定义的变量中附加一个值。在上面的场景中,我试图将值tmp=>PATH.$0附加到'Test/nimmiv/pig'=>%declare DESC'Test/nimmiv/pig'的值上,明白了;不幸的是,我不知道如何实现这一点。你能提供一些示例输入和所需的输出吗?因此示例与我的问题相同,比如I/p=>%declare DESC'Test/nimmiv/pig'=>o/p=>/Test/nimmi/pig/path\u 0203,其中path\u 0203是在中间pig步骤中获得的值。那么你想使用pig动态创建输出路径吗?那真的不管用。我唯一想到的是Multistorage(),但我不知道这是否仍然是Pig中的一个东西。