一、读文本文件
读文本文件非常简单:只需要指定类型为textFile即可。如果使用textFile,分区目录名将被忽略。如果要根据分区读取和写入文本文件,你应该使用text,它会在读写时考虑分区
spark.read.textFile("/data/flight-data/csv/2010-summary.csv")
.selectExpr("split(value, ',') as rows").show()
二、写文本文件
- 当写文本文件时,需确保仅有一个字符串类型的列写出,否则写操作将失败
csvFile.select("DEST_COUNTRY_NAME").write.text("tmp/simple-text-file.txt")
- 如果在执行写操作同时执行某些数据分片操作,则可以写入更多列
csvFile.limit(10).select("DEST_COUNTRY_NAME", "count")
.write.partitionBy("count").text("/tmp/five-csv-files2.csv")