版本 虚拟机centOS7 hive 1.2.1 hbase 1.2.6

1,在hive-site.xml中添加配置

 <property><name>hbase.zookeeper.quorum</name><value>test-hadoop-2-21,test-hadoop-2-22,test-hadoop-2-23</value></property>

2,将Hbase/lib下的jar包拷贝到hive/lib下 给hive整合hbase提供环境

hbase-server-1.2.6.jar
hbase-client-1.2.6.jar
hbase-protocol-1.2.6.jarhbase-hadoop2-compat-1.2.6.jarhbase-common-1.2.6.jarhbase-hadoop-compat-1.2.6.jarhtrace-core-3.1.0-incubating.jar
metrics-core-2.2.0.jar

另外还有一个特殊的包hive-hbase-handler-1.2.1需要编译 (hive1.2.2版本的不需要)

如果没有这个jar包,就会报错:

message:HBase table xsg:test05 doesn’t exist while the table is declared as an external table.

解决方法:

下载hive的源码包 通过eclipse进行编译 :说白了就是把缺少的jar包添加进行,重新打jar包上传即可
import -> File System -> hbase-handler/src/java -> 确定 -> Finish


这是一个压缩包,解压得到源码包 ,,后在eclipse中操作



创建jar包的目录Lib,将下载好的jar包复制,光标放在lib上 —>粘贴

选择Build Path点击Add to Bulid Path 至此可以导出我们需要的jar包了。
在org.apache.hadoop.hive.hbase包上点击右键,选择export 选择java下的JAR file,选择一个生成位置,即可点击完成。
到这里我们就生成了符合自己Hbase版本的hive-hbase-handler了。

4,将jar包上传到hive/lib中就可以创建hive表进行测试了

如果报错org.apache.hadoop.hbase.client.RetriesExhaustedException: Can’t get the location for replica

很可能是你的hbase服务或者内部服务之间有问题了,看一下日志吧!

创建外部表将hbase中的数据在hive中做一个映射,就可以在hive中操作hbase了,注意建表时两个表中的字段类型与个数要一致,存放数据时没有的字段会显示NULL

create external table test01 (rowkey string,name string, age int) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,info:name,info:age") TBLPROPERTIES ("hbase.table.name" = "test01");
注意:如果是default中的表就只写表名      "hbase.table.name" = "test01"如果是某个命名空间的表   要指明命名空间 "hbase.table.name"="xsg:aaa"

5,将hive数据写入hbase
insert into table aaa select * from bbb;
之后在hbase中查询数据,数据已经从hive复制到了hbase中

最后要感谢提供方法 的博主,文档链接

https://blog.csdn.net/linxiyimeng007/article/details/80969151
提供了主要eclipse操作方法
https://jingyan.baidu.com/article/ca41422fc76c4a1eae99ed9f.html
Eclipse中导入外部jar包
https://www.cnblogs.com/acm-bingzi/p/decompileJar.html
当时理解错了,还来了一段反编译
https://blog.csdn.net/danielchan2518/article/details/81075542?utm_source=blogxgwz1
报错:Can’t get the location for replica时提供思路
https://www.cnblogs.com/tnsay/p/5783815.html
最后再来几条测试

hive整合HBase:HBase table xsg:test05 doesn't exist while the table is declared as an external table相关推荐

  1. Hbase与hive整合

    //hive与hbase整合 create table lectrure.hbase_lecture10(sname string, score int) stored by 'org.apache. ...

  2. Hive 整合Hbase(来自学习资料--博学谷)

    1.摘要 Hive提供了与HBase的集成,使得能够在HBase表上使用HQL语句进行查询 插入操作以及进行Join和Union等复杂查询.同时也可以将hive表中的数据映射到Hbase中. 2.应用 ...

  3. Hive 整合 HBase

    作者 | 广   责编 | 张文 头图 | CSDN 下载自视觉中国 HBase 虽然可以存储数亿或数十亿行数据,但是对于数据分析来说不太友好,它只提供了简单的基于 Key 值的快速查询能力,没法进行 ...

  4. hive整合hbase

    实验环境准备  Hive-2.3.3 Hbase-1.3.1 launcher start start-dfs.sh start-yarn.sh zkServer.sh start (3) ./mr- ...

  5. 2.4-2.5、Hive整合(整合Spark、整合Hbase)、连接方式Cli、HiveServer和hivemetastore、Squirrel SQL Client等

    2.4其它整合 2.4.1Hive整合Spark Spark整合hive,需要将hive_home下的conf下的hive_site.xml放到spark_home下的conf目录下.(3台服务器都做 ...

  6. 企业级数据仓库:数据仓库概述;核心技术框架,数仓理论,数据通道Hive技术框架,HBase设计,系统调度,关系模式范式,ER图,维度建模,星型/雪花/星座模式,数据采集同步,业务数据埋点,数据仓库规范

    文章目录 第一章 数据仓库概述 1.1 数据仓库简介 1.1.2 什么是数据仓库? 1.1.3 OLTP 与 OLAP 1.2 数据仓库技术架构 1.3 课程目标 第二章 核心技术框架 2.1 数据仓 ...

  7. hbase hive java_hive 与 hbase 结合

    一.hive与hbase的结合 Hive会经常和Hbase结合使用,把Hbase作为Hive的存储路径,所以Hive整合Hbase尤其重要.使用Hive读取Hbase中的数据,可以使用HQL语句在HB ...

  8. hive创建映射hbase外表

    HBase建表: create 'ods_member',{NAME => 'cf', VERSIONS => 1} Hive建表: CREATE EXTERNAL TABLE `ods_ ...

  9. hive数据导入hbase

    将hive数据导入hbase 一.hive外部表映射hbase表 1. hbase里面创建表 2. 建立hive外部表并映射hbase表 3.测试 二.spark bulkload方式 1.准备事项 ...

最新文章

  1. ITK:计算两个索引之间的距离
  2. debounceTime 和 throttleTime 的弹珠图
  3. 网页设计上机考试原题_计算机二级考试即将到达战场,各单位准备!!!!
  4. IO字节缓冲流的最简单读写源码
  5. 网页撤销后ubuntu本地撤销
  6. git 查看pop内容_原创 | 有了Git这个操作,我再也不怕代码混乱了!
  7. java怎么配置tomcat_Eclipse中配置Tomcat
  8. sax 解析 xml
  9. java 通过反射获取数组
  10. android 字体加粗_Android小技巧之TextView字体加粗
  11. 机器学习入门——线性回归预测广告投入数据集
  12. Win10系统 禁止某个程序\软件联网
  13. 用c语言找出图片中黄颜色部分,测试:6种玫瑰颜色找出你的恋爱基因,神准!...
  14. mysql ndb_搭建mysql NDB集群
  15. kbhit linux windows通用,_kbhit() for Linux
  16. Unit3D打包android时出错 CommandInvokationFailure: Unable to list target platforms. Please make sure the a
  17. 使用breakpad收集native奔溃日志及dump解析
  18. mp4转换成gif怎么转?
  19. 工控机和通用计算机相比的特点,工控机特点
  20. m118w重置墨粉_打印机M118W墨粉盒如何清零

热门文章

  1. sign in with Apple,使用Apple授权登录
  2. uva11386 Triples
  3. 考研数学要背诵的知识点
  4. java读txt文件乱码_java读取txt文件时出现中文乱码怎么解决
  5. 大数据在高校中的应用
  6. 【机器学习】1. 线性模型 - 普通最小二乘法
  7. C++问答2 三大特性
  8. 2020年软件测试工程师需要具备什么技能--需要学哪些
  9. cisco路由器license的相关命令简单梳理
  10. 区块链技术应用到现实场景中,是个什么样?