2017-09-21 17 views
0

hivexmlserde-1.0.5.3を使用して、XMLデータをHiveテーブルに解析しています。Hive XML Serde - 改行を含む文字列の解析

<item> 
    <itemid>1</itemid> 
    <contents subscript = "n"> 
     <name>Item1</name> 
     <details>Line 1 with a line break. 
     Line 2 here, which is not being read.</details> 
    </contents> 
</item> 

は、これは私が次を使用してそれを解析しようとしている最初の行だけを読んでいる:私は、私はそれらの中に改行、このようなものを持っているタグを解析しようとしている問題に直面しています:

DROP TABLE IF EXISTS db.tbl; 
    CREATE EXTERNAL TABLE db.tbl (
     ID STRING COMMENT '', 
     CONTENTS ARRAY<STRUCT< 
     subscript:STRING, 
     contents:struct<Name:STRING,Details:STRING>>> COMMENT '') COMMENT '' 
     ROW FORMAT SERDE 'com.ibm.spss.hive.serde2.xml.XmlSerDe' 
     WITH SERDEPROPERTIES (
     "column.xpath.OB_CASE_ID"="/item/itemID/text()", 
     "column.xpath.HISTORICAL_INTERACTION"= "/item/contents") 
     STORED AS 
     INPUTFORMAT 'com.ibm.spss.hive.serde2.xml.XmlInputFormat' 
     OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' 
     LOCATION '${stagingFolderPath}' 
     TBLPROPERTIES ("xmlinput.start"="<item>","xmlinput.end"="</item>"); 

私は間違っているか、これを行うには良い方法がありますか?どんな助けもありがとう。

TIA

答えて

0

私は彼らの中に改行してデータを解析する方法を見つけることができませんでした。しかし、私はデータから改行を取り除くことができます(または、あなた自身のマーカーで置き換えることもできます)。そのようにして、予想どおりにデータを解析することができました。お役に立てれば。乾杯。

関連する問題