scala - Spark scala RDD遍历

标签 scala dictionary apache-spark rdd

如何使用 Spark scala 遍历以下 RDD。我想打印 Seq 中存在的每个值以及关联的键

res1: org.apache.spark.rdd.RDD[(java.lang.String, Seq[java.lang.String])] = MapPartitionsRDD[6] at groupByKey at <console>:14

我尝试了以下代码。

val ss=mapfile.map(x=>{  
val key=x._1
val value=x._2.sorted
  var i=0
 while (i < value.length) {
   (key,value(i))
    i += 1
      }
    }     
  )
ss.top(20).foreach(println)

最佳答案

我尝试按如下方式转换您的代码:

val ss = mapfile.flatMap { 
  case (key, value) => value.sorted.map((key, _))
}
ss.top(20).foreach(println)

这是你想要的吗?

关于scala - Spark scala RDD遍历,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25621902/

相关文章:

apache-spark - 具有高内存的 Spark - 每个节点使用多个执行程序?

scala - 并行执行测试

java - 如何检查 HashMap 中的值

scala - sbt 测试中的库依赖关系与正常模式下不同

arrays - 有没有办法在 React 中执行 array.join

python - 如何从当前循环访问循环中的下一个字典值?

hadoop - YARN最小用户限制百分比不起作用?

java - Spark Structured Streaming 自动将时间戳转换为本地时间

multithreading - 为什么 Scala 使用 ForkJoinPool 来支持其默认的 ExecutionContext?

scala - `Seq.contains` 在类型不匹配时失败的替代方法是什么?