方式一:
hbase中建表,然后hive中建外部表,这样当hive中写入数据后,hbase中的表也会同时更新
创建hbase表
create 'classes','user' --表名是class,有一个列族user
查看表结构
describe 'classes'
加入两行数据
put 'classes','001','user:name','jack'
put 'classes','001','user:age','20'
查看表中的而数据
scan 'classes'
创建hive外表,之后就可以查到数据了
create external table classes(id int, name string, age int)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,user:name,user:age")
TBLPROPERTIES("hbase.table.name" = "classes");
方式二:
mapreduce读取Hive数据,然后写入hbase(api或者bulkload方式)写入hbase,适合大批量数据
a、直接调用hbase api,使用table,put方式写入
b、通过mr生成hfile.然后bulkload到hbase-----数据量很大的时候推荐使用