zoukankan      html  css  js  c++  java
  • 星环TDH大数据平台,数据误删除之后,恢复办法

     
    机制:TDH里面数据删除之后,会在hdfs下面生成delta的文件,该文件在下次该表修改时候进行删除compact合并
    也就是说我们要在compact之前,删除delta即可恢复到最新的一次版本
    --比如新建一个分糖数为3的orc事务表,新建成功之后,存在一个delta版本,下面存在3个bucket文件
    SELECT * FROM emp_like01;
    dfs -ls hdfs://nameservice1/inceptor1/user/hive/warehouse/default.db/hive/emp_like01/delta_0000061_0000061

    --执行一次删除操作,可以看到表名目录下新生成一个delta目录版本
    DELETE FROM emp_like01 WHERE EMPNO=7521;
    dfs -ls hdfs://nameservice1/inceptor1/user/hive/warehouse/default.db/hive/emp_like01/delta_0000064_0000064

    --将这个delta目录删除,即可以恢复
    dfs -rm -r -f hdfs://nameservice1/inceptor1/user/hive/warehouse/default.db/hive/emp_like01/delta_0000064_0000064
    执行结果:
    Moved: 'hdfs://nameservice1/inceptor1/user/hive/warehouse/default.db/hive/emp_like01/delta_0000064_0000064' to trash at: hdfs://nameservice1/user/hive/.Trash/CURRENT
    SELECT * FROM emp_like01; 你会发现 之前的数据还会存在
     

    --再次做删除操作
    DELETE FROM emp_like01 WHERE EMPNO=7521;
    --表名目录下新生成一个delta文件夹
    dfs -ls hdfs://nameservice1/inceptor1/user/hive/warehouse/default.db/hive/emp_like01/

    --尝试手动compact并等待合并结束
    alter table emp_like01 compact 'major' and wait;
    --可以看的目录下就剩下一个base目录,base目录下只有3个bucket文件,无法恢复了
    dfs -ls hdfs://nameservice1/inceptor1/user/hive/warehouse/default.db/hive/emp_like01/
    dfs -ls hdfs://nameservice1/inceptor1/user/hive/warehouse/default.db/hive/emp_like01/base_0000066
  • 相关阅读:
    VS2013 update4+Cocos2d-x 3.7 Win8下安装方法及配置
    它处资料:二分图最大匹配的匈牙利算法
    DataGuard备库ORA-01196故障恢复一则
    Leetcode41: Remove Duplicates from Sorted List
    BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发者工具 使用Napa开发SharePoint应用程序
    关于OC的内存管理-01
    P2002 消息扩散
    P1726 上白泽慧音
    2594 解药还是毒药
    P3385 【模板】负环
  • 原文地址:https://www.cnblogs.com/wang3680/p/12426108.html
Copyright © 2011-2022 走看看