我正在编写以下代码来获取RDD中的csv文件,我希望将多个csv文件联合起来并希望存储在单个RDD变量中。我能够将一个csv文件的数据存储在RDD中,请帮助我如何联合多个csv文件并存储在单个RDD变量中。
val Rdd = spark.sparkContext.textFile(“File1.csv").map(_.split(","))
我期待像
这样的东西 val Rdd = spark.sparkContext.textFile(“File1.csv").map(_.split(",")) union spark.sparkContext.textFile(“File2.csv").map(_.split(","))
答案 0 :(得分:0)
如果您有大量文件我会建议
val rdd = List("file1", "file2", "file3", "file4", "file5")
.map(spark.sparkContext.textFile(_))
.reduce(_ union _)
或者,如果您只知道您有0个或更多文件:
val rdd = getListOfFilenames()
.map(spark.sparkContext.textFile(_))
.foldLeft(spark.sparkContext.emptyRDD[String])(_ union _)