我是hbase的新手。有人能给我一个详细的例子说明如何在hbase表中进行批量加载吗。
比如说,我有一个客户文件,有10列和10万行。我想将文件加载到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条答案
按热度按时间dffbzjpn1#
您不能直接使用load作为hbasestorage处理程序非本机表的目标,而是在暂存表中加载数据,然后使用select*from STANGING table插入hbase表