Closed. This question needs to be more focused。它当前不接受答案。












想要改善这个问题吗?更新问题,使其仅关注editing this post一个问题。

7年前关闭。



Improve this question




我对hadoop和hbase还是陌生的,在我发现的每个教程中都有一些概念性的问题使我不知所措。

我在win 7系统上的ubuntu VM的单个节点上运行了hadoop和hbase。我有一个要加载到单个hbase表中的csv文件。

这些列是:借贷编号,借方名称,当前分配日期,借贷金额

我知道我需要编写一个MapReduce作业以将上述csv文件加载到hbase中。以下教程描述了编写此MapReduce作业所需的Java。
http://salsahpc.indiana.edu/ScienceCloud/hbase_hands_on_1.htm

我所缺少的是:

我在哪里保存这些文件以及在哪里编译它们?我应该在运行Visual Studio 12的Win 7机器上编译它,然后将其移至ubuntu vm吗?

我读了这个问题和解答,但我想我仍然缺少基础知识:Loading CSV File into Hbase table using MapReduce

我找不到任何涵盖这些基本的hadoop/hbase物流的信息。任何帮助将不胜感激。

最佳答案

无需编写MapReduce作业即可将数据批量加载到HBase中。有几种方法可以将数据批量加载到HBase中:

1)使用HBase工具,例如importtsvcompletebulkload http://hbase.apache.org/book/arch.bulk.load.html

2)使用Pig批量加载数据。例子:

A = LOAD '/hbasetest.txt' USING PigStorage(',') as
      (strdata:chararray, intdata:long);
STORE A INTO 'hbase://mydata'
        USING org.apache.pig.backend.hadoop.hbase.HBaseStorage(
              'mycf:intdata');

3)使用HBase API进行编程。我有一个名为hbaseloader的小项目,该项目将文件加载到HBase表中(该表只有一个ColumnFamily,其中包含文件的内容)。看一下它,您只需要定义表的结构并修改代码即可读取一个csv文件并对其进行解析。

4)像您提到的示例一样,使用MapReduce作业以编程方式进行操作。

10-01 08:00
查看更多