【问题标题】:Amazon EMR: "no output" found in S3Amazon EMR:在 S3 中发现“无输出”
【发布时间】:2013-02-09 16:12:17
【问题描述】:

当我在 Amazon EMR 中运行作业时,我在 S3 中没有得到任何输出。

我指定了参数:

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

当我检查作业日志时,我看到作业已成功完成。但是我的bucket exdsyslab的输出文件夹中没有输出。

我还尝试了另一件事。

我链接了两个作业:在创建作业流时指定了参数:

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

第二个作业的输入是第一个作业的输出。

在程序运行时,我在第二个作业中遇到了以下异常:

The output folder, "result", already exists.

这是因为目录是由链中的第一个作业创建的。如何为 mapreduce 链中的第二个作业指定输入和输出?

为什么在参数中指定的 s3 存储桶中有输出?

【问题讨论】:

    标签: hadoop amazon-web-services amazon-s3 mapreduce elastic-map-reduce


    【解决方案1】:

    为了正确的输出,使用这个:

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

    注意输出目录由“-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
    

    【讨论】:

    • 感谢您的回答!
    猜你喜欢
    • 1970-01-01
    • 2016-10-15
    • 1970-01-01
    • 2017-01-11
    • 1970-01-01
    • 2016-12-09
    • 1970-01-01
    • 1970-01-01
    • 2021-07-31
    相关资源
    最近更新 更多