hive(三)–从hbase映射数据到hive中
一、简介
本文将介绍从nosql数据库hbase映射数据到hive中。
二、hbase到hive
hbase数据映射到hive,此时不是真正导数据到hive中,只是映射,hbase数据改变时,hive中查询数据也相应改变。
2.1 注意点
- 创建映射时,注意观察hive日志(路径/tmp/用户名/hive.log,只有日志才能正确发现错误);
- 尽量保持hive/lib下的hbase jar包与hbase/lib中的一致(hbase-server-2.1.0.jar、hbase-client-2.1.0.jar、hbase-common-2.1.0.jar);
- 数据映射依赖于zookeeper,注意hbase和hive中的zookeeper连接参数一致(相同的host和端口);
2.2 示例
create external table school.hbase_stu_2(id string, stuName string, stuAge string)
stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
with serdeproperties('hbase.columns.mapping'=':key, info:name, info:age')
tblproperties('hbase.table.name'='stu');
参数说明:
- external表示创建外部表,只是映射,并非真正导数据;
- serdeproperties表示字段映射,:key表示hbase中的主键;
- tblproperties 表示表映射;