我试图将HBase(版本1.1.X)放入本地存储的一些XML文件。将XML放入HBase的正确方法
我的目标是使用MapReduce(无减少阶段)将这些XML的内容作为字符串存储在我的HBase表中,而无需将它们加载到HDFS。
这里是我的伪代码:
fetchXMLs(path);
XML2OneLineFile();
configureHBase(); // + establishing connection
Map(input, output); //input: one XML file in one line; output : is the Put() of HBase;
closeConnection();
是解决这一问题的正确这样,还是有更好的方法来做到这一点?
ps:我不想从我的XML中解析或提取数据,只是存储它们。提前
感谢
事实上,我的XML并不大,只有很多;换句话说,我将不得不在很短的时间内存储很多小尺寸的XML(大约90,000个文件,从80KB到500KB)。 – mttb12
然后Hbase应该没问题,如果你不需要扫描这些文件的内容,只需要将内容转储到列属性中即可。但是,它会减慢扫描速度(因为它必须扫描每个文件的所有内容)。您如何访问数据? – Whitefret
数据将被有针对性地访问我的Hbase表中的特定(很少全部)记录。那么不将文件加载到HDFS的想法仍然正确? – mttb12