美文网首页
Hive数据备份和恢复

Hive数据备份和恢复

作者: 麦子星星 | 来源:发表于2019-05-05 15:48 被阅读0次

    本文说明如何通过把Hive中的数据备份到磁盘中,并从磁盘中恢复到Hive中。

    1,把Hive中的表数据备份到磁盘中。 

    备份示例:

    use GRC_BIGDATA;insert overwrite local directory '/root/grc_bigdata/backup/src_companyinfo' ROWFORMAT DELIMITED FIELDS TERMINATEDBY'|'STOREDASTEXTFILEselect*fromsrc_companyinfo;

    以上语句说明,把src_companyinfo表中的数据以‘|’为分隔符号,并备份到“/root/grc_bigdata/backup/src_companyinfo”目录中。 

    备份之后的目录结构如下:

    [root@cdh-node3src_companyinfo]#ll 总用量

    11580-rw-r--r--1 root root 8482661 11月11 19:38 00

    0000_0-rw-r--r--1 root root 2261124 11月11 19:38 00

    0001_0-rw-r--r--1 root root 1109324 11月11 19:38 000002_0

    在Hue中浏览的src_xtbillmx2013_st的目录结构如下: 

    从以上结果可以看出,数据文件输出的个数与表在Hive中存储的文件个数不一定一致。

    2,把磁盘中的文件恢复到Hive中。 

    先在hive中执行建表脚本:

    CREATE TABLE IFNOT EXIST Ssrc_xtbillmx2013_st (twbmoneyfdouble,  cxbzdouble,  paixudouble, ywlxid string,  swbzdouble)ROWFORMAT DELIMITED FIELDS TERMINATEDBY'|'STOREDASTEXTFILE;

    然后在Hive中执行如下导入命令:

    use GRC_BIGDATA;LOAD DATA LOCALINPATH'/root/grc_bigdata/backup/src_xtbill2013_st'OVERWRITEINTOTABLEsrc_xtbill2013_st;

    3,在Hive中备份46个表、一共552GB的数据到Linux文件系统,一共耗时55386 秒,大概15.4个小时。 

    从Linux文件系统中恢复以上数据,耗时41217秒,大概11.4个小时。

    原文

    相关文章

      网友评论

          本文标题:Hive数据备份和恢复

          本文链接:https://www.haomeiwen.com/subject/ewlhoqtx.html