在apache中解析用户定义属性的xml

vcudknz3  于 2021-06-24  发布在  Pig
关注(0)|答案(0)|浏览(169)

我需要解析xml并根据用户为pig脚本指定的参数生成列。
例如,考虑以下xml

<school>
    <students>
        <student>
            <name>test</test>
            <rno>1</rno>
            <rank>3</rank>
        </student>
        <student>
            <name>xyz</test>
            <rno>3</rno>
            <rank>2</rank>
        </student>
    <students>
</school>

我的要求是解析xml并根据用户指定的字段名生成属性。例如,如果用户将字段名指定为'name | rno',解析器应该解析xml并返回一个包含name和rno的元组。
我使用xmloader将xml解析到student,然后编写了一个javaudf来解析student xml。我试图在javaudf类中定义一个参数化的构造函数,在这个类中我传递要解析的列/属性。然后我重写了outputschema(schema input)方法,在该方法中,我获取列名并添加新的字段schema。
然而,这并不是预期的工作方式。有什么办法可以完成这件事吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题