2
나는 탄성 맵리 듀스를 실행하고 다음과 같은 오류와 함께 타격을 받고 유지의 아마존의 예제를 실행 해요

: 여기아마존 엘라스틱 맵리 듀스 : 출력 디렉토리

Error launching job , Output path already exists.

은 내가 사용하고있는 작업을 실행하는 명령은 다음과 같습니다

C:\ruby\elastic-mapreduce-cli>ruby elastic-mapreduce --create --stream \ 
    --mapper s3://elasticmapreduce/samples/wordcount/wordSplitter.py \ 
    --input s3://elasticmapreduce/samples/wordcount/input \ 
    --output [A path to a bucket you own on Amazon S3, such as, s3n://myawsbucket] \ 
    --reducer aggregate 

Here is where the example comes from here

나는 출력 디렉토리 Amazon'd 지침에 따라거야. 버킷 이름은 s3n://mp.maptester321mark/입니다.

{ 
"access_id": "1234123412", 
"private_key": "1234123412", 
"keypair": "markkeypair", 
"key-pair-file": "C:/Ruby/elastic-mapreduce-cli/markkeypair", 
"log_uri": "s3n://mp-mapreduce/", 
"region": "us-west-2" 
} 
+0

왜 오 ​​왜 S3 새로운 디렉토리 매번 작성하는 우리를 강제로해야합니까? –

답변

3

하둡 작업이 이미 존재하는 디렉토리는 소지품하지 않을 것이다 : 나는 여기 this url

credentials.json 정보가에 문제가 모든 제안을 검토 한 결과. 다음을 실행하기 만하면 :

hadoop fs -rmr <output_dir> 

AWS 콘솔을 사용하여 디렉토리를 제거하기 전에 실행해야합니다.

+0

작업을 시작하기 전에 디렉토리를 제거했지만 여전히이 오류가 발생합니다. –

+0

실제로 제거되었는지 확인할 수 있었습니까? –

+0

다른 출력 디렉토리를 시도하십시오. –

4

사용 :

--output s3n://mp.maptester321mark/output 

대신 :

--output s3n://mp.maptester321mark/ 

내 생각 EMR을 실행하기 전에 출력 버킷을하고 그게 당신이 --output s3n://mp.maptester321mark/하고 있음을 지정하면 이미/당신의 출력 디렉토리를해야 의미 이 오류가 발생한 이유가 될 수 있습니다.

0

---> 폴더 (버킷)가 이미있는 경우 제거하십시오. 당신이 그것을 삭제하고 당신은 여전히 ​​위의 오류가 출력이 S3N 같은 있는지 확인 받으면

---> : // some_bucket_name/your_output_bucket이 S3N처럼이있는 경우 : // your_output_bucket/ 그에게 문제 EMR과 함께 !! 나는 그것이 경로 (some_bucket_name)에 양동이를 먼저 생성 한 다음 (your_output_bucket)을 생성하려고 시도한다.

감사 하리