HBase备份与还原

编程技术  /  houtizong 发布于 3年前   129

转载两篇相关文章:

第一篇、http://blog.nosqlfan.com/html/3014.html 

HBase 增量备份和还原工具

HBase自带的export/import机制可以实现Backup Restore功能。而且可以实现增量备份。下面设增量备份的python脚本。

在这个脚本中,每天做增量备份,每个月15日做全备份。

 

import timeimport datetimefrom datetime import dateimport sysimport ostablename=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 cmdos.system(cmd)

 

而Restore机制就更加简单:

hbase org.apache.hadoop.hbase.mapreduce.Import tablename restorefolder

 

要注意的是,做Restore时候,原始的表必须是创建好的。所以如果表本身被损坏,需要重新创建一个新的空表,再做Restore。

还有,必须在Hadoop-env.sh中配置好hbase和Zookeeper的路径.

 

把这个加到crontab里面,就可以实现每天定时备份了。

 

--------------------------------------------------我是分割线----------------------------------------------------------- 

 

 第二篇:http://koven2049.iteye.com/blog/1162904

hbase提供了导出表的方案,将指定的表导出到HDFS或本地,这样方便了备份或数据转移。 

最快的方式是通过mapreduce来完成这件事,需要在hbase的conf中添加mapred-site.xml:

<property>       <name>mapred.job.tracker</name>       <value>192.168.0.1:9001</value>   </property>   <property>       <name>hadoop.tmp.dir</name>       <value>/tmp/hadoop-${user.name}</value>   </property> 

  

    【注意:不加也可以运行,加了搞不好还会出错】

    然后执行:

1.hbase org.apache.hadoop.hbase.mapreduce.Export backup_table hdfs://192.168.0.1:9000/user/test/backup_table  

 

数据被写到了相应的目录,一个region一个文件。默认为sequencefile。当然还可以选择对输出进行压缩等。 
要将输出的数据导入某个hbase的表,需执行以下命令:

hbase org.apache.hadoop.hbase.mapreduce.Import backup_table hdfs://192.168.0.1:9000/user/test/backup_table 

此时再看对应的表,己经有数据了。

 

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!

留言需要登陆哦

技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成

网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];

      订阅博客周刊 去订阅

文章归档

文章标签

友情链接

Auther ·HouTiZong
侯体宗的博客
© 2020 zongscan.com
版权所有ICP证 : 粤ICP备20027696号
PHP交流群 也可以扫右边的二维码
侯体宗的博客