The "4W" part of the RAID 5 formula is actually true only for RAID 5 = groups larger than 4 disks. On a 3-disk RAID 5 array, for example, both large writes and small writes will consume only 3W I/O calls (one for each = disk). The complete formula is actually R + min(4,G)*W. Since most of you have = G>3, the simplified formula that uses '4' as a constant yields the correct answer. In the spirit of my prior note, if you use RAID 1, the formula is still = R + min(4,G)*W (yes, the same one, because RAID 1+0 is actually the same = thing as RAID 5 with G=3D2). Because for RAID 1+0, the value of G is G=3D2, = the formula simplifies to R + 2W. My original post neglected to mention the = '2' in this formula. My apologies. Note, however, that R + 4W > R + 2W for all values W > 0, which was the point that I had intended to convey originally. Cary Millsap Hotsos Enterprises, Ltd. http://www.hotsos.com * Nullius in verba * Upcoming events: - Performance Diagnosis 101: 9/14 San Francisco, 10/5 Charlotte, 10/26 Toronto - SQL Optimization 101: 9/20 Hartford, 10/18 New Orleans - Hotsos Symposium 2005: March 6-10 Dallas - Visit www.hotsos.com for schedule details... -----Original Message----- From: oracle-l-bounce@xxxxxxxxxxxxx = [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On Behalf Of J.Velikanovs@xxxxxxxx Sent: Thursday, September 09, 2004 4:10 PM Cc: edgar.chupit@xxxxx; Oracle-L@xxxxxxxxxxxxx; oracle-l-bounce@xxxxxxxxxxxxx Subject: Re: Re[2]: Raid5 Vs Raid0+1 -- Raw Vs Solaris 9 Concurrent = Direct IO UFS I have read "Configuring Oracle Server for VLDB" http://www.miracleas.dk/BAARF/0.Millsap1996.08.21-VLDB.pdf Page 11. >From this paper: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D Any write to a RAID 5 stripe requires resource intensive six-step = process=20 [Sun (1995)]: 1. Read the blocks to be overwritten. 2. Read the corresponding parity blocks. 3. Remove the contribution of the data to be overwritten from the parity = data. 4. Add the contribution to parity of the new data. 5. Write the new parity data. 6. Write the new data. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D Yes, Edrag is right regarding formula "2R (1,2) + 2CPU (3,4) + 2W = (5,6)". Count of IO operation (4) is independent from spin count then. But why Cary has mentioned "1R+4W" formula then? What is background physics of this formula? Is it independent from spin count in RAID5? Jurijs +371 9268222 (+2 GMT) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Thank you for teaching me. http://otn.oracle.com/ocm/jvelikanovs.html On 09.09.2004 23:50:47 oracle-l-bounce wrote: >Thank you Edgar for your interest, >I have read "Is RAID5 Really a Bargain?" >http://www.hotsos.com/e-library/abstract.php?id=3D11 >as well as "db_file_mutliblock_read_count and physical IO" ORACLE-L >thread, >before ask my question. > >I thought about RAID5 as you described. >However Cary in his paper "Is RAID5 Really a Bargain?" and in ORACLE-L >thread have mentioned "R + 4W" formula regardless of spins count in = RAID. >Why "R + 4W", I wonder? >I assume that the way how it can be is: >1. regardless of spin count RAID5 use 3+1 formula >2. to make single "small" write, we need to touch all chunks of RAID5 >(3+1) > >Please correct me. > >Jurijs > >PS I am going to read >http://www.miracleas.dk/BAARF/0.Millsap1996.08.21-VLDB.pdf > >On 09.09.2004 22:58:06 oracle-l-bounce wrote: > >>Dear Jurijs, >> >>>>- Level 1: would have to process (R + W) I/O requests per second >>>>- Level 5: would have to process (R + 4W) I/O requests per second >> >>JVal> Can I kindly ask you to clarify few questions? >>JVal> 1. Is 4W figure (in formula above) constant in context of RAID 5 >array and >>JVal> not depend on spindles count? I suspect that it can be constant = in >any >>JVal> RAID5 implementation. In case of 6 spindles block will be >distributed as: >> >>Unless I'm missing something than according to raid specs it doesn't >>mater how many disks are in raid5 array, you just need one additional >>disk for checksums, so in case of 6 spindle array you can create raid5 >>that will operate according to your schema (it actually will be two >>raid5 arrays) or you can create one raid5 array that will use 5 disks >>for data and one disk for checksums. >> >>Please, correct me if I'm wrong. >> >>JVal> 2. If we need to change one of 3 data blocks belonging to one=20 RAID5 >set, >>JVal> block. Do I understand correctly? So for writing one block into >RAID5 we >>JVal> need 2W+2R. Or I am wrong? >> >>Actually it's 6 step process something similar to 2W+2C+2R where 2C is >>for cpu service. For more information read excelent article by Cary >>Millsap (http://www.miracleas.dk/BAARF/0.Millsap1996.08.21-VLDB.pdf) >>at page 11. >> >>-- >>Best regards, >>Edgar >> >>-- >>To unsubscribe - >mailto:oracle-l-request@xxxxxxxxxxxxx&subject=3Dunsubscribe >>To search the archives - //www.freelists.org/archives/oracle-l/ >-- >To unsubscribe -=20 mailto:oracle-l-request@xxxxxxxxxxxxx&subject=3Dunsubscribe >To search the archives - //www.freelists.org/archives/oracle-l/ -- To unsubscribe - = mailto:oracle-l-request@xxxxxxxxxxxxx&subject=3Dunsubscribe=20 To search the archives - //www.freelists.org/archives/oracle-l/ -- To unsubscribe - mailto:oracle-l-request@xxxxxxxxxxxxx&subject=unsubscribe To search the archives - //www.freelists.org/archives/oracle-l/