我试图将XML文件加载到我的配置单元表中。以下是我的配置单表查询。将XML数据加载到配置单元表中时出错
CREATE TABLE MYDATA(NAME STRING, AGE INT, SEX STRING)
ROW FORMAT SERDE 'com.ibm.spss.hive.serde2.xml.XmlSerDe'
WITH SERDEPROPERTIES(
"column.xpath.NAME"="/TAG/NAME/text()",
"column.xpath.AGE"="/TAG/AGE/int()",
"column.xpath.SEX"="/TAG/SEX/text()")
STORED AS INPUTFORMAT 'com.ibm.spss.hive.serde2.xml.XmlInputFormat'
OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.IgnoreKeyTextOutputFormat'
LOCATION '/home/sid/hivexmltab'
TBLPROPERTIES("xmlinput.start"="<TAG","xmlinput.end"="</TAG>");
我的输入文件是在下面的格式:
<TAG>
<NAME>ABCD</NAME><AGE>25</AGE><SEX>male</SEX>
<NAME>EFGH</NAME><AGE>23</AGE><SEX>female</SEX>
</TAG>
我想看到的输出象下面这样:
ABCD,25,male
EFGH,23,female
但是我得到的输出象下面这样:
<string>ABCDEFGH</string> NULL <string>malefemale</string>
我使用jar文件:hivex mlserde-1.0.5.3.jar for Xml SerDe
谁能告诉我什么是我在这里做的错误? 任何帮助表示赞赏。
其工作。真正帮助我们构建适合加载xml文件的表结构。 – Sidhartha