我是靠谱客的博主 拼搏花卷,最近开发中收集的这篇文章主要介绍HBASE与HIVE转换,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

hive-to-hbase

在hive中建表
create table if not exists employee (
uid int,
uname string,
age int,
sex string,
province string
)
stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
with serdeproperties(
"hbase.columns.mapping"=":key,base_info:name,base_info:age,base_info:sex,address:provice"
)
tblproperties(
"hbase.table.name"="mydb:employee"
);

导入数据

注意,要使用动态导入数据,不能使用load。
如果想要导入大数据集,可以借助中间表进行动态导入
insert into .....
select ...... from ...
当然:也可以在hbase中直接put数据

hbase-to-hive

drop table mydb2.t1;
create external table if not exists mydb2.t1(
uid string,
uage int,
uname string,
usex string,
province string
)
stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
with serdeproperties(
"hbase.columns.mapping"=":key,f1:age,f1:name,f1:gender,f2:province"
)
tblproperties(
"hbase.table.name"="ns1:t1"
);
查询
select * from mydb2.t1;

主要事项

1. 映射hbase的列时,要么就写:key,要么不写,默认使用:key
2. hbase中表存在的时候,在hive中创建表时应该使用external关键字。
3. 如果删除了hbase中对应的表数据,那么hive中就不能查询出来数据。
4. hbase中的列和hive中的列个数和数据类型应该尽量相同,hive表和hbase表的字段不是按照名字匹配,而是按照顺序来匹配的。
5. hive、hbase和mysql等可以使用第三方工具来进行整合。

最后

以上就是拼搏花卷为你收集整理的HBASE与HIVE转换的全部内容,希望文章能够帮你解决HBASE与HIVE转换所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部