{"id":411,"date":"2012-12-21T15:30:36","date_gmt":"2012-12-21T20:30:36","guid":{"rendered":"http:\/\/www.smbitjournal.com\/?p=411"},"modified":"2012-12-21T16:01:12","modified_gmt":"2012-12-21T21:01:12","slug":"standard-network-raid-notation-standard-sam-raid-notation","status":"publish","type":"post","link":"https:\/\/smbitjournal.com\/2012\/12\/standard-network-raid-notation-standard-sam-raid-notation\/","title":{"rendered":"Network RAID Notation Standard (SAM RAID Notation)"},"content":{"rendered":"
As the RAID landscape becomes more complex with the emergence of network RAID there is an important need for a more complex and concise notation system for RAID levels involving a network component.<\/p>\n
Traditional RAID comes in single digit notation and the available levels are 0, 1, 2, 3, 4, 5, 6, 7.\u00a0 Level 7 is unofficial but widely accepted as triple parity RAID (the natural extension of RAID 5 and RAID 6) and RAID 2 and RAID 3 are effectively disused today.<\/p>\n
Nested RAID, one RAID level within another, is handled by putting single digit RAID levels together such as RAID 10, 50, 61, 100, etc.\u00a0 These can alternatively be written with a plus sign separating the levels like RAID 1+0, 5+0, 6+1, 1+0+0, etc.<\/p>\n
There are two major issues with this notation system, beyond the obvious issue that not all RAID types or extensions are accounted for by the single digit system with many of the aspects of proprietary RAID systems such as ZRAID, XRAID and BeyondRAID being unaccounted for in the notation system.\u00a0 The first is a lack of network RAID notation and the second is a lack of specific denotation of intra-RAID configuration.<\/p>\n
Network RAID comes in two key types, synchronous and asynchronous.\u00a0 Synchronous network RAID operates effectively identically to its non-networked counterpart.\u00a0 Asynchronous functions the same but brings extra risks as data may not be synchronized across devices at the time of a device failure.\u00a0 So the differences between the two need to be visible in the notation.<\/p>\n
Synchronous RAID should be denoted with parenthesis.\u00a0 So two local RAID 10 systems mirrored over the network (a la DRBD) would be denoted RAID 10(1).\u00a0 The effective RAID level for risk and capacity calculations would be the same as any RAID 101 but this informs all parties at a glance that the mirror is over a network.<\/p>\n
Asynchronous RAID should be denoted with brackets.\u00a0 So two local RAID 10 systems mirrored over the network asynchronously would be denoted as RAID 10[1] making it clear that there is a risky delay in the system.<\/p>\n
There is an additional need for a different type of replication at a higher, filesystem level (a la rsync) that, while not truly related to RAID, provides a similar function for cold data and is often used in RAID discussions and I believe that storage engineers need the ability to quite denote this as well.\u00a0 This asynchronous file-system level replication can be denoted by braces.\u00a0 Only one notation is needed as file-system level replication is always asynchronous.\u00a0 So as an example, two RAID 6 arrays synced automatically with a block-differential file system replication system would be denoted as RAID 6{1}.<\/p>\n
To further simplify RAID notation and to shorten the obvious need to write the word “RAID” repeatedly as well as to remove ourselves from the traditional distractions of what the acronym stands for so that we can focus on the relevant replication<\/em> aspects of it, a simple “R” prefix should be used.\u00a0 So RAID 10 would simply be R10.\u00a0 Or a purely networked mirror might be R(1).<\/p>\n This leaves one major aspect of RAID notation to address and that is the size of each component of the array.\u00a0 Often this is implied but some RAID levels, especially those that are nested, can have complexities missed by traditional notation.\u00a0 Knowing the total number of drives in an array does not always denote the setup of a specific array.\u00a0 For example a 24 drive R10 is assumed to be twelve pairs of mirrors in a R0 stripe.\u00a0 But it could be eight sets of triple mirrors in a R0 stripe.\u00a0 Or it could even be six quad mirrors.\u00a0 Or four sext mirrors.\u00a0 Or three oct mirrors.\u00a0 Or two dodeca mirrors.\u00a0 While most of these are extremely unlikely, there is a need to notate it.\u00a0 For the set size we use a superscript number to denote the size of that set.\u00a0 Generally this is only needed for one aspect of the array, not all, as others can be derived, but when in down it can be denoted explicitly.<\/p>\n So an R10 array using three-way mirror sets would be R13<\/sup>0.\u00a0 Lacking the ability to write a superscript you could also write it as R1^3+0.\u00a0 This notation does not state the complete array size, only its configuration type.\u00a0 If all possible superscripts are included a full array size can be calculated using nothing more.\u00a0 If we have an R10 of four sets of three-way mirrors we could write it R13<\/sup>04<\/sup> which would inform us that the entire array consists of twelve drives – or in the alternate notation R1^3+0^4.<\/p>\n Superscript notation of sets is only necessary when non-obvious.\u00a0 R10 with no other notation implies that the R1 component is mirror pairs, for example.\u00a0 R55 nearly always requires additional notation except when the array consist of only nine members.<\/p>\n One additional aspect to consider is notating array size.\u00a0 This is far simpler than the superscript notation and is nearly always complete adequate.\u00a0 This alleviates the need to write in long form “A four drive RAID 10 array.”\u00a0 Instead we can use a prefix for this.\u00a0 4R10 would denote a four drive RAID 10 array.<\/p>\n So to look at our example from above, the twelve disk RAID 10 with the three-way mirror sets could be written out as 12R13<\/sup>04<\/sup>.\u00a0 But the use of all three numbers becomes redundant.\u00a0 Any one of the numbers can be dropped.\u00a0 Typically this would be the final one as it is the least likely to be useful.\u00a0 The R1 set size is useful in determining the basic risk and the leading 12 is used for capacity and performance calculations as well as chassis sizing and purchasing.\u00a0 The trailing four is implied by the other two numbers and effectively useless on its own.\u00a0 So the best way to write this would be simply 12R13<\/sup>0.\u00a0 If that same array was to use the common mirror pair approach rather than the three-way mirror we would simply write 12R10 to denote a twelve disk, standard RAID 10 array.<\/p>\n","protected":false},"excerpt":{"rendered":" As the RAID landscape becomes more complex with the emergence of network RAID there is an important need for a more complex and concise notation system for RAID levels involving a network component. Traditional RAID comes in single digit notation and the available levels are 0, 1, 2, 3, 4, 5, 6, 7.\u00a0 Level 7 … Continue reading Network RAID Notation Standard (SAM RAID Notation)<\/span>