从Spark Scala编程指南的“ Hadoop数据集”部分中:
Spark可以从Hadoop分布式文件系统(HDFS)或Hadoop支持的其他存储系统(包括您的本地文件系统,Amazon
S3,Hypertable,Hbase等)中存储的任何文件创建分布式数据集。Spark支持文本文件,SequenceFiles和任何其他Hadoop
InputFormat。
对gzip输入文件的支持应与Hadoop中的支持相同。例如,
sc.textFile("myFile.gz")应该自动解压缩并读取gzip压缩的文件(textFile()实际上是使用Hadoop的来实现的
TextInputFormat,该Hadoop
支持gzip压缩的文件)。
正如@ nick-chammas在评论中提到的:
请注意,如果调用
sc.textFile()压缩文件,Spark将为您提供一个只有1个分区的RDD(从0.9.0开始)。这是因为压缩文件不可拆分。如果您不以某种方式对RDD进行分区,则该RDD上的任何操作都将限于单个内核



