나는 elastic-mapreduce 루비 라이브러리를 사용하여 일의 흐름을 시작할 수있었습니다. 이제 작업이 완료된 후에도 여전히 '살아있다'는 인스턴스가 있습니다. SSH를 사용하여 로그인했지만 다른 작업을 시작하려고하지만 hadoop이 입력 파일을 찾을 수 없기 때문에 다양한 시도가 실패했습니다. 로컬 및 S3에 입력 파일을 저장하려고했습니다.SSH 내에서 Hadoop을 직접 호출하여 작업 시작
내 SSH 세션에서 직접 새 hadoop 작업을 만들려면 어떻게해야합니까? 내 시도에서
오류 :
hadoop jar hadoop-0.20-streaming.jar \
-input /home/hadoop/mystic/search_sets/test_sample.txt \
-output /home/hadoop/mystic/search_sets/test_sample_output.txt \
-mapper /home/hadoop/mystic/ctmp1_mapper.py \
-reducer /home/hadoop/mystic/ctmp1_reducer.py \
-file /home/hadoop/mystic/ctmp1_mapper.py \
-file /home/hadoop/mystic/ctmp1_reducer.py
11/10/04 22:33:57 ERROR streaming.StreamJob: Error Launching job :Input path does not exist: hdfs://ip-xx-xxx-xxx-xxx.us-west-1.compute.internal:9000/home/hadoop/mystic/search_sets/test_sample.txt
(초 사용하여 시행했을 S3) (처음에는 SFTP를 사용하여 파일 업로드에 의해 생성했던 로컬 파일 저장, 사용을 시도) :
을hadoop jar hadoop-0.20-streaming.jar \
-input s3n://xxxbucket1/test_sample.txt \
-output /home/hadoop/mystic/search_sets/test_sample_output.txt \
-mapper /home/hadoop/mystic/ctmp1_mapper.py \
-reducer /home/hadoop/mystic/ctmp1_reducer.py \
-file /home/hadoop/mystic/ctmp1_mapper.py \
-file /home/hadoop/mystic/ctmp1_reducer.py
11/10/04 22:26:45 ERROR streaming.StreamJob: Error Launching job : Input path does not exist: s3n://xxxbucket1/test_sample.txt
file : ///는 치료를합니다. 또한 s3n : //을 s3 : //으로 변경하면 s3 파일이 작동하는 것으로 나타났습니다. – Trindaz
아, 아마도 s3n 대신 s3n으로 업로드했을까요? 나는이 두 가지가 호환 가능하다고 생각하지 않는다. http://wiki.apache.org/hadoop/AmazonS3 – ajduff574