HBase 增量備份和還原工具
HBase 增量備份和還原工具(收藏)
By John_Yang|CloudingComputing, HBase Research|Be the first to comment!
HBase自帶的export/import機制可以實現Backup Restore功能。而且可以實現增量備份。
下面設增量備份的python指令碼
在這個指令碼中,每天做增量備份,每個月15日做全備份。
view plaincopy to clipboardprint?
import time
import datetime
from datetime import date
import sys
import os
tablename=sys.argv[1]
backupDst=sys.argv[2]
today=date.today()
if today.day == 15: //every month, we do a full backup
backupSubFolder=backupDst+today.isoformat()+"-full"
cmd="hbase org.apache.hadoop.hbase.mapreduce.Export %s %s"%(tablename,backupSubFolder)
else:
yesterday=datetime.date.today()- datetime.timedelta(days=1)
todayTimeStamp=time.mktime(today.timetuple())
yesTimeStamp=time.mktime(yesterday.timetuple())
backupSubFolder=backupDst+today.isoformat()
cmd="hbase org.apache.hadoop.hbase.mapreduce.Export %s %s %s"%(tablename,backupSubFolder,str(int(todayTimeStamp)*1000)
print cmd
os.system(cmd)
而Restore機制就更加簡單
hbase org.apache.hadoop.hbase.mapreduce.Import tablename restorefolder
要注意的是,做Restore時候,原始的表必須是建立好的。所以如果表本身被損壞,需要重新建立一個新的空表,再做Restore。
還有,必須在Hadoop-env.sh中配置好hbase和Zookeeper的路徑,加上這樣的語句
export HADOOP_CLASSPATH="/usr/lib/hadoop-hbase/hbaseXXX.jar:/usr/lib/hadoop-hbase/lib/zookeeperXXX.jar:/etc/hadoop-hbase/conf"
把這個加到crontab裡面,就可以實現每天定時備份了。
[@more@]
By John_Yang|CloudingComputing, HBase Research|Be the first to comment!
HBase自帶的export/import機制可以實現Backup Restore功能。而且可以實現增量備份。
下面設增量備份的python指令碼
在這個指令碼中,每天做增量備份,每個月15日做全備份。
view plaincopy to clipboardprint?
import time
import datetime
from datetime import date
import sys
import os
tablename=sys.argv[1]
backupDst=sys.argv[2]
today=date.today()
if today.day == 15: //every month, we do a full backup
backupSubFolder=backupDst+today.isoformat()+"-full"
cmd="hbase org.apache.hadoop.hbase.mapreduce.Export %s %s"%(tablename,backupSubFolder)
else:
yesterday=datetime.date.today()- datetime.timedelta(days=1)
todayTimeStamp=time.mktime(today.timetuple())
yesTimeStamp=time.mktime(yesterday.timetuple())
backupSubFolder=backupDst+today.isoformat()
cmd="hbase org.apache.hadoop.hbase.mapreduce.Export %s %s %s"%(tablename,backupSubFolder,str(int(todayTimeStamp)*1000)
print cmd
os.system(cmd)
而Restore機制就更加簡單
hbase org.apache.hadoop.hbase.mapreduce.Import tablename restorefolder
要注意的是,做Restore時候,原始的表必須是建立好的。所以如果表本身被損壞,需要重新建立一個新的空表,再做Restore。
還有,必須在Hadoop-env.sh中配置好hbase和Zookeeper的路徑,加上這樣的語句
export HADOOP_CLASSPATH="/usr/lib/hadoop-hbase/hbaseXXX.jar:/usr/lib/hadoop-hbase/lib/zookeeperXXX.jar:/etc/hadoop-hbase/conf"
把這個加到crontab裡面,就可以實現每天定時備份了。
[@more@]
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23937368/viewspace-1054870/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Mysql資料備份和還原MySql
- 【SQL Server】本地備份和還原SQLServer
- 基於percona xtrabackup 2.4.14的增量備份恢復還原mysql 5.6MySql
- elasticsearch備份和還原(基於hdfs)Elasticsearch
- 「MySQL」資料庫備份和還原MySql資料庫
- EXP增量備份
- Xtrabackup增量備份
- Windows分割槽備份還原工具:Winclone Pro for MacWindowsMac
- 備份還原剪下板
- 如何使用 TimeShift 備份和還原 Ubuntu LinuxUbuntuLinux
- 備份和還原Windows DHCP伺服器Windows伺服器
- Mysql備份和還原資料庫-mysqldumpMySql資料庫
- Boot Camp分割槽備份還原工具Winclone pro 10boot
- mysql多執行緒備份與還原工具mydumperMySql執行緒
- win10驅動如何備份還原_win10驅動備份和還原怎麼操作Win10
- java mysql 資料庫備份和還原操作JavaMySql資料庫
- Ubuntu Desktop: 備份與還原Ubuntu
- 達夢DMRMAN備份還原工具的介紹與配置
- Winclone pro 10 for mac(Boot Camp分割槽備份還原工具)Macboot
- rman 增量備份恢復
- MySQL 定時增量備份MySql
- oracle資料庫備份之exp增量備份Oracle資料庫
- mssql sqlserver 快速表備份和表還原的方法SQLServer
- 資料庫的備份和還原不成功資料庫
- Sqlserver關於校驗和_備份還原的CHECKSUMSQLServer
- Ghost備份及還原系統
- [20221020]奇怪的增量備份.txt
- sqlserver資料庫的備份還原SQLServer資料庫
- oracle 還原 .dmp 格式備份檔案Oracle
- sqlserver資料庫備份,還原操作SQLServer資料庫
- MySQL的資料備份與還原MySql
- 「Oracle」Oracle 資料庫備份還原Oracle資料庫
- 【Mongodb】資料庫備份與還原MongoDB資料庫
- 怎麼備份分割槽表?還原備份表怎麼操作?
- win10備份檔案後怎麼還原_win10備份檔案還原的方法Win10
- win10怎麼備份系統還原 win10系統備份與還原步驟Win10
- 實際使用Elasticdump工具對Elasticsearch叢集進行資料備份和資料還原Elasticsearch
- 【統計資訊】如何備份和還原統計資訊
- SQL學習-資料庫的備份和還原 分離和附加SQL資料庫