【发布时间】:2016-01-09 19:48:43
【问题描述】:
我需要从 xml 中提取数据并将提取的数据与 CSV 文件连接(示例列:2)。
我试过下面的代码:
val input = sc.wholeTextFiles("/user/hadoop/selva/Test.xml")
val xmlVal = input.values
val mapVal = xmlVal.map(x => scala.xml.XML.loadString(x))
val res = mapVal.map(x => (x \\ "ALERT" \\"property" \\"name")text)
res.collect()
Output : res3: Array[String] = Array(stackoverflowstackoverflowquery)
预期输出:我需要上面的值以键值对的形式加入数据。(Spark 内连接)
键:stackoverflow 值:1
键:stackoverflow 值:1
键:查询值:1
所以,我可以使用 Spark join 来连接两个数据集。
【问题讨论】:
-
我试过下面的代码 val res = mapVal.map(x => (x \\ "ALERT" \\"property" \\"name") val res1 = res.map( x = > for { e : 20 我如何在这里创建键值对。
标签: scala apache-spark