saveAsTextFile到spark上的s3不起作用,只是挂起

Amn*_*non 5 amazon-s3 apache-spark

我正在从s3加载一个csv文本文件到spark,过滤和映射记录并将结果写入s3.

我尝试了几种输入大小:100k行,1M行和3.5M行.前两个成功完成,而后者(3.5M行)挂起一些奇怪的状态,其中作业阶段监视Web应用程序(端口4040中的那个)停止,命令行控制台卡住,甚至不响应ctrl- C.Master的网络监控应用程序仍然响应并显示状态为FINISHED.

在s3中,我看到一个空目录,其中包含一个零大小的条目_temporary_$folder$.s3 url使用s3n://协议给出.

我没有在Web控制台的日志中看到任何错误.我也尝试了几个簇大小(1个主人+ 1个工人,1个主人+ 5个工人)并且达到了相同的状态.

有人遇到过这样的问题吗?知道发生了什么事吗?

lig*_*lls 2

您可能会遇到 5GB 对象限制s3n FileSystem。您可以通过使用s3 FileSystem(not s3n) 或对输出进行分区来解决此问题。


以下是AmazonS3 - Hadoop Wiki 的说法:

S3 本机文件系统(URI 方案:s3n) 用于在 S3 上读写常规文件的本机文件系统。该文件系统的优点是您可以访问 S3 上使用其他工具编写的文件。[...] 缺点是 S3 对文件大小施加 5GB 的限制。

...

S3 块文件系统(URI 方案:s3) 由 S3 支持的基于块的文件系统。文件以块的形式存储,就像在 HDFS 中一样。这允许有效地实施重命名。该文件系统要求您为该文件系统指定一个存储桶 [...] 该文件系统存储的文件可以大于 5GB,但它们不能与其他 S3 工具互操作。

...

AmazonS3(由 SteveLoughran 最后编辑于 2014-07-01 13:27:49)