磁盘休眠处理方法及装置的制造方法

文档序号:9417250阅读:519来源:国知局
磁盘休眠处理方法及装置的制造方法
【技术领域】
[0001]本发明涉及通信领域,具体而言,涉及一种磁盘休眠处理方法及装置。
【背景技术】
[0002]纠删码(Erasure Coding,简称为EC)是一种数据保护方法,它将数据分割成片段,把冗余数据块扩展、编码,并将其存储在不同的位置,比如,磁盘、存储节点或者其它地理位置。它会创建一个数学函数来描述一组数字,这样就可以检查它们的准确性,而且一旦其中一个数字丢失,还可以恢复。多项式插值(polynomial interpolat1n)或过采样(oversampling)就是纠删码所使用的关键技术。
[0003]EC模式可以用于有大量数据和任何需要容错的应用程序或系统中,比如,磁盘阵列系统、数据网格、分布式存储应用程序、对象存储或归档存储。目前,纠删码的一个常见的使用案例是基于对象的云存储。
[0004]在相关技术中,磁盘阵列磁盘休眠是通过经验配置,选择在系统读操作较少的固定时间进行磁盘休眠,这样在休眠过程中也会有文件访问,在EC模式下表现尤为明显。因为休眠会导致文件访问的计算量大大地增加,造成不必要的分片修复耗费了系统大量性能,提高了维护成本,尤其EC环境表现尤为明显。
[0005]因此,在相关技术的磁盘休眠方案中,存在以下缺点:磁盘休眠只能在固定时间对磁盘进行休眠。不能保证长期运行过程中,系统一直在固定时间段空闲,或者空闲的时间段没有被合理利用。从而使磁盘休眠功能处于基本不可用状态。对于EC环境,由于存储规律的不同,休眠的磁盘也会被访问到。这样就造成了大量不必要的分片修复,耗费了大量的系统性能。现有技术的缺点表现尤为严重。
[0006]因此,在相关技术中,磁盘休眠技术中存在的只能固定时间休眠和不必要分片修复造成的系统性能浪费的缺陷。

【发明内容】

[0007]本发明提供了一种磁盘休眠处理方法及装置,以至少解决相关技术中,磁盘休眠技术中存在的只能固定时间休眠和不必要分片修复造成的系统性能浪费的缺陷。
[0008]根据本发明的一个方面,提供了一种磁盘休眠处理方法,包括:统计对第一磁盘中各个存储块chunk进行访问的访问热度;判断对chunk进行访问的所述访问热度是否达到预定阈值;在判断结果为是的情况下,将所述第一磁盘中访问热度超过所述预定阈值的chunk迁移到第二磁盘,其中,所述第二磁盘的性能高于第一磁盘;对所述第一磁盘进行休眠。
[0009]优选地,在所述第一磁盘存在至少两个的情况下,对所述第一磁盘进行休眠包括:在预定时间内采用预定轮流休眠的方式对所述第一磁盘进行休眠。
[0010]优选地,在对所述第一磁盘进行休眠之后,还包括:在满足以下条件至少之一时,唤醒所述第一磁盘:所述第二磁盘达到预定存储阈值、在所述第一磁盘中存在超过所述预定阈值的chunk。
[0011]优选地,在所述第二磁盘达到所述预定存储阈值的情况下,唤醒所述第一磁盘包括:对所述第二磁盘中的chunk,依据所述chunk的访问热度的高低进行排序;将访问热度排在队列尾端的chunk迁移到所述第一磁盘。
[0012]优选地,将所述第一磁盘中访问热度超过所述预定阈值的chunk迁移到所述第二磁盘包括:对统计所述第一磁盘中的所述chunk,依据所述访问热度进行排序;将超过所述预定阈值的chunk迁移到所述第二磁盘。
[0013]根据本发明的另一方面,提供了一种磁盘休眠处理装置,包括:统计模块,用于统计对第一磁盘中各个存储块chunk进行访问的访问热度;判断模块,用于判断对chunk进行访问的所述访问热度是否达到预定阈值;迁移模块,用于在所述判断模块的判断结果为是的情况下,将所述第一磁盘中访问热度超过所述预定阈值的chunk迁移到第二磁盘,其中,所述第二磁盘的性能高于第一磁盘;休眠模块,用于对所述第一磁盘进行休眠。
[0014]优选地,所述休眠模块包括:休眠单元,用于在所述第一磁盘存在至少两个的情况下,在预定时间内采用预定轮流休眠的方式对所述第一磁盘进行休眠。
[0015]优选地,该装置还包括:唤醒模块,用于在满足以下条件至少之一时,唤醒所述第一磁盘:所述第二磁盘达到预定存储阈值、在所述第一磁盘中存在超过所述预定阈值的chunk。
[0016]优选地,所述唤醒模块包括:第一排序单元,用于在所述第二磁盘达到所述预定存储阈值的情况下,对所述第二磁盘中的chunk,依据所述chunk的访问热度的高低进行排序;第一迁移单元,用于将访问热度排在队列尾端的chunk迁移到所述第一磁盘。
[0017]优选地,所述迁移模块包括:第二排序单元,用于对统计所述第一磁盘中的所述chunk,依据所述访问热度进行排序;第二迁移单元,用于将超过所述预定阈值的chunk迁移到所述第二磁盘。
[0018]通过本发明,采用统计对第一磁盘中各个存储块chunk进行访问的访问热度;判断对chunk进行访问的所述访问热度是否达到预定阈值;在判断结果为是的情况下,将所述第一磁盘中访问热度超过所述预定阈值的chunk迁移到第二磁盘,其中,所述第二磁盘的性能高于第一磁盘;对所述第一磁盘进行休眠,解决了相关技术中,磁盘休眠技术中存在的只能固定时间休眠和不必要分片修复造成的系统性能浪费的缺陷,进而达到了实现磁盘的动态休眠,提高磁盘系统性能的效果。
【附图说明】
[0019]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0020]图1是根据本发明实施例的磁盘休眠处理方法的流程图;
[0021]图2是根据本发明实施例的磁盘休眠处理装置的结构框图;
[0022]图3是根据本发明实施例的磁盘休眠处理装置中休眠模块28的优选结构框图;
[0023]图4是根据本发明实施例的磁盘休眠处理装置的优选结构框图;
[0024]图5是根据本发明实施例的磁盘休眠处理装置中唤醒模块42的优选结构框图;
[0025]图6是根据本发明实施例的磁盘休眠处理装置中迁移模块26的优选结构框图;
[0026]图7是根据本发明优选实施例的分级存储动态休眠磁盘系统架构示意图;
[0027]图8是根据本发明优选实施例的磁盘动态休眠方法的交互示意图;
[0028]图9是根据本发明优选实施例的磁盘动态休眠方法的流程图;
[0029]图10是根据本发明优选实施例的磁盘动态唤醒方法的交互示意图;
[0030]图11是根据本发明优选实施例的磁盘动态唤醒方法的流程图。
【具体实施方式】
[0031]下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0032]在本实施例中提供了一种磁盘休眠处理方法,图1是根据本发明实施例的磁盘休眠处理方法的流程图,如图1所示,该流程包括如下步骤:
[0033]步骤S102,统计对第一磁盘中各个存储块chunk进行访问的访问热度;
[0034]步骤S104,判断对chunk进行访问的访问热度是否达到预定阈值;
[0035]步骤S106,在判断结果为是的情况下,将第一磁盘中访问热度超过预定阈值的chunk迁移到第二磁盘,其中,第二磁盘的性能高于第一磁盘;
[0036]步骤S108,对第一磁盘进行休眠。
[0037]通过上述步骤,依据磁盘中的chunk的访问热度来实现chunk在磁盘间的迁移,使得访问高的chunk能够迁移到性能高的磁盘中,访问低的chunk甚至不访问的chunk可以集中到不热的磁盘,进而可以将该热度不高的磁盘进行休眠,不仅解决了相关技术中,磁盘休眠技术中存在的只能固定时间休眠和不必要分片修复造成的系统性能浪费的缺陷,进而达到了实现磁盘的动态休眠,提高磁盘系统性能的效果。
[0038]需要
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1