我正在将s3中的csv文本文件加载到spark中,过滤并映射记录并将结果写入s3。
我尝试了几种输入尺寸:100k行,1M行和1; 3.5M行。
前两个成功完成,而后者(3.5M行)挂起一些奇怪的状态,其中作业阶段监视Web应用程序(端口4040中的那个)停止,命令行控制台卡住,甚至不响应ctrl- C。 Master的网络监控应用程序仍然响应并将状态显示为FINISHED
。
在s3中,我看到一个空目录,其中包含一个零大小的条目_temporary_$folder$
。使用s3n://
协议提供s3网址。
我在Web控制台的日志中没有看到任何错误。 我也尝试了几个簇大小(1个主人+ 1个工人,1个主人+ 5个工人)并且达到了相同的状态。
有没有人遇到过这样的问题? 知道发生了什么吗?
答案 0 :(得分:2)
您可能遇到s3n FileSystem
的5GB对象限制。您可以使用s3 FileSystem
(不是s3n
)或通过对输出进行分区来解决此问题。
这是AmazonS3 - Hadoop Wiki所说的内容:
S3 Native FileSystem(URI scheme:s3n) 用于在S3上读取和写入常规文件的本机文件系统。此文件系统的优点是您可以访问使用其他工具编写的S3上的文件。 [...]缺点是S3强加的文件大小限制为5GB。
...
S3 Block FileSystem(URI scheme:s3) 由S3支持的基于块的文件系统。文件存储为块,就像它们在HDFS中一样。这允许有效地实现重命名。此文件系统要求您为文件系统专用存储桶[...]此文件系统存储的文件可能大于5GB,但它们不能与其他S3工具互操作。
...
AmazonS3(由SteveLoughran于2014-07-01 13:27:49编辑)