设为首页 加入收藏

TOP

Hive与HBase映射表 实现大数据的增量操作
2018-12-12 17:19:01 】 浏览:66
Tags:Hive HBase 映射 实现 数据 增量 操作
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hr787753/article/details/79281171

先说下使用场景 :
HIve有Orc表 可以增删改 但是每一个事务执行的速度很慢 不适合于高并发的场景。
我之前mysql同步hadoop 创建了hive事务表 但是效果很差 这里另辟蹊径,将数据存入hbase 很快 建立映射 这样解决了效率问题。

概念 详解:
HIve有 内部表 和外部表 针对于HBase来说

外部表 –》HBase已经存在这张表 hive只建立映射 在hive中删除这张表 HBase不收任何影响 在Hive中创建HBase映射的外部表 前提条件 HBase存在这张表

内部表–》HBase不存在这张表 在HIve中建立HBase映射的内部表 首先HBase不能存在这张表 建立好Hive表会自动在HBase中创建同样结构的表 在Hive中删掉这张表 HBase也会自动删除

不论内部 外部 disable 表 hive查询会报错

/*##这是创建hive表的基本格式## */
/*这里是外部表     内部表格式不变 去掉external就行*/
create external table student
(id int,
name string,
age int,
sex string,
address string,
math int)

/* #设置hive的存储格式 是hbase##*/

 stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'

 /*这里按照上面hive顺序 与HBase一一对应 :key表示rowKey  info:age代表列族:列*/
 with serdeproperties ("hbase.columns.mapping"="  
 :key,
 info:name,
 info:age,
 info:sex,
 info:address,
 score:math,
 score:english")

/*这里是表的对应关系  对应我  命名空间:表名    当然你可以用默认的命名空间*/
TBLPROPERTIES ("hbase.table.name" = "school:student");
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Spark 操作Hbase 对表的操作:.. 下一篇HBase Compaction解析

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目