HBase表中批量加载的详细步骤

时间:2016-07-08 00:33:44

标签: hadoop hbase

我是HBase的新手。有人能为我提供一个关于如何在HBase表中完成批量加载的详细示例。

比如说我有一个包含10列和100K行的客户文件。我想在HBase表中加载该文件。

我创建了一个由HIVE管理的HBase表,并尝试使用LOAD命令加载它,但它失败了。

看起来我只需要从HBase插入表格。

hive (Koushik)> CREATE TABLE hive_hbase_emp_sample(eid int, ename string, esal double) 
              > STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
              > WITH SERDEPROPERTIES 
              > ("hbase.columns.mapping" = ":key,cfstr:enm,cfsal:esl")
              > TBLPROPERTIES ("hbase.table.name" = "hive_hbase_emp_sample");
OK
Time taken: 6.404 seconds

hive (Koushik)> load data local inpath '/home/hduser/sample_emp_file' into table hive_hbase_emp_sample;
FAILED: SemanticException [Error 10101]: A non-native table cannot be used as target for LOAD

1 个答案:

答案 0 :(得分:0)

您无法直接使用load来定位HbaseStorage Handler非本机表,而是在登台表中加载数据,然后使用select * from staging table插入Hbase表