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 在pig中输出两个值之间有空格的元组_Hadoop_Apache Pig - Fatal编程技术网

Hadoop 在pig中输出两个值之间有空格的元组

Hadoop 在pig中输出两个值之间有空格的元组,hadoop,apache-pig,Hadoop,Apache Pig,我一直在使用pig过滤一个大文件,其中包含以制表符分隔的格式显示的数据。该文件中的数据格式如下-fname lname age Bill Gates 50 Warren Buffet 100 Elon Musk 80 Jack Dorsey 10 我想在年龄>50的地方过滤掉这个过滤器,并使用Pig将结果数据以(fname lname)的形式存储在一个文件中 这是我正在使用的代码- data = LOAD 'persons.txt' AS (fname:chararray, lname:cha

我一直在使用pig过滤一个大文件,其中包含以制表符分隔的格式显示的数据。该文件中的数据格式如下-fname lname age

Bill Gates 50
Warren Buffet 100
Elon Musk 80
Jack Dorsey 10
我想在年龄>50的地方过滤掉这个过滤器,并使用Pig将结果数据以(fname lname)的形式存储在一个文件中

这是我正在使用的代码-

data = LOAD 'persons.txt' AS (fname:chararray, lname:chararray, age:int);
data1 = FILTER data BY age > 50;
data2 = FOREACH data1 GENERATE (fname, lname);
STORE data2 INTO 'result.txt';
通过使用此代码,我可以获得以下输出-

(Warren,Buffet)
(Elon,Musk)
(Warren Buffet)
(Elon Musk)
这不是我想要的输出,而是我想要得到以下输出-

(Warren,Buffet)
(Elon,Musk)
(Warren Buffet)
(Elon Musk)
为了获得这种输出,我尝试使用
foreachdata1generate(fname-lname)
在fname和lname之间不使用逗号。但它显示错误
Synatx错误,fname处或附近出现意外符号

有人能帮我吗?我怎样才能得到正确的输出

注意->我正在Hadoop集群上运行Pig,而不是在本地运行。

在fname和lname之间使用空格

data2 = FOREACH data1 GENERATE CONCAT(fname,' ',lname);