ElephantBird와 Pig를 사용하여 JSON 파일을 읽을 수 없습니다. 내가 실수를하고있는 곳을 알고 싶다.Elephantbird를 사용하여 JSON을 읽는 중 오류가 발생했습니다. - PIG
데이터 :
{ "nrcpts": "1",
"src": "[email protected]",
"sendmailid": "p6D0r0u1006229",
"relay": "app03.example.com",
"classnumber": "0",
"msgid": "WARQZCXAEMSSVWPPOOYZXR
[email protected]",
"pid": "6229",
"month": "Jul",
"time": "20:53:00",
"day": "12",
"mailserver": "mail5",
"size": "57395"
}
코드 :
json1 = load '/user/hdetl/funnel/uetsample.dat' using com.twitter.elephantbird.pig.load.JsonLoader();
dat = FOREACH json1 GENERATE $0#'mailserver' AS mailserver;
dump dat;
오류 : 나는 JSON 로더를 사용하지 않은하지만 난 당신이 드롭 할 수 있어야 상상
Input(s):
Failed to read data from "/user/hdetl/funnel/uetsample.dat"
detailed error :
Pig Stack Trace
---------------
ERROR 2997: Unable to recreate exception from backed error: Error: in
org.apache.pig.impl.logicalLayer.FrontendException: ERROR 1066: Unable to open iterator for alias dat. Backend error : Unable to recreate exception from back
ed error: Error: in
at org.apache.pig.PigServer.openIterator(PigServer.java:891)
at org.apache.pig.tools.grunt.GruntParser.processDump(GruntParser.java:655)
at org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:303)
at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:188)
at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:164)
at org.apache.pig.tools.grunt.Grunt.run(Grunt.java:69)
at org.apache.pig.Main.run(Main.java:495)
at org.apache.pig.Main.main(Main.java:111)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.util.RunJar.main(RunJar.java:186)
Caused by: org.apache.pig.backend.executionengine.ExecException: ERROR 2997: Unable to recreate exception from backed error: Error: in
at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.Launcher.getErrorMessages(Launcher.java:221)
at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.Launcher.getStats(Launcher.java:151)
at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher.launchPig(MapReduceLauncher.java:344)
at org.apache.pig.PigServer.launchPlan(PigServer.java:1314)
at org.apache.pig.PigServer.executeCompiledLogicalPlan(PigServer.java:1299)
at org.apache.pig.PigServer.storeEx(PigServer.java:996)
at org.apache.pig.PigServer.store(PigServer.java:963)
at org.apache.pig.PigServer.openIterator(PigServer.java:876)
수출 JAVA_HOME =은/usr/자바/jdk1.6.0_22 수출 PIG_CLASSPATH =은/etc/하둡/conf의 수출 PATH = $ PATH : /local/hdetl/pig-0.9.2/bin REGISTER /local/hdetl/funnel/pig-jars/json-simple-1.1.jar; REGISTER /local/hdetl/funnel/pig-jars/google-collect-1.0.jar; REGISTER '/local/hdetl/funnel/pig-jars/elephant-bird-1.2.1-SNAPSHOT.jar'; – Bharathi
무엇이 당신의 질문입니까? –
elephantbird와 PIG를 사용하여 JSON 파일을 읽을 수 없습니다. 나는 실수를하는 곳을 알고 싶다. – Bharathi