Multi-level Raid 91.560 1 Multi-level Raid Agenda • Background - Definitions - What is it? - Why would anyone want it? • Design Issues - Configuration and User Interface Expansion Memory Usage Virtual Driver Implementation 2 Multi-level Raid Definitions (according to RAB) • Logical Disk - a set of consecutively addressed member • • • • disk blocks that is part of a single virtual disk-tomember disk mapping. Logical Volume - A virtual disk made up of logical disks. Also called a virtual disk, volume set, partition. Member Disk - A disk that is in use as a member of a disk array. Virtual Disk - synonym for volume set. Volume set - A collection of user data extents presented to an operating environment as a range of consecutive logical block addresses. A volume set is the disk array object most closely resembling a disk when viewed by the operating environment. 3 Multi-level Raid Background • What is ‘Multi-level Raid’? - Multi-level Raid is the combining of two (or more) levels of Raid algorithms into a single addressable logical unit. - Ex. Raid10, Raid50, Raid30, Raid00, Raid 11, Raid 100 Raid 50 Volume Set Raid 0 layer (Virtual Disk) Raid 5 layer (Logical Disk) (Logical Disk) (Logical Disk) 4 Multi-level Raid Background (What) Host Address Block 0 Block 1 Block 2 Block 3 Block 4 …. Raid 0 Level Raid 5 Level 0-255 Block 0-1023 256-511 512-767 Block 1024-2047 768-1023 Parity Block 3061 Block 2048-3061 5 Multi-level Raid Background (Why) • Why use Multi-level Raid? • For Performance - For the 3x5 Raid 50 shown, performance is 3x a single Raid 5 • For Capacity Without Sacrificing Reliability - A 3x5 Raid 50 can survive 3 failures, while a 12+1 Raid 5 with the same capacity can only survive 1 • For Capacity Without Host Involvement - Striping units at the host level is difficult or impossible in some clustered environments 6 Multi-level Raid Design Issues - Configuration • What makes up a raid group? - In our current model a raid group is a set of physical disks on which one or more logical disks is created by partitioning. • What makes up a logical disk? - Currently, a logical disk is a slice of a raid group. - Currently, a logical disk is equivalent to a volume set. - A partition is a logical disk. • What is a volume set? - A volume set could be a single logical disk A volume set could be a collection of logical disks A Raid 50 is a type of volume set, and a type of logical disk A Raid 5 logical disk, that is part of a Raid 50 is not a volume set. 7 Multi-level Raid Design Issues -Configuration • There are at least 2 approaches for creating Raid 50 volume sets. - Stripe across logical disks (including partitions) > > > > The underlying Raid 5 units can be partitions. In effect you could (not that you’d want to) create a 3x5 Raid 50 on 5 drives. The resulting volume sets can not be further partitioned Advantages : more flexibility, physical disk units can be part of a Raid 50 and Raid 5 simultaneously, may support a layered architecture better. Disadvantages : must keep the Raid 5 logical disks from being visible to the host - Build multi-level Raid Groups > > > Multiple raid groups are combined into a ‘super raid group’. Raid 50 logical disks are then created by taking slices (partitions) of the super raid group. Advantages : The Raid 5 groups are never visible to the host Disadvantages : All space on the physical drives can only be used for Raid 50 8 Multi-level Raid Design Issues - Configuration • Striping across arbitrary partitions seems like the best • approach. How should this be presented to a user? - How do we keep the component Raid 5 logical disks from being accessed independently? - The resulting Raid 50 will span multiple Raid groups. How does the GUI hierarchically display that? - How does the user specify the combinations? 9 Multi-level Raid Design Issues - Expansion • How do we handle expansion of Raid groups that hold the component Raid 5 logical disks? - In some ways, there is no issue. > The expansion of a Raid group does not affect the capacity of the Raid 5 logical disks. - The issue is geometry > > If the Raid 5 geometry changes, the Raid 0 stripe element size will be more or less efficient. If the Raid 5 logical disks have different geometry, the way to be efficient is to use a least common multiple approach. • Is it possible to expand the Raid 50 volume set? - Its possible, but since it cannot be further partitioned, there may not be reason to allow it. 10 Multi-level Raid Design Issues - Memory • A multi-level Raid design requires data to be reorganized at each level. - Raid 0 layer splits data into 1 or more chunks per logical Raid 5 disk - Raid 5 layer must split each chunk into data for each physical disk • This reorganization is an extra computational step • A bigger problem is allocating ‘extra’ data buffers. - The upper layer can only allocate what it needs for the host data. - The lower layers must get additional buffers for parity and prereads. 11 Multi-level Raid Design Issues - Virtual Drivers • Multi-level Raid is an excellent opportunity to take • advantage of the Virtual Driver architecture. The current model is: Cache Driver Lun Driver Lun Driver Raid Driver Lun Driver Raid Driver 12 Multi-level Raid Design Issues - Virtual Drivers • A multi-level Raid driver stack could look like this: Cache Driver Lun Driver Lun Driver Lun Driver Raid Driver / Stripe Driver Raid Driver Raid Driver 13
© Copyright 2026 Paperzz