amazon-s3 - 当我从 EMR 5.7 升级到 EMR 5.8 时,s3-dist-cp 失败并出现 OutOfMemoryException

标签 amazon-s3 emr amazon-emr

作为一项更大工作的一部分,我一直在使用 s3-dist-cp 将压缩的 JSON 文件从 S3 移动到 HDFS。我从 EMR 5.4 开始并升级到大多数 5.x,我目前运行一个 32 台机器的集群和 EMR 5.7 没有问题。

当我尝试升级到 EMR 5.8 时,s3-dist-cp 作业失败,如下所示。 5.7 和 5.8 之间有什么变化会导致这种情况吗?

#
# java.lang.OutOfMemoryError: Java heap space
# -XX:OnOutOfMemoryError="kill -9 %p
kill -9 %p"
#   Executing /bin/sh -c "kill -9 11042
kill -9 11042"...
/usr/share/aws/emr/s3-dist-cp/bin/s3-dist-cp: line 55: 11042 Killed                  hadoop jar "$S3_DIST_CP_JAR" -libjars "$LIBJARS" "$@"
Traceback (most recent call last):
  ...

最佳答案

可能为时已晚,但是是的,s3-dist-cp 上有一个错误,导致 emr-5.8.0 上的 s3-dist-cp 作业失败,否则可以在 emr-5.7.0 上运行。此错误可能会导致 S3DistCp 客户端出现 OOM,因为在实际提交 MapRed 作业之前列出 S3 对象会消耗更多内存。它已在 5.9.0 中修复。

关于amazon-s3 - 当我从 EMR 5.7 升级到 EMR 5.8 时,s3-dist-cp 失败并出现 OutOfMemoryException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45806184/

相关文章:

apache-spark - 如何配置 alb 在故障转移后指向新的主实例 (EMR)

amazon-web-services - 如何找到 S3 存储桶创建的用户?

amazon-web-services - dask S3读取缓存磁盘/RAM上的数据吗?

hadoop - 在配置单元中分区后处理子文件夹

amazon-web-services - 通过 AWS [EMR] 提交 Spark 应用程序

emr - 如何将mapreduce.reduce.memory.mb属性添加到Cloud Formation模板中的EMR集群?

java - 如何从 aws s3bucket android 删除文件?

python - 使用 boto 获取 S3 对象的最后修改日期时间

apache-spark - 在 yarn 模式下 Spark 以 "Exit status: -100. Diagnostics: Container released on a *lost* node"结束

amazon-dynamodb - 如何在没有时间点恢复的情况下导出DynamoDB表数据?