Apache pig 在Pig中读取CSV文件
我使用的是Cloudera CDH3伪模式集群。在CDH3中,清管器版本为0.8 我想使用Pig脚本读取CSV或Excel文件 我下载了piggybank-0.11.0.jar并将其保存在/home/cloudera/目录中 我的csv文件如下Apache pig 在Pig中读取CSV文件,apache-pig,Apache Pig,我使用的是Cloudera CDH3伪模式集群。在CDH3中,清管器版本为0.8 我想使用Pig脚本读取CSV或Excel文件 我下载了piggybank-0.11.0.jar并将其保存在/home/cloudera/目录中 我的csv文件如下 id name city 100 surrender Chennai 101 raja Chennai 我的猪脚本如下 REGISTER '/home/cloudera/piggybank-0.11.0.jar'
id name city
100 surrender Chennai
101 raja Chennai
我的猪脚本如下
REGISTER '/home/cloudera/piggybank-0.11.0.jar';
A = LOAD '/user/cloudera/inputfiles/sample_rec.csv' USING CSVExcelStorage(',') AS (id:int,name:chararray,city:chararray);
B = DUMP A;
但我的错误率越来越低
ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1070: Could not resolve CSVExcelStorage using imports: [, org.apache.pig.builtin., org.apache.pig.impl.builtin.
我需要下载Pig0.8版本的PiggbankJAR吗
这里怎么了?
是否可以在pig 0.8版本中读取csv文件?使用CSVExcelStorage()时指定完整的包名: 其他支票:
A = LOAD 'a.csv' USING org.apache.pig.piggybank.storage.CSVLoader() AS (f1,f2,f3);
参考:1。取消注册并查看是否有CSVExcelStorage类。2.“,”是CSVExcelStorage的默认分隔符,我们不需要指定相同的分隔符。3。使用CSVExcelStorage()时指定完整的包名:使用org.apache.pig.piggybank.storage.CSVExcelStorage()确定。。我试过了,但是当我在cdh3中转储我正在使用的Pig 0.8的输出时,它会给出一些垃圾记录。。但我也在使用piggybank-0.11.0.jar。这就是问题所在,CSVExcelStorage在Pig 0.8上可用吗?@SurenderRaja:你能改用CSVLoader吗?Ref:ok..我正在尝试以下代码输入:从“/user/cloudera/inputfiles/sample_rec.csv”输出中成功读取52条记录(9205字节):在中成功存储52条记录(1171字节):hdfs://localhost/tmp/temp1988488632/tmp-1068001496" (,,) (,���o8u����+�<代码>�ӡ���代码>��B[��信用证|�,) (,,) (,,) (,;�,) (,)好的..我正在尝试下面的代码寄存器'/home/cloudera/surender/mapreducejars/piggybank-0.11.0.jar';A=LOAD'/user/cloudera/inputfiles/sample_rec.csv'USINGorg.apache.pig.piggybank.storage.CSVLoader()(id:int,name:chararray,city:chararray);转储A;输入:从“/user/cloudera/inputfiles/sample_rec.csv”输出中成功读取52条记录(9205字节),并将52条记录(1171字节)成功存储在:hdfs://localhost/tmp/temp1988488632/tmp-1068001496" (,���o8u����+�<代码>�ӡ���代码>��B[��信用证|�,)我的问题是“/home/cloudera/surender/mapreducejars/piggybank-0.11.0.jar”是否在clouderacdh3中工作?
A = LOAD 'a.csv' USING org.apache.pig.piggybank.storage.CSVLoader() AS (f1,f2,f3);