一种固态硬盘的raid实现方法、固态硬盘及电子设备的制作方法

文档序号:6377201阅读:152来源:国知局
专利名称:一种固态硬盘的raid实现方法、固态硬盘及电子设备的制作方法
技术领域
本发明涉及存储技术领域,尤其涉及一种固态硬盘的RAID实现方法、固态硬盘及电子设备。
背景技术
RAID (Redundant Arrays of Inexpensive Disks,独立磁盘冗余阵列)是将多个独立硬盘按照不同方式组合在一起使用形成一个硬盘组,从而提供比单个硬盘更高的读写性能和可靠性。RAID按照实现原理的不同可以分为不同的级别,例如RAID O,RAID I以及RAID 5等。固态硬盘具有比传统硬盘高很多的读写性能,但是由于Flash(闪存)介质的原因,固态硬盘的擦写次数是有限的,其可靠性也随着擦写次数的增加而逐渐降低。在数据安全性和读写性能都要求非常高的应用中,使用固态硬盘实现RAID技术是一个较好的选择。·在传统系统中,一般将多个固态硬盘组合在一起,组成一个RAID存储系统。该系统中要求多个固态硬盘,所述需要额外再增加固太硬盘才能构建这种RAID存储系统,由于固态硬盘的成本本身就很高,所以整个存储系统的成本更高。目前具有另外一种实现方案,在一个固态硬盘内部分成多个分区,各个分区根据Flash特点进行管理,进而实现特定的RAID算法,但该方案增加了固态应硬盘内部实现RAID复杂度,难以兼容系统中传统的RAID实现方法,同时增加了传统固态硬盘FTL(Flash Translation Layer,闪存转换层)的复杂度。综上可知,现有固态硬盘的RAID实现方法在实际使用上,显然存在不便与缺陷,所以有必要加以改进。

发明内容
针对上述的缺陷,本发明的目的在于提供一种固态硬盘的RAID实现方法、固态硬盘及电子设备,其能在构建的独立磁盘冗余阵列成本较低的情况下,又能保证数据的可靠性,同时对原有固态硬盘系统具有良好的兼容性。为了实现上述目的,本发明提供一种固态硬盘的RAID实现方法,所述方法包括如下步骤根据独立磁盘冗余阵列类型确定对固态硬盘进行分区的分区数;根据所述分区数将所述固态硬盘按照物理地址分割为多个分区;为每个分区分别建立独立的闪存转换层;将所述固态硬盘的多个分区作为逻辑磁盘创建所述独立磁盘冗余阵列。根据本发明的RAID实现方法,根据独立磁盘冗余阵列类型确定对固态硬盘进行分区的分区数的步骤中所述独立磁盘冗余阵列的类型包括RAID O、RAID URAID 5、RAID6、RAID 10 以及 RAID 50。根据本发明的RAID实现方法,根据所述分区数将固态硬盘按照物理地址分割为多个分区的步骤具体包括
对比所述独立磁盘冗余阵列所需磁盘个数以及闪存芯片个数;若所述闪存芯片个数为所述独立磁盘冗余阵列所需磁盘个数的整数倍,以所述闪存芯片作为所述每个分区的最小单位;若所述闪存芯片个数不为所述独立磁盘冗余阵列所需磁盘个数的整数倍,则以闪存块作为所述每个分 区的最小单位。根据本发明的RAID实现方法,为每个分区分别建立独立的闪存转换层的步骤还包括所述闪存转换层基于当前分区的物理地址范围建立逻辑地址到物理地址的映射表;所述闪存转换层基于当前分区的物理地址范围建立垃圾回收机制,所述垃圾回收机制中有效数据的搬移操作仅在当前分区的物理地址范围内进行;所述闪存转换层基于当前分区的物理地址范围建立均衡磨损机制。本发明相应提供一种固态硬盘,所述固态硬盘包括根据独立磁盘冗余阵列类型确定的分区数将所述固态硬盘按照物理地址进行分割的多个分区,每个分区分别建立独立的闪存转换层,且所述多个分区作为创建所述独立磁盘冗余阵列的逻辑磁盘。根据本发明的固态硬盘,所述独立磁盘冗余阵列的类型包括RAID O、RAIDl、RAID
5、RAID 6、RAID 10 以及 RAID 50。根据本发明的固态硬盘,若所述固态硬盘的闪存芯片个数为所述独立磁盘冗余阵列所需磁盘个数的整数倍,以所述闪存芯片作为所述每个分区的最小单位;若所述闪存芯片个数不为所述独立磁盘冗余阵列所需磁盘个数的整数倍,则以闪存块作为所述分区的最小单位。根据本发明的固态硬盘,每个分区的所述闪存转换层基于当前分区的物理地址范围建立逻辑地址到物理地址的映射表、垃圾回收机制以及均衡磨损机制,且所述垃圾回收机制中有效数据的搬移操作仅在当前分区的物理地址范围内进行。本发明还提供一种电子设备,包括中央处理器以及如权利要求5 8任一项的固态硬盘,固态硬盘与中央处理器连接,固态硬盘用于存储数据,中央处理器用于对固态硬盘中存储的数据进行处理。根据本发明的电子设备,所述电子设备为计算机、服务器、路由器、交换机、移动终端或机顶盒。本发明通过将固态应硬盘划分多个分区,每个分区有独立的FTL算法,各分区之间不相互干扰,然后将这些分区作为逻辑磁盘建立独立磁盘冗余阵列。该方法简化了由单个或由多个闪存控制器组成的固态硬盘RAID实现方法,通过闪存转换层实现分区管理,使得冗余或校验数据与原数据不会被写到同一闪存块或闪存控制器中,更大程度上保证数据可靠性,同时对原有固态硬盘系统具有良好的兼容性。借此,本发明能在构建的独立磁盘冗余阵列成本较低的情况下,又能保证数据的可靠性,同时对原有固态硬盘系统具有良好的兼容性。


图I是本发明固态硬盘一种实施例的结构示意图;图2是本发明固态硬盘进行分区的一种具体实施例;图3是本发明固态硬盘的RAID实现方法的流程图;以及
图4是本发明根据分区数将固态硬盘按照物理地址分割为多个分区的流程图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。如图I所示,本发明提供一种固态硬盘100,固态硬盘10包括多个分区10,多个分区10个数根据待创建的独立磁盘冗余阵列的类型确定,并根据分区数将固态硬盘按照物理地址进行分割形成,每个分区10分别建立独立的闪存转换层11,且多个分区11作为创建独立磁盘冗余阵列的逻辑磁盘。独立磁盘冗余阵列的类型包括RAID O,RAID URAID 5、RAID 6、RAID 10 以及 RAID 50 等。如图I所示,每个分区10包括多个闪存芯片/闪存块12,即在每个分区中以闪存芯片或闪存块作为分区的最小单位。具体的,在对固态硬盘进行物理地址分割时,需要对比独立磁盘冗余阵列所需磁盘个数以及闪存芯片个数,若闪存芯片个数为独立磁盘冗余阵列所需磁盘个数的整数倍,则以闪存芯片作为所述每个分区的最小单位;若闪存芯片个数不为独立磁盘冗余阵列所需磁盘个数的整数倍,则以闪存块作为每个分区的最小单位,以提供最佳的数据可靠性。图2示意出了固态硬盘进行闪存分区的一种实施方式,在该图中物理地址O 1024的区间作为分区1,物理地址为1025 2048的区间为分区2,依次类推,可将固态硬盘10按照物理地址分成多个分区,每个分区的大小一致。优选的是,每个分区10的闪存转换层11基于当前分区的物理地址范围建立逻辑地址到物理地址的映射表、垃圾回收机制、坏块管理机制以及均衡磨损机制。其中,闪存转换层的逻辑物理地址映射表的范围为当前分区物理地址范围;垃圾回收机制中有效数据的搬移操作仅在当前分区的物理地址范围内进行;均衡磨损算法操作的闪存块地址范围也仅在当前分区的物理地址范围内。从而每个分区的闪存转换层实现是相对独立的,地址映射表、垃圾回收、均衡磨损及坏块管理等都基于分区实现,每个分区之间不相互影响,提高了数据可靠性。本发明通过将固态应硬盘100划分多个分区10,每个分区10有独立的FTL算法,各分区10之间不相互干扰,然后将这些分区10作为逻辑磁盘建立独立磁盘冗余阵列。该 方法简化了由单个或由多个闪存控制器组成的固态硬盘RAID实现方法,通过闪存转换层11实现分区管理,使得冗余或校验数据与原数据不会被写到同一闪存块或闪存控制器中,更大程度上保证数据可靠性,同时对原有固态硬盘系统具有良好的兼容性。借此,本发明能在构建的独立磁盘冗余阵列成本较低的情况下,又能保证数据的可靠性,同时对原有固态硬盘系统具有良好的兼容性。如图3所示,本发明相应提供一种固态硬盘的RAID实现方法,该方法包括如下步骤步骤S301,根据独立磁盘冗余阵列类型确定对固态硬盘进行分区的分区数。优选的是,独立磁盘冗余阵列的类型包括RAID O、RAID I、RAID 5、RAID 6、RAID 10以及RAID50。步骤S302,根据分区数将固态硬盘按照物理地址分割为多个分区。
步骤S303,为每个分区分别建立独立的闪存转换层。在本步骤中,闪存转换层基于当前分区的物理地址范围建立逻辑地址到物理地址的映射表;闪存转换层基于当前分区的物理地址范围建立垃圾回收机制,垃圾回收机制中有效数据的搬移操作仅在当前分区的物理地址范围内进行;闪存转换层基于当前分区的物理地址范围建立均衡磨损机制。步骤S304,将固态硬盘的多个分区作为逻辑磁盘创建独立磁盘冗余阵列。独立磁盘冗余阵列的类型包括RAID O,RAID URAID 5,RAID 6、RAID10以及RAID50。图4是本发明根据分区数将固态硬盘按照物理地址分割为多个分区的流程图,其包括如下步骤步骤S401,对比独立磁盘冗余阵列所需磁盘个数以及闪存芯片个数。
步骤S402,若闪存芯片个数为独立磁盘冗余阵列所需磁盘个数的整数倍,以闪存芯片作为每个分区的最小单位。步骤S403,若闪存芯片个数不为独立磁盘冗余阵列所需磁盘个数的整数倍,则以闪存块作为每个分区的最小单位。本发明还提供一种电子设备200,包括中央处理器201以及固态硬盘100,固态硬盘100与中央处理器201连接,固态硬盘100用于存储数据,中央处理器201用于对固态硬盘100中存储的数据进行处理。该电子设备为计算机、服务器、路由器、交换机、移动终端或机顶盒等。综上所述,本发明通过将固态应硬盘划分多个分区,每个分区有独立的FTL算法,各分区之间不相互干扰,然后将这些分区作为逻辑磁盘建立独立磁盘冗余阵列。该方法简化了由单个或由多个闪存控制器组成的固态硬盘RAID实现方法,通过闪存转换层实现分区管理,使得冗余或校验数据与原数据不会被写到同一闪存块或闪存控制器中,更大程度上保证数据可靠性,同时对原有固态硬盘系统具有良好的兼容性。借此,本发明能在构建的独立磁盘冗余阵列成本较低的情况下,又能保证数据的可靠性,同时对原有固态硬盘系统具有良好的兼容性。当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种固态硬盘的RAID实现方法,其特征在于,所述方法包括如下步骤 根据独立磁盘冗余阵列类型确定对固态硬盘进行分区的分区数; 根据所述分区数将所述固态硬盘按照物理地址分割为多个分区; 为每个分区分别建立独立的闪存转换层; 将所述固态硬盘的多个分区作为逻辑磁盘创建所述独立磁盘冗余阵列。
2.根据权利要求I所述的RAID实现方法,其特征在于,根据独立磁盘冗余阵列类型确定对固态硬盘进行分区的分区数的步骤中所述独立磁盘冗余阵列的类型包括RAID O、RAID I、RAID 5、RAID 6、RAID 10 以及 RAID 50。
3.根据权利要求I或2所述的RAID实现方法,其特征在于,根据所述分区数将所述固态硬盘按照物理地址分割为多个分区的步骤具体包括 对比所述独立磁盘冗余阵列所需磁盘个数以及闪存芯片个数; 若所述闪存芯片个数为所述独立磁盘冗余阵列所需磁盘个数的整数倍,以所述闪存芯片作为所述每个分区的最小单位; 若所述闪存芯片个数不为所述独立磁盘冗余阵列所需磁盘个数的整数倍,则以闪存块作为所述每个分区的最小单位。
4.根据权利要求I或2所述的RAID实现方法,其特征在于,为每个分区分别建立独立的闪存转换层的步骤还包括 所述闪存转换层基于当前分区的物理地址范围建立逻辑地址到物理地址的映射表; 所述闪存转换层基于当前分区的物理地址范围建立垃圾回收机制,所述垃圾回收机制中有效数据的搬移操作仅在当前分区的物理地址范围内进行; 所述闪存转换层基于当前分区的物理地址范围建立均衡磨损机制。
5.一种固态硬盘,其特征在于,所述固态硬盘包括根据独立磁盘冗余阵列类型确定的分区数将所述固态硬盘按照物理地址进行分割的多个分区,每个分区分别建立独立的闪存转换层,且所述多个分区作为创建所述独立磁盘冗余阵列的逻辑磁盘。
6.根据权利要求5所述的固态硬盘,其特征在于,所述独立磁盘冗余阵列的类型包括RAID O、RAID I、RAID 5、RAID 6、RAID 10 以及 RAID 50。
7.根据权利要求5或6所述的固态硬盘,其特征在于,若所述固态硬盘的闪存芯片个数为所述独立磁盘冗余阵列所需磁盘个数的整数倍,以所述闪存芯片作为所述每个分区的最小单位;若所述闪存芯片个数不为所述独立磁盘冗余阵列所需磁盘个数的整数倍,则以闪存块作为所述分区的最小单位。
8.根据权利要求5或6所述的固态硬盘,其特征在于,每个分区的所述闪存转换层基于当前分区的物理地址范围建立逻辑地址到物理地址的映射表、垃圾回收机制以及均衡磨损机制,且所述垃圾回收机制中有效数据的搬移操作仅在当前分区的物理地址范围内进行。
9.一种电子设备,其特征在于,包括中央处理器以及如权利要求5 8任一项的固态硬盘,固态硬盘与中央处理器连接,固态硬盘用于存储数据,中央处理器用于对固态硬盘中存储的数据进行处理。
10.根据权利要求9所述的电子设备,其特征在于,所述电子设备为计算机、服务器、路由器、交换机、移动终端或机顶盒。
全文摘要
本发明适用于存储技术领域,提供了一种固态硬盘的RAID实现方法、固态硬盘及电子设备,该实现方法包括根据独立磁盘冗余阵列类型确定对固态硬盘进行分区的分区数;根据分区数将所述固态硬盘按照物理地址分割为多个分区;为每个分区分别建立独立的闪存转换层;将固态硬盘的多个分区作为逻辑磁盘创建独立磁盘冗余阵列。本发明通过将固态应硬盘划分多个分区,每个分区有独立的FTL算法,各分区之间不相互干扰,然后将这些分区作为逻辑磁盘建立独立磁盘冗余阵列。借此,本发明能在构建的独立磁盘冗余阵列成本较低的情况下,保证数据的可靠性,同时对原有固态硬盘系统具有良好的兼容性。
文档编号G06F3/06GK102915212SQ20121034901
公开日2013年2月6日 申请日期2012年9月19日 优先权日2012年9月19日
发明者李明星 申请人:记忆科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1