zoukankan      html  css  js  c++  java
  • linux下进行hive数据迁移

    尝试了阿里云上推荐的数据迁移方式

    https://yq.aliyun.com/articles/66042

    首先确定一个默认的导出的hive数据库

    vi ~/.hiverc use test;

    然后在hdfs上创建一个临时目录

    hdfs dfs -mkdir /tmp/test

    通过hive生成默认的导出数据库的表 转换成导出的hql文件

    hive -e "show tables " | awk '{printf "export table %s to |/tmp/test/%s|; ",$1,$1}' | sed "s/|/'/g" > /home/hive/qcf/export.hql

    手动运行hql文件 把hive数据库中的表和数据先存储到hdfs中创建的临时目录中

    hive -f export.hql

    将hdfs上存储到临时目录的数据下载到本地集群

    hdfs dfs -get /tmp/test /home/test

    下载完成在把数据文件迁移到新的hadoop集群中

    迁移完成后把迁移的数据放到新的集群环境的临时目录中

    hdfs dfs -put /home/test /tmp/test 

    把上面的脚本备份一下由导出脚本通过sed命令转换成导入脚本

    cp export.hql import.sql

    sed -i 's/export table/import table/g' import.sql

    sed -i 's/ to / from /g' import.sql

    在新的集群中也要设置hive的默认导入数据库

    vi ~/.hiverc use test;

    执行命令

    hive -f import.sql

    到此hive数据迁移过程已经完成

    由于hive中的数据过大所以在执行hive -f操作的时候尽量通过linux的后台进行运行

    同时在做导出操作时会发现hive报错  原因是hive缺少hadoop中的两个jar包

    hadoop-common-2.6.2.jar  hadoop-distcp-2.6.2.jar

    使用是将这两个jar包放到hive/lib目录下面

    导出过程也会遇到hive在执行是 java.lang.OutOfMemoryError: GC overhead limit exceeded 

    这个问题我是通过修改hive-env.sh文件来修改的

    在else 中增加-Xmx4096m  加大初始化堆内存的大小,根据linux系统实际运行内存决定

    if [ "$SERVICE" = "cli" ]; then
    if [ -z "$DEBUG" ]; then
        export HADOOP_OPTS="$HADOOP_OPTS -XX:NewRatio=12 -Xms10m -XX:MaxHeapFreeRatio=40 -XX:MinHeapFreeRatio=15 -XX:+UseParNewGC -XX:-      UseGCOverheadLimit"
      else
        export HADOOP_OPTS="$HADOOP_OPTS -XX:NewRatio=12 -Xms10m -Xmx4096m -XX:MaxHeapFreeRatio=40 -XX:MinHeapFreeRatio=15 -XX:-UseGCOverheadLimit"
      fi
    fi

    之后在导入数据的时候也遇到一个问题  java.lang.OutOfMemoryError: Java heap space

    这个问题没有得到解决 导致数据无法正常导入

    然后我就直接将本地文件put到hive的/warehouse/*.db 的目录中

    数据转存到对应的实际上并没有在hive数据库中存在映射关系

    我们需要手动创建分区  分区创建好之后 put进去的数据就会在hive命令中可以被查到了

    本篇文章只是描述和分享一下hive数据迁移的一些过程和遇到的问题,如果有什么疑问可以留言。

  • 相关阅读:
    p3159 [CQOI2012]交换棋子
    三分法
    p2805 [NOI2009]植物大战僵尸
    p2604 [ZJOI2010]网络扩容
    p1129 [ZJOI2007]矩阵游戏
    有趣与愉快-------罗辑思维整理
    张小龙的书单
    会议
    使用CCProxy代理遇到的问题
    关于看书
  • 原文地址:https://www.cnblogs.com/zhuanxin/p/10609073.html
Copyright © 2011-2022 走看看