Hive及HBase数据迁移
一、 Hive数据迁移
场景:两个Hadoop平台集群之间Hive表迁移。
基本思路:Hive表元数据和文件数据export到HDFS文件,通过Distcp将HDFS迁移到另一个集群的HDFS文件,再通过import在新Hive中建表;
1.Hive数据导出
此步骤在原平台执行将Hive表元数据和文件数据export到平台HDFS文件
1) 获得hive表的元数据信息
ret=$(hive -e 'show tables;' | grep -v _es | grep -v _hb | grep -v importinfo)
ret中存放hive所有表的表名。
2) 导出hive表元数据和hive管理hdfs数据
hive -e "export table $tem to '/tmp/hive-export/$tem';"
执行此命令后可以看到hdfs输出目录下有元数据和文件数据
查看hadoop fs -cat /tmp/hive-export/[table_name]/_metadata元文件
2. Hive数据迁移
用distcp从原平台将/tmp/hive-export/下数据迁移到新平台。
hadoop distcp hdfs://10.0.11.205:8020/tmp/hive-export hdfs://10.0.11.91:8020/tmp
执行成功后新平台tmp目录下会多出拷贝的数据文件。
3.新集群数据导入
1) 获得hive表名
Hive表名为/tmp/hive-export/下的路径名
使用hadoop fs -ls获得所有的表名
2) 执行导入命令
hive -e "import table [table_name] from '/tmp/hive-export/[table_name]’;"
可以看到hive上新生成了表,自此跨平台Hive表迁移完成。
二、 Hbase数据迁移
1.Hbase数据导出
在原平台上使用org.apache.hadoop.hbase.mapreduce.Export命令导出hbase数据到原平台的HDFS上
hbase org.apache.hadoop.hbase.mapreduce.Export [table_name] [hdfs_directory]
2.Hbase数据迁移
此步骤将导出的数据文件拷贝到新集群
hadoop distcp hdfs://10.0.11.205:8020[hdfs_directory] hdfs://10.0.11.91:8020/tmp
3.Hbase数据导入
hbase org.apache.hadoop.hbase.mapreduce.Import [table_name] [hdfs_directory]
注:1)使用全路径,不能使用相对路径
2)在执行import之前,需要将hbase表在新集群建好。
Hive及HBase数据迁移的更多相关文章
- HBase 数据迁移方案介绍
一.前言 HBase数据迁移是很常见的操作,目前业界主要的迁移方式主要分为以下几类: 图1.HBase数据迁移方案 从上面图中可看出,目前的方案主要有四类,Hadoop层有一类,HBase层有三类.下 ...
- HBase 数据迁移方案介绍 (转载)
原文地址:https://www.cnblogs.com/ballwql/p/hbase_data_transfer.html 一.前言 HBase数据迁移是很常见的操作,目前业界主要的迁移方式主要分 ...
- 4.HBASE数据迁移方案(之snapshot):
4.HBASE数据迁移方案: 4.1 Import/Export 4.2 distcp 4.3 CopyTable 4.4 snapshot 快照方式迁移(以USER_info:user_lo ...
- HBase 数据迁移
最近两年负责 HBase,经常被问到一些问题, 本着吸引一些粉丝.普及一点HBase 知识.服务一点阅读人群的目的,就先从 HBase 日常使用写起,后续逐渐深入数据设计.集群规划.性能调优.内核源码 ...
- HBase 数据迁移方案介绍(转载)
原文链接:https://www.cnblogs.com/ballwql/p/hbase_data_transfer.html 一.前言 HBase数据迁移是很常见的操作,目前业界主要的迁移方式主要分 ...
- HBase数据迁移至Hive
背景:需要将HBase中表xyz(列簇cf1,列val)迁移至Hive 1. 建立Hive和HBase的映射关系 1.1 运行hive shell进入hive命令行模式,运行如下脚本 CREA ...
- HBase数据迁移到Kafka实战
1.概述 在实际的应用场景中,数据存储在HBase集群中,但是由于一些特殊的原因,需要将数据从HBase迁移到Kafka.正常情况下,一般都是源数据到Kafka,再有消费者处理数据,将数据写入HBas ...
- Hive 实现HBase 数据批量插入
HBase 数据的插入可以使用Java API 来写Java 程序逐条倒入,但是不是很方便.利用Hive自带的一个Jar包,可以建立Hive和HBase的映射关系 利用Hive 的insert可以将批 ...
- 伪分布式hbase数据迁移汇总
https://www.jianshu.com/p/990bb550be3b hbase0.94.11(hadoop为1.1.2,此电脑ip为172.19.32.128)向hbase1.1.2 (ha ...
随机推荐
- 【Hibernate一】概述及入门
Hibernate学习框架: 1.基本部分 crud的操作 主键的生成机制 类型 持久化类 映射文件 *.hbm.xml 配置文件 hibe ...
- hadoop 异常及处理总结-02(小马哥精品)
一直以来,对hdfs的警告信息不报以理睬,今天突然关注了一下.每当我操作hdfs的时候就会出现这样一个警告: WARN util.NativeCodeLoader: Unable to load na ...
- CSS布局之脱离文档流详解——浮动、绝对定位脱离文档流的区别
1.代码 (1)示例代码1 <!DOCTYPE html> <html lang="zh"> <head> <meta charset=& ...
- JavaWeb 获取请求网络协议、IP、端口号、项目根路径
JavaWeb 获取请求网络协议.IP.端口号.项目根路径 CreateTime--2018年6月1日16点32分 Author:Marydon 1.需求 在项目中,需要使用Java向本程序发送r ...
- 常用Jar包下载
Jackson包下载 :https://yunpan.cn/cBdPGeIESZ4jE 访问密码 36f7
- LaTex 常见错误及解决办法
出现错误: Multirow 要用库的 导入\usepackage{multirow} ,,即可
- Provisional headers are shown(一)
谷歌浏览器调试的时候,这个警告经常出现.但是每次产生的原因可能都是不一样的. 这篇文档记录我遇到的其中一次. 现象:一个并发的错误信息: CAUTION:request is not finished ...
- stm32 堆和栈(stm32 Heap & Stack)
关于堆和栈已经是程序员的一个月经话题,大部分有是基于os层来聊的. 那么,在赤裸裸的单片机下的堆和栈是什么样的分布呢?以下是网摘: 刚接手STM32时,你只编写一个 int main() { whil ...
- Linux 用 shell 脚本 批量 导入 csv 文件 到 mysql 数据库
前提: 每个csv文件第一行为字段名 创建的数据库字段名同csv 文件的字段名 1. 批量导入 多个 csv 文件 for file in ./*.csv;do mv $file tablename. ...
- atitit.激活一个窗口总结 swing java .net php
atitit.激活一个窗口总结 1 激活窗口:鼠标激活vswindows消息激活 1.1 Web框架激活 2 退出激活窗口热键(dbg模式) 3 俩个窗口激活优先级 ...