errores comunes de script cerdo

1, ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1200: índice de la cadena fuera de rango: 36

La razón: el final de más espacios

video_read_allnet = LOAD '/user/hdphailiyang/statistics/kyk_close/video_read_allnet/${date}/p*';
-- `awk XXX ` XXX后面不能有空格
video_read_allnet = STREAM video_read_allnet THROUGH `awk -F'[\t|]' '{print $1"\t"$2"\t"$3}'`;
2, ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1000: Error durante el análisis.
   Encountered " <PATH> "book=load "" at line 2, column 1.
   Was expecting one of:
       <EOF> 
       "cat" ...
       "clear" ...
       "fs" ...
       "sh" ...
       "cd" ...
       "cp" ...
       "copyFromLocal" ...
       "copyToLocal" ...
       "dump" ...
       "\\d" ...
       "describe" ...
       "\\de" ...
       "aliases" ...
       "explain" ...
       "\\e" ...
       "help" ...
       "history" ...
       "kill" ...
       "ls" ...
       "mv" ...
       "mkdir" ...
       "pwd" ...
       "quit" ...
       "\\q" ...
       "register" ...
       "rm" ...
       "rmf" ...
       "set" ...
       "illustrate" ...
       "\\i" ...
       "run" ...
       "exec" ...
       "scriptDone" ...
       "" ...
       "" ...
       <EOL> ...
       ";" ...

La razón: dejar espacios a ambos lados del signo igual

A=LOAD 'XXX'  => A = LOAD 'XXX'
3, ERROR org.apache.pig.Main - ERROR 2997: Encontró IOException. org.apache.pig.tools.parameters.ParseException: encontrado “” en la línea 1, columna 9

Mi escritura es la primera línea

SET default_parallel 500;

La razón:
Cuando se utiliza un script de shell llamado, -p parámetros disponibles, el parámetro se borra delante de mí, pero el guión no elimina el parámetro -p correspondiente, por lo que el error.

4, la proyección de campo no válido. campo proyectado [group_res1 :: pv] no existe en el esquema: Grupo: chararray, group_res1: Bolso {: tupla (UIN: chararray, pv: largo)}.
group_res1 = GROUP join_res1 BY (uin, docid);

group_res1 = FOREACH group_res1 GENERATE group.$0 AS uin, COUNT($1) AS pv;

uin_max1 = GROUP group_res1 BY uin;

# 这一行报错
uin_max1 = FOREACH uin_max1 GENERATE FLATTEN(group) AS uin, MAX(group_res1::pv) AS pv;

Donde pv es group_res1 en la estructura de datos tupla, no un doble colon, con un punto de ser adquirida, modificado como sigue:

uin_max1 = FOREACH uin_max1 GENERATE FLATTEN(group) AS uin, MAX(group_res1.pv) AS pv;
Publicados 114 artículos originales · ganado elogios 55 · Vistas a 80000 +

Supongo que te gusta

Origin blog.csdn.net/zuolixiangfisher/article/details/99623240
Recomendado
Clasificación