Hbase映射为Hive外表

振鹭1年前技术文章665
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


相关文章

添加环境变量的两种方式

添加环境变量的两种方式

添加环境变量的几种方式:1.添加当前用户的PATH环境变量,作用范围仅限于当前用户修改用户目录下的 .bashrc修改后立即生效。vim ~/.bashrc2.添加所有用户的PATH环境变量,适用于所...

ranger审计Solr部署

安装前准备1.1. 创建用户和用户组groupadd solruseradd -g solr solr1.2. 添加环境变量vi /etc/profile export SOLR_HOME=/opt/...

Linux操作系统启动流程

Linux操作系统启动流程

无论Windows还是Linux操作系统,启动之前都会对硬件进行检测,之后硬盘引导启动操作系统,下面是与启动系统相关的几个概念。BIOS基本输入输出系统 是一组固化到计算机主板上的只读内存镜...

presto参数优化

presto参数优化

总体参数1)session级别的参数配置 query.max-run-time=600s 在终止查询之前,允许在群集上处理查询的最大时间。时间包括分析和计划的时间,也包括在队列中等待的时间,因此本...

NameSpaces状态一直为Terminating

NameSpaces状态一直为Terminating

问题描述删除ingress-nginx后发现ingress-nginx的命名空间一直为销毁中,大致查看了下发现命名空间中已经没有其他资源。该状态已经持续了十几个小时强制删除命名空间```Plain T...

RabbitMQ 集群部署

RabbitMQ 集群部署

1. 两种模式说到集群,小伙伴们可能第一个问题是,如果我有一个 RabbitMQ 集群,那么是不是我的消息集群中的每一个实例都保存一份呢?这其实就涉及到 RabbitMQ 集群的两种模式:1)普通集群...

发表评论    

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