Мне нужно извлечь данные из xml и объединить извлеченные данные с CSV-файлом (пример столбца: 2).Spark XML с использованием xpath для создания пары значений ключа
Я попытался ниже код:
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)
Ожидаемый результат: мне нужно выше значение в виде пары ключей значение, чтобы присоединиться к данным (Спарк внутреннее соединение)
Key : stackoverflow value : 1
Key : stackoverflow value : 1
Key : query value : 1
. Итак, я могу использовать Spark join для объединения двух наборов данных.
Я попытался код ниже вал Рез = mapVal.map (х => (х \\ "ALERT" \\ "свойство" \\ "name") val res1 = res.map (x => для {e <- x.flatten} yield e.text) res1: org.apache.spark. rdd.RDD [scala.collection.immutable.Seq [String]] = MappedRDD [12] на карте в: 20 Как я могу создать значение ключа pa здесь. –