有时,数据可以容易的存储在hive中,但是要导入到hbase里,可以不用写MR程序来操作,可以使用hive on hbase方式来创建相应的表关联关系来将hive中的数据导入到对应的hbase的表里,如下描述:

可以参考 hive与hbase关联表

1 、首先创建一张临时hive 内表:

create table testh(rowkey int,record1 string,record2 string,record3 string,record4 string,record5 string,record6 string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ','

2、将准备的数据加载到临时表中

load data local inpath '/root/goodwill/test.data' into table testh;

3、创建hbase对应的表,这里创建的时候可以设置hbase表分区(我这里就不创建分区了)

create 'test','cf'

4、创建一张hive的外表关联 上hbase的表

create EXTERNAL table hbase_test(rowkey int,record1 string,record2 string,record3 string,record4 string,record5 string,record6 string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' with SERDEPROPERTIES ("hbase.columns.mapping"=":key,cf:record1,cf:record2,cf:record3,cf:record4,cf:record5,cf:record6") TBLPROPERTIES ("hbase.table.name"="test");

5、将hive的临时表testh中的数据加载到hbase_test表中,加载的过程就会将数据同步到hbase的表中

insert overwrite table hbase_test select * from testh;

至此,就完成了hive中的数据到hbase表数据的对应,可以查看hbase表(test)中数据与hive表hbase_test数据是对应的,这里可以删除hive之前的临时表testh

这里注意,要使用一个hive临时表做数据转换,如果直接将数据load到hive表与hbase表对应的hive表(hbase_test)中,是无法加载进数据进来的

hive on hbase 数据表关联的更多相关文章

  1. HBase 学习之一 <<HBase使用客户端API动态创建Hbase数据表并在Hbase下导出执行>>

    HBase使用客户端API动态创建Hbase数据表并在Hbase下导出执行                       ----首先感谢网络能够给我提供一个开放的学习平台,如果没有网上的技术爱好者提供 ...

  2. 创建hive整合hbase的表总结

    [Author]: kwu 创建hive整合hbase的表总结.例如以下两种方式: 1.创建hive表的同步创建hbase的表 CREATE TABLE stage.hbase_news_compan ...

  3. 怎样将关系型数据表转换至hbase数据表

    首先须要把关系型数据库的数据表的数据添加由 "纵向延伸",转变为HBase数据表的"横向延伸" 一.Hbase的存储结构 a)      HBase以表(HTa ...

  4. Phoenix映射HBase数据表

    1. 说明 安装好phoenix后对于HBase中已经存在的数据表不会自动进行映射,所以想要再phoenix中操作HBase已有数据表就需要手动进行配置. 2. 创建HBase表 > creat ...

  5. Hive 实现HBase 数据批量插入

    HBase 数据的插入可以使用Java API 来写Java 程序逐条倒入,但是不是很方便.利用Hive自带的一个Jar包,可以建立Hive和HBase的映射关系 利用Hive 的insert可以将批 ...

  6. Hive及HBase数据迁移

    一. Hive数据迁移 场景:两个Hadoop平台集群之间Hive表迁移. 基本思路:Hive表元数据和文件数据export到HDFS文件,通过Distcp将HDFS迁移到另一个集群的HDFS文件,再 ...

  7. hive处理hbase数据

    CREATE EXTERNAL TABLE table1( key string, zoneid int, result int, ) STORED BY 'org.apache.hadoop.hiv ...

  8. Hbase数据表解析

    demo为表的命名空间,user为表的名字you2个列族,一个为b.一个为o. NAME 为列族名,Replication_SCOPE实现一个远程集群的复制.compression数据压缩的类型 Hb ...

  9. hive 分区表与数据产生关联的三种方式

    所谓关联,可以理解为能够使用select查询到 1.load 这是最常用的一种方式 load data [local] inpath "数据路径" into table table ...

随机推荐

  1. android学习:关于RelativeLayout叠放布局的问题

    RelativeLayout布局关于元素叠加的问题 1.RelativeLayout布局中的元素如果要实现元素叠加必须设置  RelativeLayout.ALIGN_PARENT_TOP  这样元素 ...

  2. 仿手机QQ消息小红点动画2

    前言 上一篇把动画的实现步骤大致理清,需要确认小尾巴的绘制区域,关键就是确定4个顶点的位置.大家可以根据需要,选择不同的计算方式. 今天,要实现: 文字的添加 尾巴拉长用弧形代替直线 下面是现在的效果 ...

  3. web相关文件加载顺序

    WEB相关文件的加载顺序   一. 1.启动一个WEB项目,WEB容器会先去读取它的配置文件web.xml,读取<context-param>和<listener>两个节点. ...

  4. T-SQL查询:WITH AS 递归计算某部门的所有上级机构或下级机构

    drop table #Area; CREATE TABLE #Area ( id INT NOT NULL, city_name NVARCHAR(100) NOT NULL, parent_id ...

  5. docker_Dockerfile_docker hub简单使用搭建nginx

    Docker for Windows是Docker for Microsoft Windows 的Community Edition(CE).要下载Docker for Windows,请前往Dock ...

  6. Linux各个文件及其含义

    树状目录结构: 以下是对这些目录的解释: /bin:bin是Binary的缩写, 这个目录存放着最经常使用的命令. /boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像 ...

  7. python学习第二天 -----2019年4月17日

    第二周-第02章节-Python3.5-模块初识 #!/usr/bin/env python #-*- coding:utf-8 _*- """ @author:chen ...

  8. 使用ofstream输出unicode

    void saveWideFileHead(std::ofstream& out)// 写入文件内容前,先写入BOM { char const* const utf16head = " ...

  9. wav2midi 音乐旋律提取算法 附可执行demo

    前面提及过,音频指纹算法的思路. 也梳理开源了两个比较经典的算法. https://github.com/cpuimage/shazam https://github.com/cpuimage/Aud ...

  10. Go语言反射之反射调用

    ## 1 概述利用反射,不仅可以获取信息,还可以创建实例,执行函数和方法.就是反射代理执行. <!-- more -->## 2 创建实例创建实例的前提是具有 `reflect.Type` ...