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

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

最佳答案

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

=== 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);

关于xml - 如何将XML文件从HDFS加载到HBase表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54825784/

10-16 03:21