将中间amazon emr任务输出写入s3

0yg35tkg  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(493)

我正在运行一个emr作业,它输出几千千兆字节的数据。每个map任务输出10gb的数据,据我所知,这些中间输出存储在运行map任务的机器的磁盘上。因此,在同一台机器处理了多个map任务之后,磁盘上存储这些map任务中间结果的空间就用完了。我知道如何在s3上存储最终结果(在运行reducer之后),但是有没有办法将中间输出(Map器的结果)也存储在s3上?
不幸的是,仅仅分配更多的机器(或具有更多内存的机器)并不是一个实际的解决方案,因为我将在几百TB的数据上运行相同的作业。
任何帮助都将不胜感激。

bihw5rsg

bihw5rsg1#

如果其他人遇到这个问题,我无法找到使用s3存储map/reduce任务的中间结果的方法。但是,我可以通过升级到emr4.x绕过这个问题,然后将ebs卷附加到集群示例,如下所述http://docs.aws.amazon.com/elasticmapreduce/latest/developerguide/emr-storage-ebs.html.

相关问题