精易论坛
标题:
HBase 增量备份之工具
[打印本页]
作者:
ㄣ负二代
时间:
2013-1-30 13:23
标题:
HBase 增量备份之工具
HBase自带的export/import机制可以实现Backup Restore功能。而且可以实现增量备份。 下面设增量备份的python脚本 在这个脚本中,每天做增量备份,每个月15日做全备份。
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"
作者:
宇智波·佐助
时间:
2013-2-7 09:45
沙发
欢迎光临 精易论坛 (https://125.confly.eu.org/)
Powered by Discuz! X3.4