使用模式/使用XSD加载Parquet数据以验证XML

时间:2017-05-21 07:05:48

标签: xml scala apache-spark xsd parquet

我有一些XML文件,我需要存储在XSD文件中给出的结构中,在parquet / avro中。 XML / XSD文件包含重复的标记标题(可能会出现两次)因此我选择使用Parquet,因为Avro不支持此功能。

我想要检查它是否有效(针对XSD文件)以及XML中不存在的xsd元素,我只想将该值存储为NULL。

我看到它的方式我有两个选择:

1)使用scala检查xml对xsd,如果有效则(以某种方式)用NULL填充任何差异并存储为镶木地板。

2)检查xml有效性,然后使用XSD文件的镶木地板版本的模式来插入xml文件的paquet数据。

我不完全确定怎么做,所以我会感谢指针,以确保我不会浪费时间朝着错误的方向前进。

1 个答案:

答案 0 :(得分:1)

我没有找到我想要的解决方案,但使用unix非常容易进行验证。

xmllint -schema xsdfile xmlfile --noout