【问题标题】:Break tuple in RDD to two tuples将 RDD 中的元组分解为两个元组
【发布时间】:2016-04-11 12:36:29
【问题描述】:

我有一个RDD[(String, (Iterable[Int], Iterable[Coordinate]))] 我想做的是将Iterable[Int] 分解为元组,每个元组都会像(String,Int,Iterable[Coordinate])

举个例子,我想改造一下:

('a',<1,2,3>,<(45.34,32.33),(45.36,32.34)>)
('b',<1>,<(46.64,32.66),(46.67,32.71)>)

('a',1,<(45.34,32.33),(45.36,32.34)>)
('a',2,<(45.34,32.33),(45.36,32.34)>)
('a',3,<(45.34,32.33),(45.36,32.34)>)
('b',1,<(46.64,32.66),(46.67,32.71)>)

Scala 是怎么做到的?

【问题讨论】:

    标签: scala apache-spark rdd iterable


    【解决方案1】:

    尝试使用 flatMap:

    rdd.flatMap {case (v, i1, i2) => i1.map(i=>(v, i, i2)}
    

    【讨论】:

      猜你喜欢
      • 2022-01-10
      • 1970-01-01
      • 2016-01-08
      • 2013-12-10
      • 2011-11-25
      • 2017-11-02
      • 1970-01-01
      • 1970-01-01
      • 2015-09-09
      相关资源
      最近更新 更多