2011-09-09 1 views
1

작은 클러스터에서 hadoop 돼지를 테스트했습니다.hadoop 돼지 스트리밍 컴파일 된 C 프로그램을 사용하는 방법?

저는 돼지를 펄, 파이썬, 쉘 스크립트, 심지어는 jar 파일로 스트림하지만 C 바이너리 파일로는 사용하지 못했습니다!

난 그냥 C

에 간단한 안녕하세요 프로그램을 빌드 및 테스트

로 컴파일 그리고 ubuntu11.04와 g에서 ./test 사용하여 실행 ++ 컴파일러는 최신 버전입니다.

프로그램이 OS에서 완벽하게 실행됩니다.

그러나 돼지에서 스트리밍하려고하면 항상 실패합니다!

이 돼지 스크립트입니다 :

a = load ('test.txt'); 
define p `./test` ship('/home/clouduser/test'); 
b = stream a through p; 
dump p; 

있는 test.txt 만의 공간을

를 포함하고 나는 성공적 펄, 파이썬, 쉘 스크립트와 자바와 같은 구성을 테스트합니다.

grunt> a = load 'test.txt'; 
grunt> define p `./1.sh` ship('/home/clouduser/1.sh'); 
grunt> b = stream a through p; 
grunt> dump b 
2011-09-08 23:53:33,940 [main] INFO org.apache.pig.tools.pigstats.ScriptState - Pig features used in the script: STREAMING 
2011-09-08 23:53:33,940 [main] INFO org.apache.pig.backend.hadoop.executionengine.HExecutionEngine - pig.usenewlogicalplan is set to true. New logical plan will be used. 
2011-09-08 23:53:34,017 [main] INFO org.apache.pig.backend.hadoop.executionengine.HExecutionEngine - (Name: b: Store(hdfs://cloudlab-namenode/tmp/temp-502536453/tmp-1972014919:org.apache.pig.impl.io.InterStorage) - scope-2 Operator Key: scope-2) 
2011-09-08 23:53:34,026 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MRCompiler - File concatenation threshold: 100 optimistic? false 
2011-09-08 23:53:34,048 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MultiQueryOptimizer - MR plan size before optimization: 1 
2011-09-08 23:53:34,048 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MultiQueryOptimizer - MR plan size after optimization: 1 
2011-09-08 23:53:34,111 [main] INFO org.apache.pig.tools.pigstats.ScriptState - Pig script settings are added to the job 
2011-09-08 23:53:34,126 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler - mapred.job.reduce.markreset.buffer.percent is not set, set to default 0.3 
2011-09-08 23:53:35,938 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler - Setting up single store job 
2011-09-08 23:53:35,994 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher - 1 map-reduce job(s) waiting for submission. 
2011-09-08 23:53:36,312 [Thread-9] INFO org.apache.hadoop.mapreduce.lib.input.FileInputFormat - Total input paths to process : 1 
2011-09-08 23:53:36,313 [Thread-9] INFO org.apache.pig.backend.hadoop.executionengine.util.MapRedUtil - Total input paths to process : 1 
2011-09-08 23:53:36,324 [Thread-9] WARN org.apache.hadoop.util.NativeCodeLoader - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 
2011-09-08 23:53:36,324 [Thread-9] WARN org.apache.hadoop.io.compress.snappy.LoadSnappy - Snappy native library not loaded 
2011-09-08 23:53:36,326 [Thread-9] INFO org.apache.pig.backend.hadoop.executionengine.util.MapRedUtil - Total input paths (combined) to process : 1 
2011-09-08 23:53:36,494 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher - 0% complete 
2011-09-08 23:53:37,101 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher - HadoopJobId: job_201109051400_0283 
2011-09-08 23:53:37,101 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher - More information at: http://172.19.1.4:50030/jobdetails.jsp?jobid=job_201109051400_0283 
2011-09-08 23:54:01,755 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher - job job_201109051400_0283 has failed! Stop running all dependent jobs 
2011-09-08 23:54:01,762 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher - 100% complete 
2011-09-08 23:54:01,774 [main] ERROR org.apache.pig.tools.pigstats.PigStats - ERROR 2997: Unable to recreate exception from backed error: org.apache.pig.backend.executionengine.ExecException: ERROR 2055: Received Error while processing the map plan: './1.sh ' failed with exit status: 127 
2011-09-08 23:54:01,774 [main] ERROR org.apache.pig.tools.pigstats.PigStatsUtil - 1 map reduce job(s) failed! 
2011-09-08 23:54:01,776 [main] INFO org.apache.pig.tools.pigstats.PigStats - Script Statistics: 

HadoopVersion PigVersion  UserId StartedAt  FinishedAt  Features 
0.20.2-cdh3u1 0.8.1-cdh3u1 clouduser  2011-09-08 23:53:34  2011-09-08 23:54:01  STREAMING 

Failed! 

Failed Jobs: 
JobId Alias Feature Message Outputs 
job_201109051400_0283 a,b  STREAMING,MAP_ONLY  Message: Job failed! Error - NA hdfs://cloudlab-namenode/tmp/temp-502536453/tmp-1972014919, 

Input(s): 
Failed to read data from "hdfs://cloudlab-namenode/user/clouduser/test.txt" 

Output(s): 
Failed to produce result in "hdfs://cloudlab-namenode/tmp/temp-502536453/tmp-1972014919" 

Counters: 
Total records written : 0 
Total bytes written : 0 
Spillable Memory Manager spill count : 0 
Total bags proactively spilled: 0 
Total records proactively spilled: 0 

Job DAG: 
job_201109051400_0283 


2011-09-08 23:54:01,776 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher - Failed! 
2011-09-08 23:54:01,793 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 2997: Unable to recreate exception from backed error: org.apache.pig.backend.executionengine.ExecException: ERROR 2055: Received Error while processing the map plan: './1.sh ' failed with exit status: 127 
Details at logfile: /home/clouduser/pig_1315540364239.log 

이 난 쉘 스크립트에서이 파일을 실행하고 쉘 스크립트와 진하지만 여전히 실패이 C를 제공하기 위해 노력!

누구나 가지고 있습니다!

StackOverflow의 원래의 C 코드를 허용하지 않는 것 같습니다하지만 코드는 주어진 로그에서

답변

2

잘 실행 : 에서 데이터를 읽지 못했습니다 "HDFS : //cloudlab-namenode/user/clouduser/test.txt"

클러스터 경로에서 파일 TEST.TXT이 있는지 확인하십시오 "HDFS : //cloudlab-namenode/user/clouduser/test.txt" 2011-09-08 23 로그 줄에서

를 : 54 : 01,793 [main] ERROR org.apache.pig.tools.grunt.Grunt - 오류 2997 : 오류 백업에서 예외를 다시 생성 할 수 없습니다 : org.apache.pig.backend .executionengine.ExecException : 오류 2055 : 맵 계획을 처리하는 중 오류가 발생했습니다 : './1.sh'이 (가) 종료 상태로 실패했습니다. 127

./1.sh를 실행할 수 있는지 확인하십시오.