如何处理配置单元中的XML文件 [英] How to handle XML file in hive

查看:104
本文介绍了如何处理配置单元中的XML文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在配置单元中处理这个XML文件,我只希望输出USERNAME和PASSWORD

><?XML version ='1.0'?>
< DATA>
< USER USERNAME =ABCFIRSTNAME =RAJLASTNAME =KUMARPASSWORD =123/>
< USER USERNAME =DEFFIRSTNAME =VENKATLASTNAME =BALAJIPASSWORD =123/>
< / DATA>



  CREATE TABLE user_xml(USERNAME字符串,PASSWORD字符串)
ROW FORMAT SERDE'com.ibm.spss.hive.serde2.xml.XmlSerDe'
WITH SERDEPROPERTIES(
column.xpath.USERNAME=/ DATA / USER / USERNAME / text(),
column.xpath.PASSWORD=/ DATA / USER / PASSWORD / text()
)存储为
INPUTFORMAT'com.ibm。 spss.hive.serde2.xml.XmlInputFormat'
OUTPUTFORMAT'org.apache.hadoop.hive.ql.io.IgnoreKeyTextOutputFormat'
TBLPROPERTIES(xmlinput.start=< DATA,xmlinput .END = < / DATA>中);


解决方案

最后得到输出请参考 https://community.hortonworks.com/articles/972/hive-and-xml- pasring.html


How to handle this XML file in hive, I want only USERNAME and PASSWORD in output

<?XML version=’1.0′ ?>
<DATA>
    <USER USERNAME="ABC" FIRSTNAME="RAJ" LASTNAME="KUMAR" PASSWORD="123" />
    <USER USERNAME="DEF" FIRSTNAME="VENKAT" LASTNAME="BALAJI" PASSWORD="123" />
</DATA>

CREATE TABLE user_xml(USERNAME string,PASSWORD string)
    ROW FORMAT SERDE 'com.ibm.spss.hive.serde2.xml.XmlSerDe'
    WITH SERDEPROPERTIES ( 
        "column.xpath.USERNAME"="/DATA/USER/USERNAME/text()",
        "column.xpath.PASSWORD"="/DATA/USER/PASSWORD/text()"
    ) STORED AS
        INPUTFORMAT 'com.ibm.spss.hive.serde2.xml.XmlInputFormat'
        OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.IgnoreKeyTextOutputFormat'
        TBLPROPERTIES ("xmlinput.start"="<DATA","xmlinput.end"="</DATA>");

解决方案

Finally got output please refer https://community.hortonworks.com/articles/972/hive-and-xml-pasring.html

这篇关于如何处理配置单元中的XML文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆