一、 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数据迁移的更多相关文章

  1. HBase 数据迁移方案介绍

    一.前言 HBase数据迁移是很常见的操作,目前业界主要的迁移方式主要分为以下几类: 图1.HBase数据迁移方案 从上面图中可看出,目前的方案主要有四类,Hadoop层有一类,HBase层有三类.下 ...

  2. HBase 数据迁移方案介绍 (转载)

    原文地址:https://www.cnblogs.com/ballwql/p/hbase_data_transfer.html 一.前言 HBase数据迁移是很常见的操作,目前业界主要的迁移方式主要分 ...

  3. 4.HBASE数据迁移方案(之snapshot):

    4.HBASE数据迁移方案:  4.1 Import/Export  4.2 distcp  4.3 CopyTable  4.4 snapshot 快照方式迁移(以USER_info:user_lo ...

  4. HBase 数据迁移

    最近两年负责 HBase,经常被问到一些问题, 本着吸引一些粉丝.普及一点HBase 知识.服务一点阅读人群的目的,就先从 HBase 日常使用写起,后续逐渐深入数据设计.集群规划.性能调优.内核源码 ...

  5. HBase 数据迁移方案介绍(转载)

    原文链接:https://www.cnblogs.com/ballwql/p/hbase_data_transfer.html 一.前言 HBase数据迁移是很常见的操作,目前业界主要的迁移方式主要分 ...

  6. HBase数据迁移至Hive

    背景:需要将HBase中表xyz(列簇cf1,列val)迁移至Hive 1. 建立Hive和HBase的映射关系     1.1 运行hive shell进入hive命令行模式,运行如下脚本 CREA ...

  7. HBase数据迁移到Kafka实战

    1.概述 在实际的应用场景中,数据存储在HBase集群中,但是由于一些特殊的原因,需要将数据从HBase迁移到Kafka.正常情况下,一般都是源数据到Kafka,再有消费者处理数据,将数据写入HBas ...

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

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

  9. 伪分布式hbase数据迁移汇总

    https://www.jianshu.com/p/990bb550be3b hbase0.94.11(hadoop为1.1.2,此电脑ip为172.19.32.128)向hbase1.1.2 (ha ...

随机推荐

  1. umount: /data: device is busy

    如果一个文件系统处于"busy"状态的时候,不能卸载该文件系统.如下情况将导致文件系统处于"busy"状态:1:文件系统上面有打开的文件2:某个进程的工作目录在 ...

  2. 【BIRT】01_在win10上安装BIRT

    环境:windows 10 64位 安装文件:链接:https://pan.baidu.com/s/1vYGbB0D1QeQ923oIIdoI9Q 密码:qcde 说明:安装文件也可以自己去官网下载, ...

  3. python字符串操作大全

    1.去空格 strip() >>> s = 'a b c d ' >>> s.strip() 'a b c d' 2.lstrip() 方法用于截掉字符串左边的空格 ...

  4. 如何使用Android MediaStore裁剪大图片

    译者按:在外企工作的半年多中花了不少时间在国外的网站上搜寻资料,其中有一些相当有含金量的文章,我会陆陆续续翻译成中文,与大家共享之.初次翻译,“信达雅”三境界恐怕只到信的层次,望大家见谅! 这篇文章相 ...

  5. EMQTT benchmark测试

    #-c 最大的客户端数据, -i:时间间隔 -t:订阅主题 -q:订阅方式 ./emqtt_bench_sub -c 50000 -i 10 -t bench/%i -q 2 notice: You ...

  6. 字符编解码的故事(ASCII,GBK,Unicode,Utf-8区别)

    很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物.他们认为8个开关状态作为原子单位很好,于是他们把这称为"字节". 再后来,他们又做了一 ...

  7. NAT Network Address Translation,网络地址转换

    Network Address Translation,网络地址转换

  8. Windows下 Qt 资源文件(.qrc)文件 的 编写与应用

    最近遇到一些项目都包含了qrc文件,这个是Qt的资源文件,如果在pro文件中不包含的话,在编译的时候会提示找不到相应资源的错误. 下面说一下手动修改pro和编写qrc文件的方法. 我们直接在命令行下执 ...

  9. 在ubuntu下安装free pascal

    1.ubuntu16.04版本已经集成了free pascal最新的3.0版,只需要安装就可以了. sudo apt install fp-compiler 在ubuntu里面,fp-compiler ...

  10. atitit.Windows Server 2003 2008 2012系统的新特性 attilax 总结

    atitit.Windows Server 2003  2008  2012系统的新特性 attilax 总结 1. Windows Server 2008 新特性也可以归纳为4个方面. 1 2. 相 ...