2013-06-20 4 views
0

Я использую Hortonworks Sandbox 1.2, и я довольно новичок в платформе Hadoop.Hadoop PIG Helper GROUP error

Так вот ошибка, в то время как я следил за учебником, включенным в песочницу. В разделе PIG я вставил код GROUP с помощью PIG Helper. Он вставляет код, подобный

GROUP %VAR% BY %VAR% 

И мой код выглядит так после завершения учебника.

a = LOAD 'nyse_stocks' USING org.apache.hcatalog.pig.HCatLoader(); 
b = FILTER a BY stock_symbol == 'IBM'; 
c = GROUP b BY all; 
d = FOREACH c GENERATE AVG(b.stock_volume); 
DUMP d; 

Это дает ошибку ниже:

[main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1200: mismatched input ';' expecting LEFT_PAREN 

Я делаю все, как говорится в учебнике. Итак, где ошибка?

EDIT: Я добавил журналы PIG ниже.

2013-06-24 04:56:16,869 [main] INFO org.apache.pig.Main - Apache Pig version 0.10.1.21 (rexported) compiled Dec 24 2012, 03:01:24 
2013-06-24 04:56:16,870 [main] INFO org.apache.pig.Main - Logging error messages to: /hadoop/mapred/taskTracker/sandbox/jobcache/job_201306240450_0001/attempt_201306240450_0001_m_000000_0/work/pig_1372064176867.log 
2013-06-24 04:56:20,224 [main] INFO org.apache.pig.backend.hadoop.executionengine.HExecutionEngine - Connecting to hadoop file system at: hdfs://sandbox:8020 
2013-06-24 04:56:22,862 [main] INFO org.apache.pig.backend.hadoop.executionengine.HExecutionEngine - Connecting to map-reduce job tracker at: sandbox:50300 
2013-06-24 04:56:25,672 [main] WARN org.apache.hadoop.hive.conf.HiveConf - DEPRECATED: Configuration property hive.metastore.local no longer has any effect. Make sure to provide a valid value for hive.metastore.uris if you are connecting to a remote metastore. 
2013-06-24 04:56:25,959 [main] INFO hive.metastore - Trying to connect to metastore with URI thrift://sandbox:9083 
2013-06-24 04:56:27,956 [main] INFO hive.metastore - Waiting 1 seconds before next connection attempt. 
2013-06-24 04:56:28,957 [main] INFO hive.metastore - Connected to metastore. 
2013-06-24 04:56:30,552 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1200: mismatched input ';' expecting LEFT_PAREN 
Details at logfile: /hadoop/mapred/taskTracker/sandbox/jobcache/job_201306240450_0001/attempt_201306240450_0001_m_000000 
+0

Не могли бы вы вставить журнал свиньи? – zsxwing

+0

Я добавил журналы свиней. И я решаю проблему, изменяя эффузию GROUP. Просто сбросил ключевое слово BY, и оно сработало. –

ответ

2
c = GROUP b BY all; 

неверны , правильный синтаксис

c = GROUP b all;