使用HDFS或S3运行Spark应用程序

时间:2015-11-07 21:57:14

标签: amazon-s3 apache-spark hdfs

在我的spark应用程序中,我只想访问一个大文件,并将计算分布在EC2上的许多节点上。

最初,我的文件存储在S3上。

从S3加载带有sc.textFile()功能的文件非常方便。

但是,我可以付出一些努力将数据加载到HDFS,然后从那里读取数据。

我的问题是,HDFS的性能会更好吗?

我的代码涉及spark partitions(mapPartitions transforamtion),所以我的初始文件系统是什么才真正重要?

1 个答案:

答案 0 :(得分:2)

显然,当使用 S3 时,与本地磁盘上的 HDFS 相比,延迟更高,数据吞吐量更低。

但这取决于您对数据的处理方式。似乎大多数程序受CPU功率的限制比网络吞吐量更多。因此,您可以使用从S3获得的 1Gbps 吞吐量。

无论如何,你可以查看来自 Aaron Davidson的关于Spark Summit 2015的最新幻灯片。这个主题在那里讨论。

http://www.slideshare.net/databricks/spark-summit-eu-2015-lessons-from-300-production-users/16