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

Posted

技术标签:

【中文标题】HBase表中批量加载的详细步骤【英文标题】:detailed steps for bulk loading in HBase table 【发布时间】:2016-07-08 00:33:44 【问题描述】:

我是 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】:

您不能直接使用 load 来定位 HbaseStorage Handler 非本机表,而是将数据加载到临时表中,然后使用 select * from staging table 插入到 Hbase 表中

【讨论】:

以上是关于HBase表中批量加载的详细步骤的主要内容,如果未能解决你的问题,请参考以下文章

HBase的单节点集群详细启动步骤(分为Zookeeper自带还是外装)

HBase的单节点集群详细启动步骤(分为Zookeeper自带还是外装)

phoenix-5.1.2-hbase-2.4安装及使用详细步骤

批量打开远程桌面的工具?如何使用详细步骤

Eclipse如何导入aar(要详细步骤)

MAPREDUCE - 将数据批量加载到 HBASE 表中