0

當我在Amazon EMR中運行作業時,S3沒有獲得任何輸出。亞馬遜EMR:在S3中找到「無輸出」

我指定的參數:

-inputfile s3n://exdsyslab/data/file.txt -outputdir s3n://exdsyslab/output 

當我檢查作業日誌,我看到作業已成功完成。但是我的bucket exdsyslab的輸出文件夾中沒有輸出。

我還試了一件事。

我鏈式兩項工作:指定ARGS在創建工作流程:

-inputfile s3n://exdsyslab/data/file.txt -outputdir s3n://exdsyslab/result -outputdir1 s3n://exdsyslab/result1 

第二個作業的輸入在第一作業的輸出。

我遇到以下異常的第二件事作爲程序運行:

The output folder, "result", already exists. 

發生這種情況,因爲該目錄是由鏈中的第一個作業創建。如何在mapreduce鏈中爲第二個作業指定輸入和輸出?

爲什麼在參數中指定的s3桶中有輸出?

回答

0

對於正確的輸出,使用此:

-inputfile s3n://exdsyslab/data/file.txt -output s3n://exdsyslab/output 

請注意,輸出目錄由「 - 輸出」指定。

對於鏈接作業:你不能按照你指定的方式來完成,你必須創建多個步驟到現有作業才能執行它。這對方的回答可以幫助你:https://stackoverflow.com/a/11109592/1203129

針對您的特殊情況下,輸入/輸出目錄必須是這樣的:

第1步:

-inputfile s3n://exdsyslab/data/file.txt -output s3n://exdsyslab/result 

第2步:

-input s3n://exdsyslab/result -output s3n://exdsyslab/result1 
+0

謝謝你的回答! – 2013-02-24 14:49:11