Вывод RDD в spark-shell отличается от вывода на печать (RDD) по идее - PullRequest
0 голосов
/ 08 мая 2020
    val rddData1 = sc.makeRDD(1 to 10, 2)
    println(rddData1.glom.collect)

код в идее или искровой оболочке выведет [[I@34a0ef00

но rddData1.glom.collect в искровой оболочке выведет Array [Array [Int]] = Array (Array (1, 2, 3, 4, 5), Array (6, 7, 8, 9, 10))

как я могу получить Array [Array [Int]] = Array (Array (1, 2, 3 , 4, 5), Array (6, 7, 8, 9, 10)) по идее

Ответы [ 2 ]

0 голосов
/ 08 мая 2020
val conf = new SparkConf()
  .setMaster("local[*]")
  .setAppName("myAppName")
val sc = new SparkContext(conf)
val rddData1 = sc.makeRDD(1 to 10,2)
println(java.util.Arrays.toString( rddData1.collect()))
// output [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
// 结束任务
sc.stop()
0 голосов
/ 08 мая 2020
val conf = new SparkConf()
  .setMaster("local[*]")
  .setAppName("myAppName")
val sc = new SparkContext(conf)
val rddData1 = sc.makeRDD(1 to 10,2)
val rddData2 = sc.makeRDD(20 to 25,2)
println(rddData1.glom().collect())
println(java.util.Arrays.deepToString( rddData1.glom().collect().map(_.asInstanceOf[Object])))
// output [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]
// 结束任务
sc.stop()
...