数据中心混合磁盘阵列及其数据动态迁移策略的制作方法

文档序号:16528755发布日期:2019-01-05 10:34阅读:522来源:国知局
数据中心混合磁盘阵列及其数据动态迁移策略的制作方法

本发明涉及计算机存储技术领域,尤其是一种数据中心混合磁盘阵列及其数据动态迁移策略。



背景技术:

随着电子信息技术的发展,基于nand闪存技术的固态硬盘逐渐的应用于存储系统。固态硬盘消除了机械硬盘的旋转特性,这使得固态硬盘的存取性能高出机械硬盘几十倍甚至几百倍。固态硬盘的另一个重要特性是读写不对称性,读的性能要高于写的性能。另外,频繁的写操作会触发昂贵的垃圾回收操作,从而影响固态硬盘的使用寿命。

由于固态硬盘在价格和容量上无法和传统机械硬盘竞争,使得固态硬盘还不能够完全取代传统的机械硬盘。因此,由固态硬盘和机械硬盘组成的混合存储系统是比较理想的选择。固态硬盘和机械硬盘针对不同的应用程序特性,其性能是不相同的。例如,机械硬盘对于顺序读写的性能比随机读写的性能高。固态硬盘对于随机读的性能要比随机写的性能高。当前数据中心的存储系统不仅需要提供高性能、高可靠的服务,还需要考虑大容量和低成本方面的需求。

目前数据中心的混合磁盘阵列(如raid5、raid6)并没有根据负载的访问特性存储数据,一方面,可能会造成大量的随机请求集中在机械硬盘,另一方面,也会造成大量的写请求集中在固态硬盘。这不仅会降低数据中心磁盘阵列的整体性能,而且还会缩短固态硬盘的使用寿命,从而降低数据中心存储系统的可靠性。



技术实现要素:

本发明的首要目的在于提供一种由机械硬盘和固态硬盘组成,满足了数据中心存储系统所要求的大容量、高性能和低成本的需求的数据中心混合磁盘阵列。

为实现上述目的,本发明采用了以下技术方案:一种数据中心混合磁盘阵列,包括:

机械硬盘,用于存储顺序访问以写为主的数据块;

固态硬盘,用于存储随机访问以读为主的数据块;

阵列控制器,维护逻辑块和物理块之间的映射,将逻辑块映射到固态硬盘或机械硬盘的物理块;对每个数据块维护一个转移状态值,根据状态值,将存储块迁移到固态硬盘且该存储块是随机访问以读为主的,将存储块迁移到机械硬盘且该存储块是顺序访问以写为主的;通过维护已访问数据块的哈希链表,记录数据块所在的设备号、逻辑块地址、访问频率、读写比例和平均请求大小,由此计算出转移状态值。

数据中心的分布式文件系统将固态硬盘和机械硬盘统一映射为逻辑设备,通过相同的接口进行访问。

每个所述逻辑设备由多个存储块组成,每个存储块又由多个存储页面构成,存储页面的大小为2kb或4kb。

本发明的另一目的在于提供一种数据中心混合磁盘阵列的数据动态迁移策略,该策略包括下列顺序的步骤:

(1)当分布式文件系统空闲时,首先计算每个数据块的转移状态值,然后挑选出前n个转移状态值较大的数据块,挑选数据块的数量n根据分布式文件系统空闲时间长短设定;

(2)判断固态硬盘是否还有剩余空间,若判断结果为否,替换出固态硬盘中n个转移状态值较小的数据块,否则,直接将挑选出的数据块转移到固态硬盘;

(3)在数据块发生转移之后,更新重定向映射表,重新映射数据块的位置;

(4)迁移结束;

当分布式文件系统接收到i/o请求时,根据重定向映射表重新定位数据块的位置。

所述数据块的转移状态值由数据块的访问频率、平均访问大小和读写比例计算得到,数据块的转移状态值反映了负载的访问模式。

在分布式文件系统接收到i/o请求时执行下列顺序的步骤:

1)当i/o请求到达时,计算数据块的地址;

2)查询重定向映射表,如果数据块的逻辑地址存在,将旧的逻辑地址替换为新的逻辑地址,然后向磁盘发送i/o请求,否则,直接向磁盘发送i/o请求。

由上述技术方案可知,本发明的优点在于:第一,混合磁盘阵列利用容量较大的机械硬盘存储大部分数据,利用容量较小的固态硬盘存储热点随机访问的数据,满足了数据中心存储系统的大容量、高性能和低成本的需求;第二,通过将随机访问并且以读为主的存储块迁移到固态硬盘,减少了存储系统的平均响应时间和延长了固态硬盘的使用寿命;针对不同的应用程序特性设计不同的存储方法,充分发挥了机械硬盘和固态硬盘各自的优势,同时适应了负载的动态变化。

附图说明

图1为本发明的架构图;

图2为数据块的信息记录结构图;

图3为本发明的方法流程图;

图4为重定向映射表结构图;

图5为i/o请求的处理流程图。

具体实施方式

如图1所示,一种数据中心混合磁盘阵列,包括:

大量机械硬盘,用于存储顺序访问以写为主的数据块;

少量固态硬盘,用于存储随机访问以读为主的数据块;

阵列控制器,维护逻辑块和物理块之间的映射,将逻辑块映射到固态硬盘或机械硬盘的物理块;对每个数据块维护一个转移状态值,根据状态值,将存储块迁移到固态硬盘且该存储块是随机访问以读为主的,将存储块迁移到机械硬盘且该存储块是顺序访问以写为主的;通过维护已访问数据块的哈希链表,记录数据块所在的设备号、逻辑块地址、访问频率、读写比例和平均请求大小,由此计算出转移状态值。

数据中心的分布式文件系统将固态硬盘和机械硬盘统一映射为逻辑设备,通过相同的接口进行访问。

每个所述逻辑设备由多个存储块组成,每个存储块又由多个存储页面构成,存储页面的大小为2kb或4kb。

如图3所示,本策略包括下列顺序的步骤:

(1)当分布式文件系统空闲时,首先计算每个数据块的转移状态值,然后挑选出前n个转移状态值较大的数据块,挑选数据块的数量n根据分布式文件系统空闲时间长短设定;

(2)判断固态硬盘是否还有剩余空间,若判断结果为否,替换出固态硬盘中n个转移状态值较小的数据块,否则,直接将挑选出的数据块转移到固态硬盘;

(3)在数据块发生转移之后,更新重定向映射表,重新映射数据块的位置;对于已经转移的数据块,解除原先的逻辑块和物理块的映射关系,使用重定向映射表,重新映射逻辑块和物理块的位置;

(4)迁移结束;

当分布式文件系统接收到i/o请求时,根据重定向映射表重新定位数据块的位置。

所述数据块的转移状态值由数据块的访问频率、平均访问大小和读写比例计算得到,数据块的转移状态值反映了负载的访问模式,代表了将数据块存储在固态硬盘相比于机械硬盘所带来的性能提升。

如图4所示,重定向映射表包括三个部分,分别是设备号、旧的逻辑地址和新的逻辑地址。设备号标识此数据块是在哪个逻辑设备上,旧的逻辑地址表示转移之前的数据块地址,新的逻辑地址表示转移后的数据块地址。为了进行快速的检索,重定向映射表结构设计为哈希链表。

如图5所述,在分布式文件系统接收到i/o请求时执行下列顺序的步骤:

1)当i/o请求到达时,计算数据块的地址;

2)查询重定向映射表,如果数据块的逻辑地址存在,将旧的逻辑地址替换为新的逻辑地址,然后向磁盘发送i/o请求,否则,直接向磁盘发送i/o请求。

如图2所示,此结构被组织为哈希链表,其优点是方便进行快速的插入、删除和定位操作。记录的信息包括数据块所在的设备号、地址、访问频率、读写比例和平均请求大小。阵列控制器根据这些信息计算数据块的转移状态值,决定数据块存储的位置。数据块的转移状态值是由数据块的访问频率、读写比例和平均请求大小计算得到的,具体的计算公式为:转移状态值=访问频率*读写比例/平均请求大小,其中,访问频率反映了负载访问的时间特性,平均请求大小反映了负载的随机访问特性,读写比例表示此数据块是以读为主还是以写为主,转移状态值是数据块综合评价值,表明此数据块最佳的存储位置。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1