【问题标题】:Recover HDFS Data Files of Internal Hive Table after dropping table删除表后恢复内部 Hive 表的 HDFS 数据文件
【发布时间】:2018-12-26 11:29:58
【问题描述】:

我不小心删除了一个 Hive 内部表,与内部表 (xyz_table) 关联的所有文件都自动从 HDFS 位置 (/hive/warehouse/abc_mes.db/xyz_table/) 删除/p>

我们使用带有 Azure 文件存储 (AFS) 作为存储层的 Azure HDInsight 集群。

有人可以建议如何恢复 HDFS 上的文件..我检查了垃圾箱,我可以在那里看到非常旧的文件,比如 4 个月大的文件,但在 /home//.trash 下找不到任何最近的文件.. .

如果有人可以指导,不胜感激

干杯

【问题讨论】:

  • 使用“托管”表(您称之为“内部”)的全部意义在于数据文件在 DROP 命令中被删除。这是与“外部”表的唯一区别。并且 Hive 总是跳过 HDFS Trash。所以你完蛋了。
  • 使用真正的 HDFS,您可以在每个 WE 拍摄 Hive Warehouse 目录的snapshot,但现在为时已晚,而且您无论如何也不使用 HDFS。
  • 感谢@SamsonScharfrichter,据我所知,Azure HDInsight 集群和 Azure 文件存储或多或少是 HDFS 并支持所有 HDFS 命令。顺便说一句,您能否更详细地了解快照过程,或者指向一个有用的链接

标签: hive azure-storage data-recovery


【解决方案1】:

问这个问题已经很久了,但我遇到了同样的问题,我想分享我的经验。

首先,我将 Cloudera 用于 HDFS-Hive-Hue。我删除了一个与 HDFS 位置关联的表,是的,我在 /home/.Trash 但在 /user/admin/.Trash/Current/ 中找不到文件

它可能对将来的某人有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-18
    • 2017-04-07
    相关资源
    最近更新 更多