首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hbase与hive整合

Hbase与hive整合

作者头像
用户3003813
发布2018-09-06 13:14:24
8020
发布2018-09-06 13:14:24
举报
文章被收录于专栏:个人分享个人分享个人分享

//hive与hbase整合 create table lectrure.hbase_lecture10(sname string, score int) stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' whth serdeproperties("hbase.columns.mapping" = ':key,cf1:score') tblproperties("hbase.table.name" = "hbase_lecture10");

with serdeproperties : 指定属性,这里指定Hbase表和hive的字段映射关系,注意这里的字段个数和顺序必须和前面Hive表的属性保持一致。第一个字段:key映射到Hive中的sname字段,后面字段依此类推。

//加载数据,可以通过Hive支持的insert overwrite方式将一个表的数据导入HBase. (耗时异常长) insert overwrite table lecture.hbase_lectrure10 Select sname, score From lecture.lectrue10;

//hbase创建表和插入数据 create 'hbase_test',{NAME => 'cf1'}

put 'hbase_test','a','cf1:v1','1'

//创建hive外部表 create external table lecture.hbase_test(key string, value int) stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' with serdeproperties("hbase.columns.mapping"=":key,cf1:v1") tblproperties("hbase.table.name"="hbase_test");

//字段映射属性

Hbase.columns.mapping 字段映射属性。到目前为止,一个Hive表可以包含N个字段,该属性也需要包含N个声明 hbase.table.default.storage.type 可以是任意的string(默认)或二进制类型。该选项只能在Hive 0.9.*有效

//多列和多列族映射

create table hbase_test2(key string, value1 string, value2 string, value3 string) stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' with serdeproperties ("hbase.columns.mapping "=":key,cf1:coll,cf1:col2,cf2:col3") TBLPROPERTIES("hbase.table.name" = "hbase_test2")

//插入数据

put 'hbase_test2','rk1','cf1:col1','100' put 'hbase_test2','rk1','cf1:col2','101' put 'hbase_test2','rk1','cf1:col3','102' put 'hbase_test2','rk2','cf2:col1','100' put 'hbase_test2','rk2','cf2:col2','101' put 'hbase_test2','rk2','cf2.col3','102'

//扫描表查看数据 scan 'hbase_test2'

2、Hive Map (1)通过Hive建表 create table hbase_test3(row_key string,value map<string,int>) stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES("hbase.columns.mapping" = ":key,cf:");

(2)使用Hive语句insert overwrite insert overwrite table hbase_test3 select sname,map(sname,score) from lecture.lecture 10;

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015-10-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
TDSQL MySQL 版
TDSQL MySQL 版(TDSQL for MySQL)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性,同时提供智能 DBA、自动化运营、监控告警等配套设施,为客户提供完整的分布式数据库解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档