Hive元数据找回


  如果不小心删除了了hive的元数据文件(/user/hive/warehouse),只要先前core-site.xml文件中设置了fs.trash.interval属性就可以找回。hdfs会为用户创建一个回收站的目录,通过shell删除的文件会在该回收站中停放一定的时间,最终才被删除。该回收站目录是/user/用户名/.Trash/Current/user/hive/warehouse,如果短时间删除多个,/user/用户名/.Trash/Current/user/hive目录下会有多个warehouse。想恢复只需要把需要的元数据mv回到/user/hive/warehouse目录下即可(hdfs dfs -mv /user/用户名/.Trash/Current/user/hive/warehouse  /user/hive/warehouse)。

  hadoop中trash选项,默认是关闭的,如果要生效需要将trash选项打开,在core-site.xml文件中配置fs.trash.interval即可

    <property>
        <name>fs.trash.interval</name>
        <value>1020</value>
    </property>
    <property>
        <name>fs.trash.checkpoint.interval</name>
        <value>1020</value>
    </property>

fs.trash.interval设置的默认单位是分钟,等回收周期真正到了以后。hdfs才会将数据真正删除。fs.trash.checkpoint.interval则是指垃圾回收的检查间隔,应该是小于或者等于fs.trash.interval


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM