[发明专利]基于文件目录的热迁移方法及装置有效
申请号: | 201611041877.0 | 申请日: | 2016-11-21 |
公开(公告)号: | CN106844417B | 公开(公告)日: | 2020-07-28 |
发明(设计)人: | 曾震 | 申请(专利权)人: | 深信服科技股份有限公司 |
主分类号: | G06F16/11 | 分类号: | G06F16/11 |
代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 胡海国 |
地址: | 518052 广东省深圳市南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 文件 目录 迁移 方法 装置 | ||
本发明公开了一种基于文件目录的热迁移方法,应用于分布式文件系统,包括:创建待迁移文件目录下各文件的本地副本;采用异步操作迁移数据,将本地副本中的第一部分数据从迁出端迁移到迁入端,并在数据迁移过程中对前台IO进行隔离;当完成第一部分数据的迁移时,阻塞前台IO,并采用同步操作迁移数据,将本地副本中的第二部分数据从迁出端迁移到迁入端;将待迁移文件目录下各文件的访问路径从迁出端切换到迁入端,其中,异步操作迁移的总数据量大于同步操作迁移的总数据量。本发明还公开了一种基于文件目录的热迁移装置。本发明在实现了大量数据热迁移的同时,达到了对前台IO影响最小的效果。
技术领域
本发明涉及分布式文件系统领域,尤其涉及基于文件目录的热迁移方法及装置。
背景技术
现有基于文件系统的分布式存储系统中,随着读写量的增多或者出现扩容缩容行为时,系统中文件就会出现分布不均衡,因而需要进行热迁移。
而现有基于分布式文件系统的热迁移技术中,需要同时对多个待迁移文件的副本进行同步写,因而不能实现与前台IO进行隔离,从而造成在漫长的数据迁移过程中持续影响前台IO性能。
发明内容
本发明的主要目的在于提供一种基于文件目录的热迁移方法及装置,旨在解决现有热迁移技术中未与前台IO进行隔离,进而使得在漫长的数据迁移过程中,持续影响前台IO性能的技术问题。
为实现上述目的,本发明提供一种基于文件目录的热迁移方法,应用于分布式文件系统,所述基于文件目录的热迁移方法包括:
创建待迁移文件目录下各文件的本地副本;
采用异步操作迁移数据,将所述本地副本中的第一部分数据从迁出端迁移到迁入端,并在数据迁移过程中对前台IO进行隔离;
当完成所述第一部分数据的迁移时,阻塞前台IO,并采用同步操作迁移数据,将所述本地副本中的第二部分数据从所述迁出端迁移到所述迁入端;
将所述待迁移文件目录下各文件的访问路径从所述迁出端切换到所述迁入端,其中,异步操作迁移的总数据量大于同步操作迁移的总数据量。
优选地,采用后台主动创建与写时复制被动创建的并行创建方式,对所述待迁移文件目录下各文件进行全量快照,以创建对应的本地副本;
其中,在所述后台主动创建方式下,若所述待迁移文件目录所在磁盘的读写IO队列由非空变换为空,则启动进行所述本地副本的创建,若该磁盘的读写IO队列由空变换为非空,则暂停进行所述本地副本的创建;
在所述写时复制被动创建方式下,若前台IO对未创建本地副本的文件进行读写,则在该文件被修改之前,完成该文件的本地副本的创建。
优选地,所述在数据迁移过程中对前台IO进行隔离包括:
在数据迁移过程中,对前台IO队列进行监控;
若前台IO队列由非空变换为空,则启动进行数据迁移,若前台IO队列由空变换为非空,则暂停进行数据迁移。
优选地,所述基于文件目录的热迁移方法还包括:
在采用异步操作迁移数据之前,将写操作的日志状态设置为异步记录日志状态,在采用同步操作迁移数据之前,将写操作的日志状态设置为同步记录日志状态。
优选地,采用租约机制回收所述分布式文件系统的客户端写权限,以供阻塞前台IO。
进一步地,为实现上述目的,本发明还提供一种基于文件目录的热迁移装置,应用于分布式文件系统,所述基于文件目录的热迁移装置包括:
创建模块,用于创建待迁移文件目录下各文件的本地副本;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深信服科技股份有限公司,未经深信服科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611041877.0/2.html,转载请声明来源钻瓜专利网。