解析Apache Spark中的XML数据
我需要知道如何解析Spark中的XML文件。我正在接收来自kafka的流式数据,然后需要解析流式数据。解析Apache Spark中的XML数据
这里是我的星火代码接收数据:
directKafkaStream.foreachRDD(rdd ->{
rdd.foreach(s ->{
System.out.println("&&&&&&&&&&&&&&&&&" +s._2);
});
和结果:
<root>
<student>
<name>john</name>
<marks>90</marks>
</student>
</root>
如何通过这些XML元素?
谢谢你们..问题就迎刃而解了。 这里是解决方案。
String xml = "<name>xyz</name>";
DOMParser parser = new DOMParser();
try {
parser.parse(new InputSource(new java.io.StringReader(xml)));
Document doc = parser.getDocument();
String message = doc.getDocumentElement().getTextContent();
System.out.println(message);
} catch (Exception e) {
// handle SAXException
}
这是否适用于Spark中的大数据? –
@MasudRahman,请看下面提到的链接https://*.com/questions/33078221/xml-processing-in-spark/40653300#40653300 – user6325753
在处理流式数据时,使用databricks的spark-xml lib进行xml数据处理会很有帮助。
感谢您的回复。我的火花应用程序正在逐行读取数据。所以我需要逐行解析,而不使用开始元素和/或结束元素。 – user6325753
我花了几个小时与此,然后我发现它不读取自闭行。 –
您是否搜索过此前的问题?如:http://*.com/questions/33078221/xml-processing-in-spark –
@Binary Nerd,谢谢你的回应。我的火花应用程序正在逐行读取数据。所以我需要逐行解析,而不使用开始元素和/或结束元素。 – user6325753