我有一个.tsv文件包含hdfs中的数据,无法将其加载到pig中。我使用的命令是“
A = load 'file_location' as (name:chararray, age:int, gpa:float);B = foreach A generate (name, age);DUMP B;
A = load 'file_location' as (name:chararray, age:int, gpa:float);
B = foreach A generate (name, age);
DUMP B;
返回错误:找不到别名a的运算符
2uluyalo1#
如果不指定分隔符,pig将使用默认值','作为加载文件的分隔符。因此,load语句失败。必须显式指定分隔符'\t'。
A = LOAD 'file_location' USING PigStorage('\t') AS (name:chararray, age:int, gpa:float);
j1dl9f462#
像这样吗a=使用pigstorage('\t')作为(name:chararray,age:int,gpa:float);b=姓名、年龄;b排土场;ps:我认为您的命令没有任何错误。as tab(\t)是pig的默认分隔符。我用你的命令得到了正确的输出。你能给我发送你终端的日志或截图吗。
2条答案
按热度按时间2uluyalo1#
如果不指定分隔符,pig将使用默认值','作为加载文件的分隔符。因此,load语句失败。必须显式指定分隔符'\t'。
j1dl9f462#
像这样吗
a=使用pigstorage('\t')作为(name:chararray,age:int,gpa:float);
b=姓名、年龄;
b排土场;
ps:我认为您的命令没有任何错误。as tab(\t)是pig的默认分隔符。我用你的命令得到了正确的输出。你能给我发送你终端的日志或截图吗。