CN104094254A - 用于非平衡raid管理的***和方法 - Google Patents
用于非平衡raid管理的***和方法 Download PDFInfo
- Publication number
- CN104094254A CN104094254A CN201280059163.6A CN201280059163A CN104094254A CN 104094254 A CN104094254 A CN 104094254A CN 201280059163 A CN201280059163 A CN 201280059163A CN 104094254 A CN104094254 A CN 104094254A
- Authority
- CN
- China
- Prior art keywords
- raid
- disk
- raid device
- performance
- coefficient
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2206/00—Indexing scheme related to dedicated interfaces for computers
- G06F2206/10—Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
- G06F2206/1012—Load balancing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种在具有多个RAID装置的多个物理数据存储装置中动态平衡数据分配的方法,其中多个RAID装置中的至少一个由至少一个不同类型的物理存储装置或相比于多个RAID装置中的至少另外一个的不同数量的物理存储装置的构成,其可包括唯一地对每个RAID装置确定其使用系数;以及至少部分的基于该使用系数平衡数据I/O。
Description
技术领域
本发明一般地涉及数据存储***。更特别地,本发明涉及用于数据在非平衡磁盘/RAID配置中的分配的***和方法。
背景技术
随着信息的价值和使用逐渐增加,个人和商业都在寻找其他的方式来处理和存储信息。适合于用户的一个选项是信息处理***。信息处理***一般地处理、编译、存储和/或传输信息或数据,用于商业、个人或其他目的,因此允许用户充分利用信息的优点。因为技术和信息处理的需要和要求在不同用户和应用间的而不同,信息处理***也可随着被处理信息、如何处理、被处理、存储或传输的信息的数量以及信息可以被多快速和有效地处理、存储或传输是等而不同。不同的信息处理***考虑到信息处理***产生和配置用于特定的用户或特定的使用,例如金融事务处理、航空预定、企业数据存储或全球通信。另外,信息处理***可包括多个硬件和软件组件,它们用于处理、存储和传输信息,并且可包括一个或多个计算机***、数据存储***和网络***。
关于这些,RAID,独立冗余磁盘阵列(Redundant Array of IndependentDisks)的首字母缩写,是一种技术,其通过冗余提供了增强的存储性能和增强的可靠性,并且如此可有利地用于信息处理***中。RAID装置中的冗余可通过将多个磁盘组件结合成逻辑单元,其可包括一个或多个不同类型、尺寸或分类的磁盘,其中数据越过磁盘器被分配到被称作“RAID等别(RAIDlevels)”的几种方式的一种上。数据分配确定了RAID类型,例如RAID0,RAID5,RAID10等等。
RAID包括数据存储方案,其可以在多个物理磁盘磁盘上划分和复制数据。物理磁盘在RAID阵列中,其通过操作***作为单个的磁盘进行寻址。RAID装置的很多不同的方案或体系结构对那些本领域普通技术人员来说是已知的。每一个不同的体系结构或方案可在存储数据上达到多种目标上提供不同的平衡,其包括,但不限于,增强的数据可靠性和增强的输入/输出(在下文中是“I/O”)性能。进一步地,RAID装置可归组于一个或多个“分层(tiers)”,其较高重要的数据可存储在较高性能的RAID分层中,并且较低重要的数据可存储在较低性能的RAID分层中。
自存储器的一个或多个虚拟空间(virtual volume)中创造存储器的“页面池(page pool)”是本领域中已知的,其中虚拟空间包括一个或多个相同类型或不同类型的RAID装置。美国专利US7398418,其内容通过引用的方式并入本文,公开了数据存储***的实施例,其使用了虚拟空间的页面池,并基于该页面池动态分配数据空间。如图1中实施例所示,磁盘存储***110包括存储页面池112,例如数据存储池包括能自由存储数据的数据存储空间。页面池112可从多个RAID装置114保留存储空间的自由列,并可基于用户的需要管理读/写分配。用户请求的数据存储空间116可被发送到页面池112来得到存储空间。每一卷可从相同或不同类的存储装置中请求存储空间,存储装置具有相同或不同的RAID分层,例如RAID10,RAID5,RAID0等等。
如图2中进一步所示的,可提供虚拟空间或区块的矩阵204,并与物理磁盘相关联。虚拟空间或区块的矩阵204可通过一个或多个磁盘存储***控制器202来动态监控/控制。每一个虚拟空间204的尺寸可被预设,并且对于每个虚拟空间204,数据的位置可缺省为空。虚拟空间204中的每一个可为空直到数据被分配。数据可被分配到矩阵或“页面池”的任何一格中(例如数据一旦被分配到格中,该格中就有一圆点)。一旦数据被删除,虚拟空间204可再一次是可利用的并指示为“空”。因而,额外的和有时昂贵的数据存储装置,例如RAID装置,可在随后的一段时间内在需要的基础上获取,或者一旦不再需要就移除。在这种方式下,映像到一个或多个RAID装置的虚拟空间的页面池可提供高地灵活和有效的数据存储***。
相应地,这样的基于RAID的据存储***能够使用RAID技术遍及任何数量的虚拟空间磁盘。剩余存储空间是自由地可被利用。通过监控存储空间和确定RAID子***的存储空间的占用率,用户不必分配大量的昂贵但购买时没有用磁盘。因而,当需要满足实际上存储空间的需求时才增加额外的磁盘,可有效地减少磁盘的整体成本,并且当不再需要时移除磁盘以释放珍贵的存储空间。磁盘的使用的效率也可以充分地改善。
在现有的RAID配置中,例如美国专利US7398418中公开的,数据分配可通过计分***来确定,其在数据存储***中将一个或多个分数评估给每一个RAID装置,并且基于数据优先级(例如其访问的频率)数据被分配给特别的RAID装置,和/或通过分数评估给RAID装置。例如,在一个实施例的结构中,分配较高优先级的数据给较高分数RAID装置,并且分配较低优先级数据给较低分数RAID装置。计分和数据分配的进一步的实施例在美国专利US7398418中公开。
在平衡RAID配置(balanced RAID configurations)中,每个RAID装置在数据存储***中被分割成“宽条带”(wide-striped)跨越所有的磁盘,磁盘具有相同的尺寸和类型,现有的数据分配和存储方法提供一种准确的和有效的方式用于在大多数适当的RAID装置中存储这样的数据。然而,常见的是,数据存储***中,并不是所有包括的磁盘都具有相同的类型或相同的尺寸,并因此,不可能在***中每个RAID装置的宽条带跨越所有的磁盘,导致“非平衡”RAID配置。非平衡RAID配置也可由磁盘从数据存储***中的增加或移除所导致,这里RAID装置在增加或移除后没有重新分割(re-striped)。由于这种非平衡结构,现有的数据分配和存储方法不能对每个RAID装置确定准确的分数,或者对特定的RAID装置可以大多数有效的方式来分配数据。本领域缺少的是在基于RAID据存储***的非平衡属性的***和方法中,于各自的RAID装置进行评估计分中和分配数据存储到那RAID装置上。
发明内容
在一个实施方式中,这里公开的是一种信息处理***,包括:多个RAID装置,其中,定义了多个物理数据存储装置,其中至少一个RAID装置由至少一个不同类型的物理存储装置或相比于多个RAID装置中的至少另外一个的不同数目的物理存储装置构成;以及处理单元,其中该处理单元配置为动态地分配数据到所述多个RAID装置,以便平衡数据I/O跨越多个RAID装置。
在这个实施方式的变形中,平衡数据I/O可包括确定每个RAID装置的使用系数(usage factor)。该使用系数可用于在页面池种类自由表上分类多个RAID装置。所述使用系数至少部分地基于每个所述RAID装置的使用率,其包括通过将所述RAID装置的使用率除以磁盘的数量,所述RAID装置是被分割成跨越所述数量的磁盘。所述使用系数进一步至少部分地基于重叠磁盘使用率,其包括每个所述RAID装置的所述RAID装置磁盘使用率的总和,所述RAID装置是被分割成跨越物理磁盘。所述使用系数包括每个所述物理磁盘的重叠磁盘使用率的总和,所述RAID装置是被分割成跨越每个物理磁盘。所述处理单元可进一步配置为基于各自的所述使用系数来排序所述多个RAID装置。所述处理单元可进一步配置为当所述RAID装置跨越数据存储边界时平衡数据I/O。处理单元可进一步配置为当从所述信息处理***中增加或移除物理磁盘时平衡数据I/O。
一种在具有定义多个RAID装置的多个物理数据存储装置中动态平衡数据分配的方法,其中,多个RAID装置中的至少一个由至少一个不同类型的物理存储装置或相比于多个RAID装置中的至少另外一个的不同数量的物理存储装置的构成,包括对每个RAID装置确定其各自的使用系数;以及至少部分的基于所述使用系数平衡数据I/O。
在这个实施方式的变形中,进一步包括基于所述使用系数来移除RAID装置。移除具有最低所述使用系数的RAID装置。在RAID装置跨越数据存储边界时发生平衡。
在至今另一个实施方式中,这里公开的是一种在包括了多个RAID装置的存储***中用于从RAID装置分配空间的方法,所述RAID装置具有多个物理磁盘,该方法包括计算由所述RAID装置于每个所述多个物理磁盘中使用的空间的大小;通过对由所述RAID装置于每个所述多个物理磁盘中使用的空间的大小求和来计算由所述RAID装置使用的空间的总量;基于计算得到的所述空间的总量和每个所述多个物理磁盘的相对性能参数计算所述RAID装置的使用系数;基于计算得到的所述使用系数在所述多个RAID装置中排序所述RAID装置;以及基于上述排序从所述多个RAID装置中的一个分配空间。
在该实施方式的变形中,所述多个物理磁盘中的至少一个相比于所述多个物理磁盘中的至少另外一个是不同类型的。所述多个物理磁盘中的至少一个相比于所述多个物理磁盘中的至少另外一个是不同尺寸的。进一步包括:新增磁盘给所述多个物理磁盘;定义包括所述新增磁盘的新的RAID装置;基于所述多个RAID装置与所述新的RAID装置的各自的使用系数来排序多个RAID装置与所述新的RAID装置;以及基于上述排序从RAID装置中分配空间。所述新的RAID装置可包括所述新增磁盘与所述多个物理磁盘中的至少一个。所述新的RAID装置可从所述多个RAID装置归类到单独的组中。
尽管公开多个实施例,但是根据以下详细描述本公开的其它实施例对于本领域技术人员将变得显而易见,该详细示出并描述本发明的说明性实施例。如将实现,本公开的各种实施例能够在完全不脱离本发明的精神及范畴的情况下在各种明显态样上修改。因此,附图及详细描述将被视为本质上说明性的而非限制性的。
附图说明
尽管说明书以权利要求特别指出了主题并明确了要求保护的主题,该主题被视为形成了本公开内容的多个实施方式,但是应当相信的是,从下面参照附图的描述中将更好地理解本发明,其中:
图1示出了具有页面池结构的数据存储***的现有技术的实施例;
图2示出了根据页面池结构的虚拟空间的矩阵的现有技术的实施例;
图3示出了具有宽条带的平衡RAID配置的实施例;
图4示出了具有不同尺寸磁盘的非平衡RAID配置的实施例;
图5和图6示出了具有不同组的RAID配置非平衡RAID配置的实施例;
图7和8示出了非平衡RAID配置的进一步实施例;
图9示出了根据本公开的一个实施方式的平衡算法的实施例;
图10a-b示出了根据本公开的一个实施方式的基于RAID配置(10b)的实施例的平衡计算(10a)的实施例;
图11示出了根据本公开的一个实施方式的自由表排序的实施例,并且;
图12示出了根据本公开的一个实施方式的自动评估边界配置的实施例。
具体实施方式
本公开描述了***和方法的实施方式,其中数据存储的页面池可用于非平衡RAID管理(unbalanced RAID management,在下文中称作“URM”)以最大化数据存储***的性能,其不使用或不能使用以宽条带分割RAID装置,由于,除了别的事情以外,例如,使用不同尺寸、不同类型的数据存储磁盘、或增加或移除磁盘后没有重新分割的RAID装置磁盘。当本公开描述了使用RAID磁盘的实施例时,应当意识到的是,本公开可用于与任何磁盘管理形式的连接上。如这里使用的,数据存储***的“性能”,除了别的参数以外,可涉及读/写速度、存储性能、冗余水平中的任一个。本公开的URM技术和方法可周期性地或基本上连续地在非平衡RAID数据存储***中评估磁盘的分配负载,以及可确定和控制物理磁盘页面池进行后续的页面分配,以维持高效率的***结构。
现有的数据分配方法中可能没有优化的RAID配置的概述
在现有使用平衡RAID配置的结构中,数据分配和管理技术通常使用以宽条带分割RAID装置以平衡磁盘上的负载。如先前讨论的,宽条带位于有很多磁盘可用的RAID上。宽条带分割的优势包括相对直接地创造在多个磁盘上的均衡的负载。这就是,如果所有的磁盘是RAID装置的一部分,那么页面的分配将使用所有的磁盘。
图3示出了使用宽条带分割的数据存储***结构300的实施例。如图3所示,每个RAID装置RA-1、RA-2、RA-3以及RA-4(各自的参考标记为301-304)被分割成跨越(例如由至少部分的组成)每个物理磁盘DA-1、DA-2、DA-3、DA-1、DA-2、DA-3以及DA-7(各自的参考标记为311-317)。每个磁盘311-317具有相同的尺寸和类型。这个特殊的数据存储***配置在本领域是公知的“平衡RAID”,而每个RAID装置由与存储***有关的每个物理磁盘的部分组成。平衡RAID配置在***中通过确保每个物理磁盘包括至少部分RAID装置来有益地减少RAID装置的数量。
然而,理想的平衡RAID配置是不可能在所有的数据存储***中。通过实施例的方式,图4描述了RAID配置,其中磁盘中的三个(例如DB-5、DB-6和DB-8,各自的参考标记为415-417)比所示的其余四个(例如DB-1、DB-2、DB-3和DB-4,各自的参考标记为411-414)要大。在这个结构中,现有的数据分配和分类***不能提供最有效的结果。在一个实施例中,现有的RAID分类方法可将最高的分数给分割成跨越最多磁盘和/或具有最大尺寸的磁盘的RAID装置。使用该方法,因此,***可以将装置排序成:RB-1到RB-4,所有都被分割成跨越所有磁盘;接着,通过RB-5到RB-6,条带仅仅跨越磁盘DB-5到DB-7(各自的参考标记为401-406)。使用现有的数据分配方法,只有一旦页面大体上从使用所有的磁盘(RB-1、RB-2、RB-3和RB-4)的RAID上用完,自由列表使用以限制数量的磁盘分割的RAID来分配页面到这些RAID上(由于它们具有较低分数)。因而,这种配置可能得出具有低效数据分配(例如在所有可用的RAID装置中缺乏适当的平衡的数据)的数据存储***,以及可能导致降低***性能,因为计分***在其计分算法中不适于说明RAID装置RB-5和RB-6仅分割成跨越DB-5到DB-7。
在另一个实施例中,图5描述了RAID配置,其中磁盘中的三个(例如,DC-5、DC-6和DC-7,各自的参考标记为415-417)具有与图中所示的其他四个磁盘(例如DC-1、DC-2、DC-3、以及DC-4,各自的参考标记为401-404)相比不同的类型。当多个磁盘类型存在于相同的RAID分层中时,自由列表的平衡RAID组织结构具有问题;这就是,RAID不允许创造使用多个类型的磁盘的RAID。因而,如图5所示,RAID装置不能分割成跨越所有磁盘,相反RAID装置RC-1、RC-2、RC-3和RC-4(各自的参考标记为501-504)属于SATA磁盘,然而RC-5、RC-6、和RC-7(各自的参考标记为505-507)属到FATA磁盘。这里,没有单个的RAID装置在同一分层中跨越所有的磁盘,并因此现有的数据分配方法不能得到最有效的结果。更确切地,在一些现有的***中,当两种类型的磁盘不平衡时,计分***再一次可能首先使用磁盘分类分割成跨越最大数量的磁盘,因为这些磁盘上的RAID装置可能得分较高。当较高得分的空间完全耗尽后,页面池将从较低得分的装置中分配空间,并由此设置成第二组磁盘。这导致了在两个磁盘间可能存在的低效平衡,并且对于***性能不是最佳的。
在进一步的实施例中,RAID“组”或子集划分及分配相似磁盘,例如为了管理故障区域。其中利用分组,这些组可由用户根据需要的保护来设置。分组可因而限制***产生跨越所有磁盘的宽条带的性能,并由此影响自由列表的管理。其中一实施例表示用户设定的分组是RAID封装级别容错(Enclosure Level Fault Tolorance)(ELFT)方法,在一些实施例中可仅使用封装内的单个磁盘的条带。不同的条带可在封装中使用不同的磁盘。如图6所示,分组的RAID配置的实施例被描述(例如,基于用户选择的ELFT)。磁盘DE-1到DE-8(各自的参考标记为611-618)被提供,在第一组631中RAID装置RE-1到RE-4(各自的参考标记为601-604)由磁盘DE-1到DE-4组成,并且,在第二组632中RAID装置RE-5到RE-7(各自的参考标记为605-607)由磁盘DE-5到DE-8组成。虽然这种结构允许整个封装以失效而没有任何给出RAID被接受的可能,但这不可能应用到已知平衡RAID技术的优点。因而,使用分组,当封装不具有平等配置磁盘设置时,这就不可能最大化空间使用的效率。
在进一步的实施例中,在需要通过磁盘的增加或移除来产生更多或更少的数据存储性能或产生更高质量的RAID装置的情形下,现有的数据分配方法不是最优的。例如,对于数据存储***来说,从***中移除低质量或无用的RAID空间以产生更高质量的RAID是有利的。可选择地,当需要增加存储时可增加磁盘。在这些实例中,磁盘必须是“重新分割(re-striped)”的以保持传统上的RAID配置。应当意识到,重新分割程序会使用大量***资源来移动数据到最优的配置。另外地,对于较大的配置来说,完成重新分割程序需要用很长的时间。当磁盘完全满时,重新分割可进一步需要首先移动到临时空间,并由此数据页面在其找到永久位置之前会被移动两次。因此,在一些情形下,由于这些约束,存储***在一个或多个磁盘的增加或移除后,不能合适地重新分割。图7提供了一种实施例结构,这里增加了三个磁盘没有重新分割。RAID装置RD-1、RD-2、RD-3和RD-4(各自的参考标记为701-704)是分割成仅仅跨越首四个物理磁盘DA-1、DA-2、DA-3以及DA-4(各自的参考标记为711-714)。磁盘DA-5、DA-6和DA-7(各自的参考标记为715-717)没有被分配。进一步的地,这里有多个连续的磁盘的增加或移除,***不能重新分割,高度欠组织的结构可导致地适于传统的数据分配方法尤其不好。参考图8,磁盘DA-1到DA-10(各自的参考标记为811-820)与分割成跨越多个磁盘的RAID装置RG-A到RG-G(各自的参考标记为801-807)一起被提供。在这样的数据存储装置上,已知的数据分配方法可导致高度低效的数据分配。
非平衡RAID管理的概述
在一些实施例中,URM可管理自由页面(数据)分配排序以平衡磁盘的利用,在由多个RAID装置组成的数据存储装置中,或在由多个RAID存储装置组成的单个RAID分层中。URM可至少部分地基于磁盘的空间使用上实现平衡。平衡页面分配可更佳地使用多个磁盘尺寸和/或类型,在数据存储装置或单个RAID分层中,并也可减少重新分割RAID装置的必要性。
在一些实施例中,URM可配置为操作多种类型、共享相同磁盘设置的RAID装置。这种配置包括不同类型RAID装置的标准化,应当明白的是不同的RAID等别可以不同的方式管理数据。进一步,每个RAID等别可具有不同的I/O写模式和读取加载在磁盘上。仍进一步,不同页面尺寸可个别地管理数据。例如,可以包括多个页面池和/或数据压缩。因此,URM可使用常规方法来同时管理多种类型的RAID装置、自由列表、页面尺寸等。
为了处理不同的页面尺寸,在一个实施方式中,URM可通过使用磁盘分离(disk segregation)技术,例如磁盘区块或磁盘字节,将磁盘空间的利用标准化。这样的标准化可用于平衡I/O负载跨越所有的磁盘。进一步,标准化可用于包含了多种类型磁盘的数据存储***或RAID分层以及需要它们适当地用于I/O性能的地方。如前面讨论的,传统的RAID配置不允许跨越多个磁盘类型的分配,所以本公开的***和方法可利用平衡来分配存储空间跨越多个磁盘类型。例如,这里FATA和SATA磁盘连接进RAID分层中,URM可在页面池分类确定分配下一个页面到哪个RAID装置中,基于下面更详细描述的平衡。
进一步地,在一些实施方式中,多个页面池分类可存在于单个数据存储***或单个RAID分层中,而分类和与其有关的自由列表可管理由RAID等别、页面尺寸等确定的单个类型空间。每个分类可单独地管理其自由列表。在这种配置中,URM可命令RAID空间来达到期望的平衡,然后允许每个分类来从其自己的RAID空间中来指令分配。
与宽条带相反的,这里RAID装置是被分割成跨越所有可用的磁盘,依照本公开的URM,在一个实施方式中,可划分平衡方法到两个或更多单独的程序中。这些程序可包括一个或多个下面的步骤,但不限于此:1)RAID装置重叠(overlap)程序,这里RAID装置和数据存储***的磁盘管理器可互相通信,以确定可用的自由空间。重叠可用来从一组磁盘中确定空间分配的数量并在RAID装置之间与其通信。2)平衡运算程序,这里运算可用于确定计分来对给出的一组RAID装置平衡页面分配。计算以确定最少使用的RAID装置。3)自由列表平衡,这里***可确定哪个RAID装置进行下一个页面分配。该确定可部分地基于来自平衡运算中计分信息来进行。通过周期性地或连续地监控页面分配并当装置移动到平衡之外时返回请求,RAID装置可被命令用于进一步的分配。4)磁盘增加,这里,如前面讨论的,新的物理磁盘可增加到数据存储***或一单独的RAID分层中,不需要重新分割RAID装置。5)装置修整(pruning),当多余空间存在时,URM可决定移除一个或多个RAID装置。在一些实施方式中,从大量使用的磁盘中移除空间可优选为跨越的磁盘保持平衡。6)用户加入的配置,用户可得到信息以控制URM的多个方面;例如,用户能够监控磁盘负载,并能启动或停止任何上述的性能。这些和其他包括URM的程序在下面的部分中被更详细地讨论。
平衡运算程序
在一些实施方式中,依照本公开的URM***的平衡运算可通过使用现有的用于每个RAID的页面分配和总计其跨越的磁盘以确定每个RAID装置的使用系数(usage factor)。由此,其可平衡从每个磁盘分配的空间的大小。为了确定现有的分配,依照本公开的URM***可对RAID装置发送页面分配信息给磁盘。这是令人满意的,因为在虚拟化环境中的页面不知道在哪个特定的磁盘上,这些页面可保留)。在所有的RAID装置发送页面分配信息给磁盘之后,URM可总结每个磁盘的使用以产生使用系数。使用系数随后被用于在页面池分类自由列表上排序RAID装置。
在一个实施方式中,当分配被改变时,URM***可大体连续地或周期性地平衡自由列表。因此,周期性地发生平衡并仅仅需要最小的CPU、内存和磁盘I/O影响。如此,***可大体连续地或周期性地分配和返回页面到/从自由列表中。
平衡可与一单独的RAID分层有关的局部地发生,或者整体地发生,这里输入可从多个页面池中得出,并且输出可转发到多个页面池。然后输出可局部地用在各自的页面池分类中以命令分配自由列表。
参考图9,参照本公开的一个实施例的平衡运算900可包括一个或多个操作,包括,但不限于清空磁盘使用程序(方框901),计算每个磁盘使用程序(方框902),总重叠磁盘使用程序(方框903),产生装置使用系数程序(方框904)以及通过使用系数排序装置程序(方框905)。每个程序在下面更详细地讨论。
参考图10a和10b,平衡运算900在以下描述,基于图10b中所述的装置实现图10a中所示的实施例。关于程序901,运算可构成为清空***中每个磁盘的使用信息。这个程序可运行以清空任何从先前计算中残留的保留信息。
关于程序902,运算可构成为计算每个装置磁盘的使用率(usage)。每个装置磁盘的使用率可通过将特定磁盘的使用率除以RAID装置分割所跨越的磁盘的数量(例如其上页面分配的数量,也可为逻辑块(extents))来计算出。如图10b所示,例如,RAID装置RG-A的使用率是40,RAID装置RG-B的使用率是42。其他使用率类似地示出。RAID装置RG-A是分割成跨越三个磁盘,DA-1到DA-3,反之,RG-B分割成跨越四个磁盘,DA-1到DA-4。如此,RG-A的每个装置磁盘使用率是40除以3,RG-B的每个装置磁盘使用率是42除以4。每个RAID装置磁盘使用率已经凑整以易于参考。图10a示出了用于所有RAID装置RG-A到RG-B1的这种计算;对于RG-A,结果是13,对于RG-B,结果是10,以此类推。
关于程序903,运算可构成为计算重叠磁盘使用率。重叠磁盘使用率是分割成跨越给定磁盘的单个RAID装置中的每个装置磁盘使用率的总和。例如,如图10b所示,RAID装置RG-A、RG-B、RG-D和RG-E是分割成跨越磁盘DA-1。如进一步所示,仅有RAID装置RG-C和RG-E是分割成跨域磁盘DA-10。与每个这样RAID装置有关的每个装置磁盘使用率的求和,磁盘DA-1在RG-A中为13,在RG-B中为10,在RG-D中为11和在RG-E中为12,其总和是46,如图10a中所示(步骤2,第一张表)。类似地,如图10a所示,对于磁盘DA-10,仅仅RG-C和RG-E的每个装置的总和是23。对于其他磁盘的重叠磁盘使用率的计算可类似地进行,如图10a中所示。然后对给定磁盘的重叠磁盘使用率应用到或发送到给定磁盘的每个RAID逻辑块。例如,与磁盘DA-1有关的重叠磁盘使用率可应用到或发送到DA-1磁盘上的RAID装置RG-A,RG-B,RG-D和RG-E。类似地,与磁盘DA-10有关的重叠磁盘使用率可应用到或发送到DA-10磁盘上的RAID装置RG-C和RG-E。所有这些结果显示在图10A步骤二的第二表内。
关于程序904,在一个实施方式中,运算可配置为产生每个RAID装置的使用系数。该使用系数是通过将给定RAID装置的逻辑块的重叠磁盘使用率的总和,除以分割跨越的磁盘的数目来计算。如图10b所示,例如,RAID装置RG-A分割成跨越磁盘DA-1到DA-3。类似地,RAID装置RG-B分割成跨越磁盘DA-1到DA-4。为了执行这种计算,如图10a中所示(步骤2,表2),对每个RAID装置的重叠磁盘使用率进行求和。这种求和,对于每个RAID装置,存在于方块904.例如,对于RAID装置RG-A,46加上46加上46(对于磁盘DA-1到DA-3的RAID装置RG-A的重叠磁盘使用率)是138。对于RAID装置RG-B,46加上46加上46加上33(对于磁盘DA-1到DA-4的RG-B的重叠磁盘使用率)是171。通过除以磁盘的数目,分别为3和4,RAID装置RG-A的使用系数是46,RAID装置RG-B的使用系数是42。这些结果已经凑整以易于参考。如方块904中所示的,类似的计算可被执行用于每个RAID装置。在一些实施方式中,磁盘的数量(上述等式中的除数)可先于进行除法前乘以磁盘值。该磁盘值可表示特定磁盘的主观评价的值,基于其类型、尺寸、结构等。在这些实施方式中,使用系数可以是重叠磁盘使用率的总和除以RAID装置的逻辑块的数量和磁盘值的积。
关于程序905,在一些实施方式中,运算可配置为根据先前的计算来分类RAID装置,例如,根据最低使用系数。他们可被单独地排序以用于页面池分类,如每个分类可配置为管理其自身的自由列表并分配页面。当压缩被应用时,一个页面分类可具有多个页面尺寸,并且这些列表中的每一个可单独地被排序。
与本公开一致的运算900可仅使用最小的内存、CPU负载和磁盘I/O。如描述的,其计算可仅需要很少数量的值。对于CPU负载,其可使用简单的倍增、除法和增加来确定平衡。对于磁盘I/O,其可访问有限存储固有的信息的内存。因此,该运算可如期望的或需要的一样频繁执行来实现这里描述的URM方法而不需要显著的计算资源。
自由列表平衡程序
在一些实施方式中,可包括自由列表平衡程序为URM的一部分,以确定自由列表分配的命令。自由列表平衡可基于输入(如前述的使用运算来计算)的使用系数以确定自由列表分配的命令。自由列表可从最低使用系数的RAID装置中分配页面,尽管其他的分配是可能的。当确定了使用系数,***会检查所有类型的RAID装置,包括那些具有不同RAID等别和页面尺寸的。
图11描述了自由列表命令进一步分配的实施例,包括3个RAID5装置(各自的参考标记为1101,1102和1104)和3个RAID10装置(各自的参考标记为1103,1105和1106)。如描述的,基于所示的使用系数(在这个实施例中,分配是如前述的首先给具有最低使用系数的装置),对于RAID5的分配将首先分配给顶部RAID5装置1101。另外,如所示的,例如基于使用系数,对于RAID10空间的分配可首先分配给顶部RAID装置1103。如所示的,因使用URM,命令不必须与RAID类型相一致,因而进行更灵活的分配以达到一更佳平衡的***。
在一些实施方式中,对于每个RAID装置的自由列表可产生自动评估边界(auto evaluation boundaries)。自动评估边界可为自由列表平衡评估提供滞后机构(hysteresis mechanism)以及可能的重新排序。如果分配到给定RAID装置的页面的数量高于预定上边界或低于预定下边界,平衡的自动评估可发生。边界可通过使用当前分配页面数量在平衡时加上或减去边界差值来确定。所有的RAID装置可使用相同的边界差值,或它们可使用不同的差值。边界差值可通过将页面池总共页面数量除以用户配置值来计算。这样的值可以例如是10000或其他任何由用户期望的值。自动评估可发生在跨过边界时,导致自由列表的重新排序以达到更佳的平衡。
如此,边界可被提供为“触发器”来执行如上所述的边界评估。如图12所示,表示边界的实施例示出具有上评估边界1201,下评估边界1202,以及平衡点的分配1203,其与装置中可用空间有关(这里“0”代表一空装置(参考标记为1211)和“满”代表完全被使用的装置(参考标记为1212))。页面分配可由此继续直到RAID装置耗尽页面或不同的装置在自由列表中更高具有可用的页面。在一个实施方式中,虽然平衡运算900在运行,但是分配可继续发生,使用以前可用的使用系数。
增加/移除磁盘空间程序
在一些实施方式中,依照本公开的URM可配置为允许额外的物理磁盘增加到存储***中(或可选择地移除),甚至这里相关的磁盘分配大大地异于磁盘。当一组新磁盘增加到***中时,RAID装置可被分配在这组新磁盘上。例如,如图7所示,磁盘DA-5到DA-7增加到已经具有分割成跨越磁盘DA-1到DA-5的RAID装置的***中。一个或多个RAID装置可产生在这些新磁盘DA-5到DA-7上,并且此后URM可平衡磁盘上的页面分配,不需要重新分割RAID装置。
在相反的情形下,磁盘被从存储***中移除,磁盘空间分配由于部分RAID装置的移除变得不平衡。其中一组磁盘可能大量地被分配,并且另一组轻微地被分配。这种情形下,分配可使得轻微分配的磁盘运行URM来平衡页面分配。当给磁盘配置评估时,页面池需要检查磁盘空间分配的平衡,使用上述的运算。如果存在失衡,页面池可执行为磁盘分类增加空间程序。增加空间程序可导致RAID装置使用较少被利用的磁盘,或者较少利用或被大量利用的磁盘。磁盘空间分配的失衡可导致产生多个RAID装置。因此,页面池可要求额外空间直到磁盘大体上接***衡。在一个实施方式中,页面池全面的配置可包括参数来控制增加空间程序。这个参数可确定为大量分配与轻微分配的比率。如果该比率在失衡控制之上,则启动增加空间程序。如果其维持在某个值之下,则不启动增加空间程序。
装置“修整(Pruning)”程序
在一些实施方式中,依照本公开的URM可包括装置“修整”程序,其中RAID装置可按照相关计分顺序被移除,如使用上述公开的运算确定的。修整也可考虑在RAID装置上分配的空间,为了移动最少数量的页面。进一步,当确定移除哪个RAID装置时,修整也可考虑磁盘的利用。可以知道的是,从大量使用的磁盘中减少分配可改善给定RAID分层中的平衡和磁盘的性能。修整程序可配置为以下列次序来移除RAID装置,其最优化到以最少次数来移动页面:1)移除低计分的空间,其可包括没有满足预期RAID参数或没有使用预期磁盘数量的RAID装置;2)移除低计分的多余空间;3)移除不是低计分的多余空间;4)移除大量使用磁盘的多余空间;5)移除临时空间;6)移除需要临时空间使用的装置。
上述的对于每种类型装置的移除,页面池可包括装置尺寸和/或自由页面百分比以便从可能大量RAID装置中选择要移除的RAID装置。磁盘使用系数,如上所述的,可增加到这种移除装置的确定中以允许***从避免大量被使用的磁盘,如排除具有高磁盘使用系数的RAID装置可改善***的性能。
在一些实施方式中,装置修整程序可使用品质计分来确定哪个RAID装置是配置为用户所需要的。品质计分可比较当前的RAID装置配置和假设的“最好”的可能的RAID配置。例如,如果多个磁盘是可用的,RAID装置品质计分可相对地较低,因为更多空间可从这些磁盘中被分配。在一些实施方式中,品质计分可给下述参数评估以便确定品质计分:RAID类型,条带宽度,重复系数(repeat factor),磁盘类型,以及磁盘活页夹等。利用URM,没有适当地配置的RAID具有低品质计分,其可被移除出***。
这里描述的非平衡RAID管理程序的优点
依照本公开的非平衡RAID管理可要求处理数据存储***内或单个RAID分层内不同磁盘类型的组合,并用于额外磁盘组织边界,如上所述。这是因为传统的“宽条带”方法不能用于这样的配置内,或者由于RAID装置需要大量计算资源以进行重新分割。因此,URM可被使用以便在传统RAID配置不能产生使用多个磁盘类型的装置时,平衡分配。
依照本公开的URM可被使用在任何使用RAID装置的数据存储***或任何RAID分层上。关于不同的RAID分层,在一些实施方式中,优选在分层上使用URM,而不是在最高分层上,如对于最高分层磁盘的页面分配要求由传统宽条带方法得到的最佳性能。如此,在一些实施方式中,对于URM依靠分层来不同地操作是有利的。对于最高分层,例如,用户想得到宽条带的优点(在一些实例中,其可要求RAID装置是可重新分割的)。例如,对于最低分层,用户想最小化重新分割,由于对于最低分层,性能不是重要的,所以一些潜在的页面分配失衡是可容忍的。应当明白的是,在一些配置中,最低分层具有大多数空间并且使用最长的时间来重新分割。如此,避免在这个空间上使用现在描述的URM方法重新分割可节省***资源。在任何分层上,其中使用URM,执行并不需要大量资源来平衡页面分配,因为额外的数据要求不会产生大结构,并且平衡运算不需要大量存储器和处理资源来完成这些功能。
在一些实施方式中,数据存储***使用依照本公开的URM程序,可成为信息处理***的一部分。对于本公开的目的,信息处理***看包括任何手段或手段的集成,操作为计算、分类、处理、传输、接收、恢复、开始、开关、存储、显示、证明、检测、记录、复制、处理,或使用用于商业、科学、空着或其他目的的任何形式的信息、情报或数据。例如,信息处理***可以是个人电脑,网络存储装置或任何其他合适的装置,以及可在尺寸、形状、性能、功能和价格上变化。信息处理***可包括随机存取存储器(RAM),一个或多个处理资源例如中央处理单元(CPU)或硬件或软件控制逻辑,ROM,和/或其他类型的非易失性存储器。信息处理***的额外组件可包括一个或多个磁盘,一个或多个网络端口用于与外界装置通信以及多个输入和输出(I/O)装置,例如键盘、鼠标和视频显示器。信息处理***也可包括一个或多个总线,操作为存在多个硬件组件间传输通信。
虽然已经参照各种实施方式描述了本公开,但本领域普通技术人员将会意识到在不偏离本发明的精神和范围的情况下,可在形式和细节上作出改变。
Claims (20)
1.一种信息处理***,包括:
多个RAID装置,其中,定义了多个物理数据存储装置,其中至少一个RAID装置由至少一个不同类型的物理存储装置或相比于多个RAID装置中的至少另外一个的不同数目的物理存储装置构成;
以及处理单元,其中该处理单元配置为动态地分配数据到所述多个RAID装置,以便平衡数据I/O跨越多个RAID装置。
2.如权利要求1所述的信息处理***,其中平衡数据I/O包括确定每个所述RAID装置的使用系数。
3.如权利要求2所述的信息处理***,其中所述使用系数用于在页面池排序自由列表上分类所述多个RAID装置。
4.如权利要求2所述的信息处理***,其中,所述使用系数至少部分地基于每个所述RAID装置的使用率,其包括通过将所述RAID装置的使用率除以磁盘的数量,所述RAID装置是被分割成跨越所述数量的磁盘。
5.如权利要求4所述的信息处理***,其中,所述使用系数进一步至少部分地基于重叠磁盘使用率,其包括每个所述RAID装置的所述RAID装置磁盘使用率的总和,所述RAID装置是被分割成跨越物理磁盘。
6.如权利要求5所述的信息处理***,其中,所述使用系数包括每个所述物理磁盘的重叠磁盘使用率的总和,所述RAID装置是被分割成跨越每个物理磁盘。
7.如权利要求2所述的信息处理***,其中,所述处理单元可进一步配置为基于各自的所述使用系数来排序所述多个RAID装置。
8.如权利要求1所述的信息处理***,其中,所述处理单元可进一步配置为当所述RAID装置跨越数据存储边界时平衡数据I/O。
9.如权利要求1所述的信息处理***,其中,所述处理单元可进一步配置为当从所述信息处理***中增加或移除物理磁盘时平衡数据I/O。
10.一种在具有定义多个RAID装置的多个物理数据存储装置中动态平衡数据分配的方法,其中,多个RAID装置中的至少一个由至少一个不同类型的物理存储装置或相比于多个RAID装置中的至少另外一个的不同数量的物理存储装置的构成,包括
对每个RAID装置确定其各自的使用系数;以及
至少部分的基于所述使用系数平衡数据I/O。
11.如权利要求10所述的方法,其中,所述使用系数可用于在页面池分类自由列表上排序所述多个RAID装置。
12.如权利要求10所述的方法,进一步包括基于所述使用系数来移除RAID装置。
13.如权利要求12所述的方法,其中,移除具有最低所述使用系数的RAID装置。
14.如权利要求10所述的方法,其中,在RAID装置跨越数据存储边界时发生平衡。
15.一种在包括了多个RAID装置的存储***中用于从RAID装置分配空间的方法,所述RAID装置具有多个物理磁盘,该方法包括:
计算由所述RAID装置于每个所述多个物理磁盘中使用的空间的大小;
通过对由所述RAID装置于每个所述多个物理磁盘中使用的空间的大小求和来计算由所述RAID装置使用的空间的总量;
基于计算得到的所述空间的总量和每个所述多个物理磁盘的相对性能参数计算所述RAID装置的使用系数;
基于计算得到的所述使用系数在所述多个RAID装置中排序所述RAID装置;以及
基于上述排序从所述多个RAID装置中的一个分配空间。
16.如权利要求15所述的方法,其中,所述多个物理磁盘中的至少一个相比于所述多个物理磁盘中的至少另外一个是不同类型的。
17.如权利要求15所述的方法,其中,所述多个物理磁盘中的至少一个相比于所述多个物理磁盘中的至少另外一个是不同尺寸的。
18.如权利要求15所述的方法,其中,进一步包括:
新增磁盘给所述多个物理磁盘;
定义包括所述新增磁盘的新的RAID装置;
基于所述多个RAID装置与所述新的RAID装置的各自的使用系数来排序多个RAID装置与所述新的RAID装置;以及
基于上述排序从RAID装置中分配空间。
19.如权利要求18所述的方法,其中,所述新的RAID装置可包括所述新增磁盘与所述多个物理磁盘中的至少一个。
20.如权利要求18所述的方法,其中,所述新的RAID装置可从所述多个RAID装置归类到单独的组中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/310,316 | 2011-12-02 | ||
US13/310,316 US9015411B2 (en) | 2011-12-02 | 2011-12-02 | System and method for unbalanced raid management |
PCT/US2012/067201 WO2013082364A1 (en) | 2011-12-02 | 2012-11-30 | System and method for unbalanced raid management |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104094254A true CN104094254A (zh) | 2014-10-08 |
CN104094254B CN104094254B (zh) | 2018-01-09 |
Family
ID=48524849
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280059163.6A Active CN104094254B (zh) | 2011-12-02 | 2012-11-30 | 用于非平衡raid管理的***和方法 |
Country Status (4)
Country | Link |
---|---|
US (3) | US9015411B2 (zh) |
EP (1) | EP2786281B1 (zh) |
CN (1) | CN104094254B (zh) |
WO (1) | WO2013082364A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105808171A (zh) * | 2016-04-01 | 2016-07-27 | 浪潮电子信息产业股份有限公司 | 一种平衡存储的方法、装置和*** |
CN106997277A (zh) * | 2017-03-03 | 2017-08-01 | 北京中存超为科技有限公司 | 高效利用回收的存储空间的方法及装置 |
CN108228079A (zh) * | 2016-12-21 | 2018-06-29 | 伊姆西Ip控股有限责任公司 | 存储管理方法和设备 |
CN109189331A (zh) * | 2018-08-09 | 2019-01-11 | 河北工业大学 | 一种动态数据布局方法 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6142599B2 (ja) * | 2013-03-18 | 2017-06-07 | 富士通株式会社 | ストレージシステム、ストレージ装置および制御プログラム |
CN104731517A (zh) * | 2013-12-19 | 2015-06-24 | ***通信集团四川有限公司 | 一种存储池容量分配方法和装置 |
US8868825B1 (en) * | 2014-07-02 | 2014-10-21 | Pure Storage, Inc. | Nonrepeating identifiers in an address space of a non-volatile solid-state storage |
US9678839B2 (en) * | 2014-09-12 | 2017-06-13 | Microsoft Technology Licensing, Llc | Scalable data storage pools |
US9857986B2 (en) | 2015-06-30 | 2018-01-02 | International Business Machines Corporation | Wear leveling of a memory array |
US10482071B1 (en) * | 2016-01-26 | 2019-11-19 | Pure Storage, Inc. | Systems and methods for providing metrics for a plurality of storage entities of a multi-array data storage system |
US11182076B2 (en) * | 2016-09-08 | 2021-11-23 | International Business Machines Corporation | Managing unequal network shared disks (NSD) in a computer network |
US10365958B2 (en) | 2016-09-13 | 2019-07-30 | Hewlett Packard Enterprise Development Lp | Storage drive management to fail a storage drive based on adjustable failure criteria |
US10409682B1 (en) * | 2017-02-24 | 2019-09-10 | Seagate Technology Llc | Distributed RAID system |
WO2018199795A1 (en) | 2017-04-27 | 2018-11-01 | EMC IP Holding Company LLC | Best-effort deduplication of data |
US11402998B2 (en) | 2017-04-27 | 2022-08-02 | EMC IP Holding Company LLC | Re-placing data within a mapped-RAID environment comprising slices, storage stripes, RAID extents, device extents and storage devices |
US11099983B2 (en) | 2017-04-27 | 2021-08-24 | EMC IP Holding Company LLC | Consolidating temporally-related data within log-based storage |
US11755224B2 (en) | 2017-07-27 | 2023-09-12 | EMC IP Holding Company LLC | Storing data in slices of different sizes within different storage tiers |
US10521304B1 (en) * | 2017-08-02 | 2019-12-31 | EMC IP Holding Company LLC | Multidimensional RAID |
US10521302B1 (en) * | 2017-08-04 | 2019-12-31 | EMC IP Holding Company LLC | Managing mapped raid extents in data storage systems |
US20190087111A1 (en) * | 2017-09-15 | 2019-03-21 | Seagate Technology Llc | Common logical block addressing translation layer for a storage array |
WO2019083389A1 (en) | 2017-10-26 | 2019-05-02 | EMC IP Holding Company LLC | MANAGING A FILE SYSTEM IN MULTIPLE LOGIC UNIT NUMBERS (LUN) |
WO2019083391A1 (en) | 2017-10-26 | 2019-05-02 | EMC IP Holding Company LLC | ACCORDING DATA STORAGE EQUIPMENT |
EP3489646A1 (en) * | 2017-11-23 | 2019-05-29 | AT & S Austria Technologie & Systemtechnik Aktiengesellschaft | Determining a physical quantity by means of a native component carrier |
CN110389858B (zh) * | 2018-04-20 | 2023-06-09 | 伊姆西Ip控股有限责任公司 | 存储设备的故障恢复方法和设备 |
US10592156B2 (en) * | 2018-05-05 | 2020-03-17 | International Business Machines Corporation | I/O load balancing between virtual storage drives making up raid arrays |
US11748196B2 (en) | 2018-06-29 | 2023-09-05 | International Business Machines Corporation | Adaptive parity rotation for redundant arrays of independent disks |
US11157361B2 (en) * | 2018-06-29 | 2021-10-26 | International Business Machines Corporation | Efficient utilization of storage space in arrays of storage drives |
CN112306372B (zh) | 2019-07-31 | 2024-07-05 | 伊姆西Ip控股有限责任公司 | 用于处理数据的方法、设备和程序产品 |
CN114115698A (zh) * | 2020-08-27 | 2022-03-01 | 伊姆西Ip控股有限责任公司 | 在存储***中创建条带的方法、设备和计算机程序产品 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1499382A (zh) * | 2002-11-05 | 2004-05-26 | 华为技术有限公司 | 廉价冗余磁盘阵列***中高效高速缓存的实现方法 |
US20050066127A1 (en) * | 2001-10-22 | 2005-03-24 | Anuja Korgaonkar | Determining maximum drive capacity for RAID-5 allocation in a virtualized storage pool |
CN1971499A (zh) * | 2005-11-23 | 2007-05-30 | 国际商业机器公司 | 再平衡条带盘数据的方法和*** |
CN101526882A (zh) * | 2008-03-03 | 2009-09-09 | 中兴通讯股份有限公司 | 独立磁盘冗余阵列子***中逻辑单元重建的方法及装置 |
US20110167219A1 (en) * | 2006-05-24 | 2011-07-07 | Klemm Michael J | System and method for raid management, reallocation, and restripping |
US7984259B1 (en) * | 2007-12-17 | 2011-07-19 | Netapp, Inc. | Reducing load imbalance in a storage system |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002182859A (ja) * | 2000-12-12 | 2002-06-28 | Hitachi Ltd | ストレージシステムおよびその利用方法 |
US6862609B2 (en) | 2001-03-07 | 2005-03-01 | Canopy Group, Inc. | Redundant storage for multiple processors in a ring network |
US6629211B2 (en) * | 2001-04-20 | 2003-09-30 | International Business Machines Corporation | Method and system for improving raid controller performance through adaptive write back/write through caching |
US6718434B2 (en) * | 2001-05-31 | 2004-04-06 | Hewlett-Packard Development Company, L.P. | Method and apparatus for assigning raid levels |
US7346831B1 (en) * | 2001-11-13 | 2008-03-18 | Network Appliance, Inc. | Parity assignment technique for parity declustering in a parity array of a storage system |
JP4318914B2 (ja) * | 2002-12-26 | 2009-08-26 | 富士通株式会社 | ストレージシステム及びその動的負荷管理方法 |
US7664913B2 (en) * | 2003-03-21 | 2010-02-16 | Netapp, Inc. | Query-based spares management technique |
EP1668486A2 (en) | 2003-08-14 | 2006-06-14 | Compellent Technologies | Virtual disk drive system and method |
JP4857818B2 (ja) * | 2006-03-02 | 2012-01-18 | 株式会社日立製作所 | ストレージ管理方法およびストレージ管理サーバ |
JP2008090372A (ja) * | 2006-09-29 | 2008-04-17 | Hitachi Ltd | ストレージ装置及び負荷分散方法 |
US7949847B2 (en) * | 2006-11-29 | 2011-05-24 | Hitachi, Ltd. | Storage extent allocation method for thin provisioning storage |
WO2008070813A2 (en) | 2006-12-06 | 2008-06-12 | Fusion Multisystems, Inc. (Dba Fusion-Io) | Apparatus, system, and method for a front-end, distributed raid |
JP2008181416A (ja) * | 2007-01-25 | 2008-08-07 | Hitachi Ltd | 記憶システム及びデータ管理方法 |
JP2008204041A (ja) * | 2007-02-19 | 2008-09-04 | Hitachi Ltd | ストレージ装置及びデータ配置制御方法 |
US20090204758A1 (en) * | 2008-02-13 | 2009-08-13 | Dell Products, Lp | Systems and methods for asymmetric raid devices |
US7945733B2 (en) * | 2008-12-12 | 2011-05-17 | Lsi Corporation | Hierarchical storage management (HSM) for redundant array of independent disks (RAID) |
US8161237B2 (en) * | 2009-03-27 | 2012-04-17 | Lenovo (Singapore) Pte. Ltd. | Asymmetric load balancing for RAID storage systems |
US8677064B2 (en) * | 2010-11-30 | 2014-03-18 | Lsi Corporation | Virtual port mapped RAID volumes |
US20120278527A1 (en) * | 2011-04-26 | 2012-11-01 | Byungcheol Cho | System architecture based on hybrid raid storage |
-
2011
- 2011-12-02 US US13/310,316 patent/US9015411B2/en active Active
-
2012
- 2012-11-30 CN CN201280059163.6A patent/CN104094254B/zh active Active
- 2012-11-30 WO PCT/US2012/067201 patent/WO2013082364A1/en unknown
- 2012-11-30 EP EP12852809.8A patent/EP2786281B1/en active Active
-
2015
- 2015-02-23 US US14/628,955 patent/US9454311B2/en active Active
-
2016
- 2016-08-26 US US15/248,485 patent/US9678668B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050066127A1 (en) * | 2001-10-22 | 2005-03-24 | Anuja Korgaonkar | Determining maximum drive capacity for RAID-5 allocation in a virtualized storage pool |
CN1499382A (zh) * | 2002-11-05 | 2004-05-26 | 华为技术有限公司 | 廉价冗余磁盘阵列***中高效高速缓存的实现方法 |
CN1971499A (zh) * | 2005-11-23 | 2007-05-30 | 国际商业机器公司 | 再平衡条带盘数据的方法和*** |
US20110167219A1 (en) * | 2006-05-24 | 2011-07-07 | Klemm Michael J | System and method for raid management, reallocation, and restripping |
US7984259B1 (en) * | 2007-12-17 | 2011-07-19 | Netapp, Inc. | Reducing load imbalance in a storage system |
CN101526882A (zh) * | 2008-03-03 | 2009-09-09 | 中兴通讯股份有限公司 | 独立磁盘冗余阵列子***中逻辑单元重建的方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105808171A (zh) * | 2016-04-01 | 2016-07-27 | 浪潮电子信息产业股份有限公司 | 一种平衡存储的方法、装置和*** |
CN108228079A (zh) * | 2016-12-21 | 2018-06-29 | 伊姆西Ip控股有限责任公司 | 存储管理方法和设备 |
CN106997277A (zh) * | 2017-03-03 | 2017-08-01 | 北京中存超为科技有限公司 | 高效利用回收的存储空间的方法及装置 |
CN106997277B (zh) * | 2017-03-03 | 2019-12-13 | 北京中存超为科技有限公司 | 高效利用回收的存储空间的方法及装置 |
CN109189331A (zh) * | 2018-08-09 | 2019-01-11 | 河北工业大学 | 一种动态数据布局方法 |
CN109189331B (zh) * | 2018-08-09 | 2021-08-17 | 河北工业大学 | 一种动态数据布局方法 |
Also Published As
Publication number | Publication date |
---|---|
US9015411B2 (en) | 2015-04-21 |
EP2786281A1 (en) | 2014-10-08 |
US9678668B2 (en) | 2017-06-13 |
EP2786281A4 (en) | 2015-07-08 |
US20130145091A1 (en) | 2013-06-06 |
WO2013082364A1 (en) | 2013-06-06 |
CN104094254B (zh) | 2018-01-09 |
EP2786281B1 (en) | 2019-10-02 |
US20160364149A1 (en) | 2016-12-15 |
US20150169232A1 (en) | 2015-06-18 |
US9454311B2 (en) | 2016-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104094254A (zh) | 用于非平衡raid管理的***和方法 | |
EP2766803B1 (en) | A method and system for consolidating a plurality of heterogeneous storage systems in a data center | |
US9798471B2 (en) | Performance of de-clustered disk array by disk grouping based on I/O statistics | |
CN107220148B (zh) | 针对独立磁盘冗余阵列的重建方法和设备 | |
CN101971168B (zh) | 动态量化和提高分布式数据存储***的可靠性 | |
CN105589812B (zh) | 磁盘碎片整理方法、装置及主机 | |
US9405583B2 (en) | Resource provisioning based on logical profiles and piecewise objective functions | |
US9569268B2 (en) | Resource provisioning based on logical profiles and objective functions | |
CN102200936A (zh) | 适用于云存储的智能配置存储备份方法 | |
CN103946846A (zh) | 使用虚拟驱动作为用于raid组的热备用 | |
CN103793336A (zh) | 在存储***中实现丢失保护的数据放置的方法和*** | |
CN104272244A (zh) | 用于对处理进行调度以实现空间节省的***、方法和计算机程序产品 | |
US9141288B2 (en) | Chargeback based storage recommendations for datacenters | |
CN106293492B (zh) | 一种存储管理方法及分布式文件*** | |
Douglis et al. | Content-aware load balancing for distributed backup | |
CN105022587A (zh) | 一种设计磁盘阵列的方法和存储装置 | |
CN110413203A (zh) | 用于管理存储***的方法、设备和计算机程序产品 | |
CN103761059A (zh) | 一种用于海量数据管理的多盘位存储方法及*** | |
CN111782135A (zh) | 数据存储方法、***、数据节点和计算机可读存储介质 | |
CN103577337B (zh) | 存储***的空间分配方法和设备 | |
CN109725823A (zh) | 用于管理混合存储盘阵列的方法和设备 | |
US20170185338A1 (en) | Efficient method of combining parity groups for uniform load distribution and maximizing parallelization in parity de-clustered and sliced disk raid architecture | |
JP2015153123A (ja) | アクセス制御プログラム、アクセス制御方法、およびアクセス制御装置 | |
US11860746B2 (en) | Resilient data storage system with efficient space management | |
US20110264856A1 (en) | Method and system for allocating storage space |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |