Hbase映射为Hive外表

振鹭2年前技术文章1062
Hbase对应Hive外表
(背景:在做数据ETL中,可能原始数据在列式存储Hbase中,这个时候,如果我们想清洗数据,可以考虑把Hbase表映射为Hive的外表,然后使用Hive的HQL来清除处理数据)
1. Hbase中创建表
create 'hbase_data',{NAME => 'cf', VERSIONS => 1}
2. Hbase中增加数据
put 'hbase_data', '10001', 'cf:id', '101'
put 'hbase_data', '10001', 'cf:title', 'nanjing'
put 'hbase_data', '10001', 'cf:name', 'yuhuatai'

3. 查询Hbase中数据是否插入成功

image.png

4. 创建Hbase的Hive外表
CREATE EXTERNAL TABLE IF NOT EXISTS hbase_data(
key string COMMENT 'hbase_rowkey',
id string comment "ID",
title string comment "title",
name string,
ts timestamp COMMENT 'hbase_timestamp') comment '' STORED BY
'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES (
'hbase.columns.mapping' = ':key,cf:id, cf:title, cf:name,:timestamp' )
TBLPROPERTIES ('hbase.table.name' = 'hbase_data')
5. 查询Hive表中数据格式

image.png


相关文章

python-序列化和反序列化

1、为什么要序列化内存中的字典、列表、集合以及各种对象,如何保存到一个文件中?如果是自己定义的类的实例,如何保存到一个文件中?如何从文件中读取数据,并让它们在内存中再次恢复成自己对应的类的实例?要设计...

Trino部署

安装前准备1.1. 创建用户和用户组groupadd trinouseradd -g hadoop trino1.2. 配置环境变量1.2.1. 配置系统环境变量/etc/profileexport...

kafka单条消息过大导致线上OOM

1 线上问题kafka生产者罢工,停止生产,生产者内存急剧升高,导致程序几次重启。查看日志,发现Produce程序爆异常kafka.common.MessageSizeTooLargeExceptio...

Doris集群部署

一、部署Doris集群1.部署doris服务(1)下载Doris            登陆地址https://doris.apache.org/download            选择需要下载的...

Scylladb部署

Scylladb部署一、部署在centos 7.9上部署scylla-4.2下面步骤都需要root权限或者sudo权限1、添加scylladb 回购文件和yum源yum install epel-re...

企业级大数据安全架构(十)

企业级大数据安全架构(十)

一、DBeaver连接Kerberos认证下的hive1.配置本地hosts因为Kerberos认证过程及集群服务中,很多是以主机名的形式进行访问的,所以工作机要设置hosts. 域名映射,我们通过部...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。