zoukankan      html  css  js  c++  java
  • HBase Snapshot功能介绍

    HBase在0.94之后提供了Snapshot功能,一个snapshot其实就是一组metadata信息的集合,它可以让管理员将表恢复到以前的一个状态。snapshot并不是一份拷贝,它只是一个文件名的列表,并不拷贝数据。一个全的snapshot恢复以为着你可以回滚到原来的表schema和创建snapshot之前的数据。在0.95之后默认开启snapshot功能,之前版本的需要手动开启对snapshot的支持,修改hbas-site.xml文件添加

    <property>    
        <name>hbase.snapshot.enabled</name>    
        <value>true</value>
    </property>

    主要提供了以下几个操作(目前只是对单个表进行这样的操作):

    #take snapshot
    hbase> snapshot 'tableName', 'snapshotName'
     
    #list snapshots
    hbase> list_snapshots 
    #delete snapshot
    hbase> delete_snapshot 'snapshotName'
     
    #clone snapshot
    hbase> clone_snapshot 'src_snapshot','dest_snapshot'
     
    #restore snapshot, 首先必须将表disable掉
    hbase> restore_snapshot 'snapshotName'

    实践的问题

    目前我们线上的集群是hbase-0.94的,开启了snapshot功能,实践了一下,有以下几个问题:

    • 元数据存在不一致状态时,一般的hbase一做split的时候就会出现暂态的元数据不一致
    • 需要做restore的时候它会先对表的当前状态做一下snapshot,成功之后才会去restore,这个有点没必要,有时候我们正是因为元数据不一致才会去做restore,这样就会没办法去做
    • 生成snapshot的时候只能是一张表一张表去做,不知道后面的hbase版本会不会一个操作解决所有表的snapshot
     
    后期计划升级hbase,尝试新版本的snapshot会不会更实用可靠一些。
  • 相关阅读:
    注册和登录与数据库内的链接
    数据访问
    马厩分配问题
    Codeforces Round #365 (Div. 2) D.Mishka and Interesting sum
    最优比例生成树模板
    01分数规划模板
    hiho一下第109周《Tower Defense Game》
    begin.BZOJ 1383: 三取方格数
    最小生成树
    Codeforces Round #364 (Div. 1)B. Connecting Universities
  • 原文地址:https://www.cnblogs.com/nexiyi/p/hbase_snapshot_094.html
Copyright © 2011-2022 走看看