我花了一段时间才弄明白这一点,并且想分享我的解决方案。改进绝对受欢迎。拼合RDD - 键值对中的嵌套列表
参考文献:Flattening a Scala Map in an RDD,Spark Flatten Seq by reversing groupby, (i.e. repeat header for each sequence in it)
我有以下形式的RDD:RDD [(中间体,列表[(字符串,列表[(字符串,整型,浮点型)])])]
密钥的:int
值:列表[(字符串,列表[(字符串,整型,浮点型)])]
随着压扁到的一个目标:RDD [(中等,字符串,字符串,整型,浮点型)]
binHostCountByDate.foreach(println)
给人的例子:
(516361, List((2013-07-15, List((s2.rf.ru,1,0.5), (s1.rf.ru,1,0.5))), (2013-08-15, List((p.secure.com,1,1.0)))))
最终RDD应给予以下
(516361,2013-07-15,s2.rf.ru,1,0.5)
(516361,2013-07-15,s1.rf.ru,1,0.5)
(516361,2013-08-15,p.secure.com,1,1.0)