一种存放备份数据的分布式存储系统及方法技术方案

技术编号:20241889 阅读:91 留言:0更新日期:2019-01-29 23:12
本发明专利技术提出了一种存放备份数据的分布式存储系统及方法,使用分布式存储系统的方式代替索引方式对备份的数据进行管理。本发明专利技术提出的一种分布式存储方法,包括备份数据的存放的方法、数据恢复的方法以及备份数据垃圾回收的方法,使用该数据存放方法能够极大的利用磁盘设备高IOPS以及集群的高并发优势,系统设计有冗余,不会轻易出现系统崩溃,并且省去了很多优化备份服务器自身数据的环境,既便于系统管理员进行系统管理又节省了数据库的授权费用。并且和传统的备份系统索引管理不同,不需要通过模拟磁带的方式进行文件系统的空间管理,做到数据在失效时能及时回收,提高了存储空间的利用率。

【技术实现步骤摘要】
一种存放备份数据的分布式存储系统及方法
本专利技术涉及数据备份
,尤其涉及分布式存储、文件系统的相关技术,具体说是一种存放备份数据的分布式存储系统及方法。
技术介绍
随着云计算、大数据等新型技术的发展,业务系统产生的数据量呈现指数级增长,因此对备份系统的IPO和ITO要求越来越高。同时,磁盘技术的发展速度远远超过磁带介质的发展步伐,越来越多的设备采用磁盘设备代替磁带设备作为首选备份介质。但是,目前的备份系统对磁盘设备的支持存在如下问题:主流备份软件均使用磁带的方式管理磁盘,只有磁盘上存储的数据全部过期之后才会对磁盘空间进行回收,极大浪费了磁盘的空间。对于文件系统备份,若采用文件索引的方式进行管理,大量的文件将导致备份软件索引管理困难,长时间大量文件备份后,备份系统的索引空间会出现暴涨,伴有显著的性能降低。海量文件的增量备份恢复时,需要一次一次的恢复增量,将消耗大量时间,恢复浏览周期内的文件需要进行繁琐的索引查询,若使用文件索引,索引的效率非常低下,并且索引结构非常臃肿。若使用小型开源数据库存放索引,则当文件数量过多时会导致数据库稳定性下降,非常不利于维护,若使用大型商业数据库存放索引,则又需要高额的附加费用。数据的备份和恢复仅由单个存储设备提供支持,当备份域规模很大时,很容易出现备份设备的性能瓶颈,特别是备份设备的吞吐量瓶颈,可能会导致多个备份作业并发时无法在规定的备份窗口内完成备份任务。单个存储设备的存储空间扩容能力有限,并且纵向空间扩容会导致备份设备的处理性能下降,从而降低备份设备的性能,备份设备存在单点故障,如果备份设备硬件出现损坏,在硬件修复之前不得不中断系统的备份作业。
技术实现思路
针对以上缺点,本专利技术提出了一种存放备份数据的分布式存储系统及方法,使用分布式存储方式代替索引方式对备份数据进行管理,提高整体性能。本专利技术实施例提供了一种存放备份数据的分布式存储系统及方法,所述的系统,包括集群管理节点、元数据管理节点和存储节点;所述集群管理节点用于提供集群的管理服务,以及元数据管理节点的选举和仲裁;所述集群管理节点的数量为N,其中N为自然数,N≥3;所述元数据管理节点用于管理整个集群的配置信息并负责元数据管理节点的选举和切换;所述元数据管理节点至少包括主用元数据管理节点和备用数据管理节点;所述主用元数据管理节点用于管理整个集群的索引信息,负责数据导流;所述备用数据管理节点用于当主用元数据管理节点出现故障时,替代主用元数据管理节点工作;所述存储节点用于存储备份数据;所述存储节点的数量为M,其中M为自然数,M≥2。进一步的,所述存储节点的数据存储结构包括元数据管理区、位图和数据管理区;所述元数据管理区用于存放所有的元数据;所述元数据包括数据块的属性信息;所述数据块用于存放按照硬盘大小64兆切块后的备份数据;所述位图采用表的方式记录所述存储节点上的数据块使用情况;所述数据管理区用于存放数据块。一种存放备份数据的分布式存储方法,是基于一种存放备份数据的分布式存储系统实现,包括:采用哈希校验的方式进行备份数据的存放校验,备份数据以数据块的方式存放,并将数据块的存放位置记录至元数据,同时将备份数据复制到另外的存储节点作为副本;采用先按照元数据记录进行散粒组合然后再通过哈希校验的方式进行数据恢复;采用将获取元数据的过期时间信息,将元数据的过期时间信息与当前系统的时间对比的方式进行备份数据垃圾回收。进一步的,在所述备份数据的存放、数据恢复以及备份数据垃圾回收之前,还包括原始数据的写入,所述原始数据的写入方法包括以下步骤:S1:向元数据管理节点发送写入请求;S2:所述元数据管理节点按照就近原则选择存储节点,将原始数据按照数据块的方式写入所述存储节点;所述数据块是将原始数据切块,切块的大小为64M;所述数据块的数量=[原始数据的大小(兆)/64(兆)]+1;S3:所述存储节点将写入的所有数据块的信息进行哈希校验,并将哈希校验值反馈给所述元数据管理节点作为元数据;S4:所述元数据管理节点接收到从存储节点反馈元数据后,通过散列算法再将数据块进行副本拷贝,并将副本调度到另外存储节点进行存放,待副本数据创建完毕后,将副本数据的信息更新至元数据。进一步的,所述备份数据的存放的方法包括以下步骤:计算备份数据的哈希校验值;将备份数据的哈希校验值和原始数据的哈希校验值进行对比,如果相同,则说明备份数据和原始数据相同,在元数据中增加所述备份数据的版本记录,并将其指向原始数据;如果不相同,则说明备份数据被修改,在元数据中增加备份数据的版本记录和数据块映射表,并将所述备份数据写入存储节点。进一步的,备份数据的存放方法还包括:计算备份数据的哈希校验值,将备份数据的哈希校验值和原始数据的哈希校验值进行对比,如果不相同,则说明数据备份时出现错误,将重新备份当前数据。进一步的,所述备份数据在存储节点中是按照元数据和数据块的方式存放;所述副本数据在存储节点中是按照元数据和数据块的方式存放。进一步的,所述备份数据的恢复方法包括以下步骤:通过元数据块找到待恢复数据的备份数据块所在位置;所述元数据块用于存放备份数据的元数据;计算待恢复数据的备份数据块的哈希值,和存储在所述元数据管理节点的备份数据的哈希值进行比对,如果相同,则恢复;如果不相同,则读取该所述备份数据的原始数据,将计算出的待恢复数据的备份数据块的哈希值和原始数据的哈希值进行比对,如果相同,则恢复原始数据;如果不相同,则备份数据和原始数据失效。进一步的,所述备份数据的恢复方法还包括:扫描待恢复数据的元数据块,获取待恢复数据的元数据;按照元数据中的记录组合数据块;所述元数据管理节点选取存储节点提供所述组合元数据和数据块后的待恢复数据。进一步的,所述备份数据垃圾回收的方法包括以下步骤:扫描所有的元数据块,获取元数据的过期时间信息;将元数据的过期时间信息与当前系统的时间对比,获得过期的数据块;如果所述过期的数据块未被使用,则删除所述元数据;如果所述过期的数据块被使用,则删除所述元数据,同时删除所述数据块中的内容并修改位图中所述数据块的使用情况,将删除的所述数据块的地址修改为未使用。
技术实现思路
中提供的效果仅仅是实施例的效果,而不是专利技术所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:本专利技术提出了一种存放备份数据的分布式存储系统,使用分布式存储系统的方式代替索引方式对备份的数据进行管理,可以更好的支持磁盘作为物理备份介质,并在一定程度上避免因为备份系统索引损坏造成整个备份数据丢失,提升数据恢复的速率,同时通过支持分布式存储技术,使整个备份支持横向扩容,既可以解决备份空间不足的问题,又能够提高整体的性能。本专利技术提出了一种存放备份数据的分布式存储方法,包括备份数据的存放的方法、数据恢复的方法以及备份数据垃圾回收的方法。备份数据的存放将多个版本数据的管理纳入一个元数据管理数据库,并且将硬件空间划分为定长的64M,极大减少索引的数量,提高备份系统的索引速度。使用该数据存放能够极大的利用磁盘设备高IOPS以及集群的高并发优势,系统设计有冗余,不会轻易出现系统崩溃,并且省去了很多优化备份服务器自身数据的环境,既便于系统管理员进行系统管理又节省了数据库的授权费用。通过元数据管理不同版本的数本文档来自技高网
...

【技术保护点】
1.一种存放备份数据的分布式存储系统,其特征在于,包括集群管理节点、元数据管理节点和存储节点;所述集群管理节点用于提供集群的管理服务,以及元数据管理节点的选举和仲裁;所述集群管理节点的数量为N,其中N≥3;所述元数据管理节点用于管理整个集群的配置信息并负责元数据管理节点的选举和切换;所述元数据管理节点至少包括主用元数据管理节点和备用数据管理节点;所述主用元数据管理节点管理整个集群的配置信息并负责元数据管理节点的选举和切换;所述备用数据管理节点用于当主用元数据管理节点出现故障时,替代主用元数据管理节点工作;所述存储节点用于存储备份数据;所述存储节点的数量为M,其中M≥2。

【技术特征摘要】
1.一种存放备份数据的分布式存储系统,其特征在于,包括集群管理节点、元数据管理节点和存储节点;所述集群管理节点用于提供集群的管理服务,以及元数据管理节点的选举和仲裁;所述集群管理节点的数量为N,其中N≥3;所述元数据管理节点用于管理整个集群的配置信息并负责元数据管理节点的选举和切换;所述元数据管理节点至少包括主用元数据管理节点和备用数据管理节点;所述主用元数据管理节点管理整个集群的配置信息并负责元数据管理节点的选举和切换;所述备用数据管理节点用于当主用元数据管理节点出现故障时,替代主用元数据管理节点工作;所述存储节点用于存储备份数据;所述存储节点的数量为M,其中M≥2。2.根据权利要求1所述的一种存放备份数据的分布式存储系统,其特征在于,所述存储节点的数据存储结构包括元数据管理区、位图和数据管理区;所述元数据管理区用于存放所有的元数据;所述元数据包括数据块的属性信息;所述数据块用于存放按照硬盘大小64M切块后的备份数据;所述位图采用表的方式记录所述存储节点上的数据块使用情况;所述数据管理区用于存放数据块。3.一种存放备份数据的分布式存储方法,是基于权利要求1所述的一种存放备份数据的分布式存储系统实现,其特征在于,包括:采用哈希校验的方式进行备份数据的存放校验,备份数据以数据块的方式存放,并将数据块的存放位置记录至元数据,同时将备份数据复制到另外的存储节点作为副本;采用先按照元数据记录进行散粒组合然后再通过哈希校验的方式进行数据恢复;采用将获取元数据的过期时间信息,将元数据的过期时间信息与当前系统的时间对比的方式进行备份数据垃圾回收。4.根据权利要求3所述的一种存放备份数据的分布式存储方法,其特征在于,在所述备份数据的存放、数据恢复以及备份数据垃圾回收之前,还包括原始数据的写入,所述原始数据的写入方法包括以下步骤:S1:向元数据管理节点发送写入请求;S2:所述元数据管理节点按照就近原则选择存储节点,将原始数据按照数据块的方式写入所述存储节点;所述数据块是将原始数据切块,切块的大小为64兆,所述数据块的数量=[原始数据的大小(兆)/64(兆)]+1;S3:所述存储节点将写入的所有数据块的信息进行哈希校验,并将哈希校验值反馈给所述元数据管理节点作为元数据;S4:所述元数据管理节点接收到从存储节点反馈元数据后,通过散列算法再将数据块进行副本拷贝,并将副本调度到另外存储节点进行存放,待...

【专利技术属性】
技术研发人员:靖尧王承龙
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1