【发布时间】:2016-03-15 22:04:20
【问题描述】:
我需要将一个列表合并到来自 RDD 的集合中,但我在 Scala 中无法做到这一点:
var accounts = set("name" -> "", "id" -> 0, ....)
//Split the RDD into lines and split each line by `|` to get the values
stream.foreachRDD {_.map(_._2).flatMap(_.split("|")).foreach(f => /*merge here ?*/)}
如何将值与我的帐户集相关联?
例如,假设从 CSV 加载一个 RDD(我编造了这个数据)
Donald|Trump|US|Election|March|Spring|Rubio|Ted Cruz|Ben Carson|Primary|Winner|...
Donald|Trump|US|Election|March|Spring|Rubio|Ted Cruz|Ben Carson|Primary|Winner|...
Donald|Trump|US|Election|March|Spring|Rubio|Ted Cruz|Ben Carson|Primary|Winner|...
Donald|Trump|US|Election|March|Spring|Rubio|Ted Cruz|Ben Carson|Primary|Winner|...
Donald|Trump|US|Election|March|Spring|Rubio|Ted Cruz|Ben Carson|Primary|Winner|...
Donald|Trump|US|Election|March|Spring|Rubio|Ted Cruz|Ben Carson|Primary|Winner|...
Donald|Trump|US|Election|March|Spring|Rubio|Ted Cruz|Ben Carson|Primary|Winner|...
...
RDD 最多有 300 个列/字段。
我的主要目标是将其转换为一些 json,但我需要通过将每个值加载到映射或类来将其关联到一个键。
var election = Map ("firstname" -> "Donald",
"lastname" -> "Trump",
"country" -> "US",
"event" -> "Election",
"period" -> "March"
"var1" -> "Spring",
....
"varN" -> "...")
【问题讨论】:
-
我想帮助你,但我不知道你需要什么。提供一些带有模拟数据的代码并删除 Spark 依赖项。例如。 “我有这个列表,我想将其转换为此集合。我不知道你有什么样的数据,它是如何格式化的,当你拆分时你会得到什么通过“|”和你需要用它做什么。
-
@slouc - 我只是提供了一个示例,请查看。谢谢!