如何在spark中获取RDD文件

时间:2016-10-27 05:13:38

标签: json scala apache-spark rdd

我正在玩带有json文件的spark RDD,我正在做类似下面的事情

val uisJson5 = sqlContext.read.json(
     sc.textFile("s3n://localtion/*")
        .filter(line =>
         line.contains("\"xyz\":\"A\"")
         && line.contains("\"id\":\"adasdfasdfasd\"")
     ))
uisJson5.show()

我想知道源json文件以及结果的来源。我有什么方法可以做到这一点吗?

编辑:

我能够使用下面的代码

来做到这一点
val uisJson1 = sc.textFile("s3n://localtion/*”) 
.filter(line => line.contains("\"xyz\":\"A\"")
&& line.contains("\"id\":\"adasdfasdfasd\""))

uisJson1.collect().foreach(println)

1 个答案:

答案 0 :(得分:2)

您正在寻找wholeTextFiles以及flatMapValues

wholeTextFiles允许您读取包含多个小文本文件的目录,并将每个文件作为(文件名,内容)对返回。这与textFile形成对比,textFile将在每个文件中每行返回一条记录。