`
chenchao051
  • 浏览: 137795 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

HBase备份与还原

阅读更多

转载两篇相关文章:

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

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的路径.

 

把这个加到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 

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

 

分享到:
评论

相关推荐

    HBase数据备份与恢复.pdf

    关于HBase备份的类型,文档中提出了全备份和增量备份的概念。全备份是增量备份的基础,而增量备份可以定期捕获数据变化。此外,文档还支持对不同级别进行备份,例如表级别备份。为了成功地执行备份操作,文档强调了...

    nosql实验五-HBase数据迁移与数据备份&恢复.docx

    HBase 数据迁移与数据备份&恢复 本实验主要介绍了 HBase 数据迁移与数据备份和恢复的方法,包括使用 Sqoop 将 MySQL 数据导入到 HBase、将文本文件批量导入 HBase、使用 Hadoop DistCp 实现 HBase 的冷备份和热备份...

    hbase基于快照的数据迁移

    通过HBase的快照功能,我们可以方便地实现数据的迁移和备份。这种基于快照的方式不仅可以减少对生产环境的影响,还可以提高数据迁移的效率和可靠性。希望本文能帮助读者更好地理解和应用HBase快照迁移技术。

    Veritas NetBackup 8.3.pdf

    NetBackup提供的SQL Self-Service功能,明确了备份管理员与数据库管理员(DBA)之间的职责划分,使得DBA能够独立管理数据库备份和还原,同时利用InstantAccess功能快速浏览或装载数据库,增加了灵活性和效率。...

    Spark Streaming与OpenCV传感器数据实时获取

    并对数据做以下处理:将图像数据解码后重新还原成图像,对图像调用OpenCV的人脸识别模块,标记出人脸区域,将重新构建的图像存进HBase数据库做原始数据备份,同时将图像数据传给web socket监听端口。图像处理的模块...

    Spark Streaming与OpenCV传感器数据实时获取.zip

    并对数据做以下处理:将图像数据解码后重新还原成图像,对图像调用OpenCV的人脸识别模块,标记出人脸区域,将重新构建的图像存进HBase数据库做原始数据备份,同时将图像数据传给web socket监听端口。图像处理的模块...

    hadoop_instead.tar.gz

    备份Hadoop集群是为了防止数据丢失或系统故障,当需要恢复服务时,可以快速将系统还原到备份时的状态。 Hadoop作为大数据处理的核心组件,通常包括HDFS(Hadoop Distributed File System)用于存储数据,MapReduce...

    QQ数据库

    对于SQL Server,有bak文件用于备份,可以通过还原操作恢复。 总的来说,QQ数据库涉及到的技术广泛,包括但不限于SQL语言、数据库设计、分布式系统、性能优化、数据安全和恢复策略。理解和掌握这些知识点对于任何...

    CDA数据分析师教学内容.pdf

    MySQL是这个阶段的重点,学生会学习基本的数据库操作,如数据类型、运算符、CRUD(创建、读取、更新、删除)操作,用户管理和数据备份与还原。此外,还将通过实际案例处理中型和大型数据的清洗和查询。 第四阶段:...

    课后作业答案云计算与大数据.docx编程资料

    3. **高可靠性**:通过数据冗余备份和计算节点的互换性确保服务的高可靠性。 4. **通用性**:能够支持多种不同类型的应用程序和服务。 5. **高可扩展性**:根据需求动态调整资源规模。 6. **按需服务**:用户可以...

    缓存List并写入文件持久化.zip

    此外,还有一些NoSQL解决方案(如Redis、HBase)提供了键值对存储、列族存储等特性,特别适合缓存数据的快速存取。 在实际应用中,我们还需要考虑数据的一致性、并发控制、错误处理等问题。例如,为了防止多个线程...

Global site tag (gtag.js) - Google Analytics