hbase與hive整合
    1. hive中有數據 --> 創建hive管理表映射hbase
    例如:
        1)hive創建內部表
            create table course.hbase_score(id int,cname string,score int)
            stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
            with serdeproperties("hbase.columns.mapping" = "cf:name,cf:score")
            tblproperties("hbase.table.name" = "hbase_score");
        2)插入數據
            insert overwrite table course.hbase_score select id,cname,score from course.score;
    2. habse中有數據 --> 創建hive外部表映射hbase
    例如:
        CREATE external TABLE course.hbase2hive(id int, name string, score int)
        STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
        WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf:name,cf:score")
        TBLPROPERTIES("hbase.table.name" ="hbase_hive_score");

hbase與sqoop整合
    1. mysql中表數據導入hbase中
    例如:
        bin/sqoop import \
        --connect jdbc:mysql://192.168.1.5:3306/library \
        --username root \
        --password root \
        --table book \
        --columns "id,name,price" \
        --column-family "info" \
        --hbase-create-table \
        --hbase-row-key "id" \
        --hbase-table "hbase_book" \
        --num-mappers 1  \
        --split-by id
    2. hbase中的數據導入mysql中
    ps:
        sqoop不支持直接將hbase中的數據導出,我們可以通過hive關聯兩者:
        hbase -> hive外部表 -> hive內部表 -> 通過sqoop -> mysql
    例如:
        1)創建hive外部表映射hbase中的表數據
            CREATE EXTERNAL TABLE course.hbase2mysql (id int,name string,price int)
            STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
            WITH SERDEPROPERTIES (
            "hbase.columns.mapping" =
             ":key,info:name, info:price"
            )
            TBLPROPERTIES( "hbase.table.name" = "hbase_book",
            "hbase.mapred.output.outputtable" = "hbase2mysql");
        2)將hive外部表數據插入到hive內部表中
            CREATE TABLE course.hbase2mysqlin(id int,name string,price int);
        3)通過sqoop將hive內部表數據導到mysql中
            sqoop export -connect jdbc:mysql://192.168.43.98:3306/library -username root
            -password root -table book -export-dir /user/hive/warehouse/course.db/hbase2mysqlin
            --input-fields-terminated-by '\001' --input-null-string '\\N'
            --input-null-non-string '\\N';

hbase整合的更多相关文章

  1. Hive(五):hive与hbase整合

    配置 hive 与 hbase 整合的目的是利用 HQL 语法实现对 hbase 数据库的增删改查操作,基本原理就是利用两者本身对外的API接口互相进行通信,两者通信主要是依靠hive_hbase-h ...

  2. 《OD大数据实战》HBase整合MapReduce和Hive

    一.HBase整合MapReduce环境搭建 1. 搭建步骤1)在etc/hadoop目录中创建hbase-site.xml的软连接.在真正的集群环境中的时候,hadoop运行mapreduce会通过 ...

  3. Hadoop Hive与Hbase整合+thrift

    Hadoop Hive与Hbase整合+thrift 1.  简介 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句 ...

  4. 大数据工具篇之Hive与HBase整合完整教程

    大数据工具篇之Hive与HBase整合完整教程 一.引言 最近的一次培训,用户特意提到Hadoop环境下HDFS中存储的文件如何才能导入到HBase,关于这部分基于HBase Java API的写入方 ...

  5. Hive与Hbase整合

    Hive与Hbase整合 1.文档 Hive HBase Integration 2.拷贝jar文件 2.1.把Hbase的lib目录下面的jar文件全部拷贝到Hive的lib目录下面 cd /hom ...

  6. Hive和Hbase整合

    Hive只支持insert和delete操作,并不支持update操作,所以无法实施更新hive里的数据,而HBASE正好弥补了这一点,所以在某些场景下需要将hive和hbase整合起来一起使用. 整 ...

  7. Hbase 整合 Hadoop 的数据迁移

    上篇文章说了 Hbase 的基础架构,都是比较理论的知识,最近我也一直在搞 Hbase 的数据迁移, 今天就来一篇实战型的,把最近一段时间的 Hbase 整合 Hadoop 的基础知识在梳理一遍,毕竟 ...

  8. Hive和HBase整合用户指南

    本文讲解的Hive和HBase整合意思是使用Hive读取Hbase中的数据.我们可以使用HQL语句在HBase表上进行查询.插入操作:甚至是进行Join和Union等复杂查询.此功能是从Hive 0. ...

  9. hive与hbase整合过程

    实现目标 Hive可以实时查询Hbase中的数据. hive中的表插入数据会同步更新到hbase对应的表中. 可以将hbase中不同的表中的列通过 left 或 inner join 方式映射到hiv ...

  10. hive和hbase整合的原因和原理

    为什么要进行hive和hbase的整合? hive是高延迟.结构化和面向分析的: hbase是低延迟.非结构化和面向编程的. Hive集成Hbase就是为了使用hbase的一些特性.或者说是中和它们的 ...

随机推荐

  1. asp.net IHttpModule浅析

    在asp.net程序中,我们除了使用系统自带的HttpModule模块,还可以自己定义一些自己的HttpModule接口模块.一个asp.net程序可以接收多个HttpModule模块. 众所周知,a ...

  2. python之路-python2.x与python3.x区别

    Python崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. Python2.x 与 Python3.x的区别: python2.x:源码混乱,重复代码较多,冗余. python3.x:源码规范,崇 ...

  3. mybatis 动态 SQL 官方文档

    MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句的痛苦.例如拼接时要确保不能忘记添加必要的空格,还要注意去掉 ...

  4. 201671010142 <<面向对象程序设计(Java) 实验十五 线程 感悟和总结>>

    继承Thread类实现多线程 继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了Runnable接口的一个实例,它代表一个线程的实例,并且,启动线程的唯一方法就是通 ...

  5. TreeSet VS HashSet VS LinkedHashSet; TreeMap VS HashMap VS LinkedHashMap

    From online resources Set HashSet is much faster than TreeSet (constant-time versus log-time for mos ...

  6. Android : Camera2/HAL3 框架分析

    一.Android O上的Treble机制: 在 Android O 中,系统启动时,会启动一个 CameraProvider 服务,它是从 cameraserver 进程中分离出来,作为一个独立进程 ...

  7. Linux 虚拟文件系统概述

    转自:http://blog.csdn.net/u011373710/article/details/70198080 文章梗概 本文首先以“尽量不涉及源代码”的方式讨论Linux虚拟文件系统的存在的 ...

  8. 分享我编写的powershell脚本:ssh-copy-id.ps1

      问:通过[字符串界面].如何从win,通过ssh,连接到sshd?答:在任意版本win中,通过cmd.exe,powershell.exe中调用ssh.exe,连接sshd.   问:通过[pow ...

  9. 手动增加swap空间

           在日常工作中,swap没有必要搞那么大的空间,因为现在好多服务器都使用了ssd硬盘,这些硬盘还是比较贵的.如果服务器内存是128G,swap空间还设置成内存的两倍的话,那岂不是很明显是很 ...

  10. 提升算法——Adaboost

    思路:通过改变训练样本权重,学习多个分类器,并将这些分类器进行线性组合,提高分类器性能.大多数提升方法都是改变训练数据的概率分布(数据的权值) 强可学习:存在一个多项式的学习算法能够学习他,并且正确率 ...