2014-01-09 27 views
1

我想在Hadoop中處理格式化的XML,這非常複雜且龐大,並且還包含循環。在Hadoop中處理複雜的XML以提取數據

我嘗試以下選項:

  1. 加載到個XML配置單元將作爲一列,並使用XPath查詢。
  2. 使用SerDe創建Hive表。
  3. 使用XMLLoader使用PIG加載XML。

選項1是可能的,但在XML中獲取數據非常深的情況下變得很困難。

對於選項2和3 Hive SerDe和Pig Loader要求Schema明確定義,因此無法完成。

有沒有其他方法?

回答

0

您可以使用pig和Pig UDF從XML文件中提取數據。爲了提取數據,您可以使用正則表達式或Xpath。您可以使用piggybank進行多項操作。