首页 > 解决方案 > 如何将 xml 文件从 hdfs 加载到 hbase 表

问题描述

我在 HDFS 中有一个 XML 文件,我想将这些 XML 文件加载到 HBase 表中。

我提到了一些链接,他们使用 map reduce 选项将 XML 数据加载到 HBase 中,是否有任何替代选项可直接加载到 HBase 表中。

标签: xmlhadoophdfshbase

解决方案


我已经给出了使用 PIG 将 input3.xml 文件加载到 HBASE 中的示例。

=== input3.xml =====
<document>   
<url>htp://www.abc.com/</url>
<category>Sports</category>
<usercount>120</usercount>
<reviews>    
<review>good site</review>
<review>This is Avg site</review>
<review>Bad site</review>
</reviews>
</document>



A = LOAD'input3.xml' using 
   org.apache.pig.piggybank.storage.XMLLoader('document').HBaseStorage as 
   (data:chararray);

 B = foreach A GENERATE FLATTEN(REGEX_EXTRACT_ALL(data,'(?s)<document>.*?<url> 
 ([^>]*?)</url>.*?<category>([^>]*?)</category>.*?<usercount>([^>]*?)</usercount>.*? 
  <reviews>.*?<review>\\s*([^>]*?)\\s*</review>.*?</reviews>.*?</document>')) as 
  (url:chararray,catergory:chararray,usercount:int,review:chararray);

推荐阅读