hive-hbase-handler方式导入hive表数据到hbase表中
export HIVE_AUX_JARS_PATH=/home/hadoop/app/hbase-0.96.1.1-cdh5.0.0/lib
启动hive:推荐使用$HIVE_HOME/bin/hive -hiveconf hbase.zookeeper.quorum=hadoop000 -hiveconf hive.root.logger=DEBUG,console启动,可以看到更加详细的日志信息
案例一:操作简单表单cf
创建hive-hbase表:
CREATE TABLE hive_hbase_table_kv(key string, value string)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf1:val")
TBLPROPERTIES ("hbase.table.name" = "hbase_hive_table_kv");
创建hive表并导入数据
CREATE TABLE kv (key STRING, value STRING);
LOAD DATA LOCAL INPATH '/home/spark/app/spark-1.0.0-bin-2.3.0-cdh5.0.0/examples/src/main/resources/kv1.txt' OVERWRITE INTO TABLE kv;
INSERT OVERWRITE TABLE hive_hbase_table_kv SELECT key, value FROM kv;
查看hive和hbase发现均创建了表,并且在两边均能查询到数据。
案例二:操作简单表多cf
CREATE TABLE hbase_table_2(key string, value1 string, value2 string, value3 string)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES (
"hbase.columns.mapping" = ":key,a:b,a:c,d:e"
);
b/c字段属于a列族,e属于d列族。
导入hive表数据:INSERT OVERWRITE TABLE hbase_table_2 SELECT empno, ename, job, deptno FROM emp;
案例三:操作分区表
CREATE TABLE hbase_table_3(key string, ename string, job string, sal double) partitioned by(pt string)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,a:b,a:c,d:e")
TBLPROPERTIES ("hbase.table.name" = "hbase_table_3");
导入hive数据:
INSERT OVERWRITE TABLE hbase_table_3 PARTITION(pt='2013-08-01') SELECT empno, ename, job, sal FROM emp;
注意事项:
与hbase整合的有分区的表在使用hive查询时存在问题: select * from table查询不显示数据,select column from table可以查到数据
为什么select * from xxx 不显示数据?
select * from xxx在普通表中是直接读取HDFS文件,而使用hive-hbase-handler的方式来导入数据的时候,数据是存放在hbase的hdfs上;
在这里是直接从HBase进行查询。查询是成功了,但是hive并不会展示。
hive-hbase-handler方式导入hive表数据到hbase表中的更多相关文章
- oracle复制表数据,复制表结构
1.不同用户之间的表数据复制 2.同用户表之间的数据复制 3.B.x中个别字段转移到B.y的相同字段 4.只复制表结构 加入了一个永远不可能成立的条件1=2,则此时表示的是只复制表结构,但是不复制表内 ...
- ORACLE+PYTHON实战:复制A表数据到B表
最近在学习python ,看到了pythod的oracle,不仅可以一次fetch多条,也可以一次insert多条,想写一个复制A表数据到B表的程序来看看实际效率能不能提高.写完发现,非常惊艳!效率提 ...
- oracle 复制表数据,复制表结构
1.不同用户之间的表数据复制 对于在一个数据库上的两个用户A和B,假如需要把A下表old的数据复制到B下的new,请使用权限足够的用户登入sqlplus:insert into B.new(selec ...
- MySQL的奇怪的删表数据文件而表照样能打开
MySQL的奇怪的删表数据文件而表照样能打开 author:headsen chen 2017-11-02 17:57:17 现象:删除一个正在运行的mysql数据库的表的数据文件:* ...
- sql的存储过程实例--动态根据表数据复制一个表的数据到另一个表
动态根据表数据复制一个表的数据到另一个表 把track表的记录 根据mac_id后两位数字,复制到对应track_? 的表中 如:mac_id=12345678910,则后两位10 对应表为track ...
- MySQL用sql复制表数据到新表的方法
用sqlyog无法直接复制出一个不同表名的表来,只能copy到其他库上同名的表. 在MySQL数据库中,应该如何用sql将表数据复制到新表中呢? 本人通过试验测试成功了,而且相当简单易懂,速度也非常快 ...
- Oracle sqlldr 在DOS窗口导入多列数据到数据库表
sqlldr 用法详见:https://www.cnblogs.com/rootq/archive/2009/03/01/1401061.html 测试内容: 1.创建数据库表: create tab ...
- mysql复制表数据,多表数据复制到一张表
对于mysql 复制表数据可以使用 insert into select 方式 示例: $sql="insert into icarzoo.provider(providerId,provi ...
- 使用phpExcel批量上传excel表数据到mysql数据库中
/*批量上传数据*/ if(isset($_POST['submit']) && $_POST['submit']=='上传文件') { //导入类文件 require_once (& ...
随机推荐
- Magento邮件发送完美设置
Magento新站上线伊始,不料在邮件上遇到了问题.此时常用的邮件模板已经编辑完毕,诸如New Account, New Order, Password Forget等. CentOS下发送邮件很简单 ...
- TX2平台CAN总线收发功能的测试
前言 项目实现过程中需要将获取的数据信息通过CAN总线传输到控制规划模块,本文主要介绍如何在TX2平台测试CAN总线的收发功能. TX2是英伟达旗下为嵌入式平台人工智能应用开发出的一个硬件平台,TX1 ...
- 有向图与无向图的合并操作区别D(递归与并查集)
有向图的合并,典型问题:通知小弟(信息只能单向传播)https://www.nowcoder.com/acm/contest/76/E 无向图的合并,典型问题:修道路问题 由于无向图只要二者有联系即可 ...
- JQ和JS获取span标签的内容(有的情况下JQ达不到预期的目的就用JS)
https://www.cnblogs.com/anniey/p/6439021.html <span id="content">‘我是span标签的内容’</s ...
- MySQL Inception--安装
========================================== 安装依赖包 ## 安装依赖包 yum -y install cmake libncurses5-dev libss ...
- leetcode:Maximum Depth of Binary Tree【Python版】
# Definition for a binary tree node # class TreeNode: # def __init__(self, x): # self.val = x # self ...
- hangfire docker-compose 运行
hangfire 是一款基于.net 的任务调度系统 docker-compose 文件 version: '3' services: hangfire: image: direktchark/han ...
- 先进驾驶员辅助系统ADSA
ADSA(Advanced Driver-Assistance Systems)字面翻译过来是“先进驾驶员辅助系统”,实际上它是一种“辅助驾驶员更便捷更安全使用汽车”的系统. ADAS的研发历史可以追 ...
- putty SSH tunnel function
github & dynamic
- C# 监听HTTP请求(遇到的一些问题)
先把代码放在这里,下面再详细解说: using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Oracle.DataAccess.Client; ...