strip/block size y otros temas de RAID (largo)

Aldrin Martoq amartoq en dcc.uchile.cl
Mie Dic 31 11:38:54 CLST 2008


On Wed, 2008-12-31 at 10:09 -0300, Marcelo Espinosa Alliende wrote:
> El mar, 30-12-2008 a las 17:52 -0300, Aldrin Martoq escribi贸:
> > Haz la prueba, de hecho en el primer link que mandaste el tipo muestra
> > la conversa en una lista y del primer link:
> > http://lists.us.dell.com/pipermail/linux-poweredge/2007-December/034160.html
> > 
> > 10GB file:
> > * RAID5 : 255MB/s
> > * RAID10 : 224MB/s (???)
> > 
> > 2 x 10GB file (simultaneos)
> > * RAID5 : 2 x 36MB/s
> > * RAID10 : 2 x 31MB/s (ouch!)
> esos datos muestran que la controladora es deficiente, los datos
> resultantes lo avalan, de hecho el mismo autor lo declara, no debieras
> poner esto como ejemplo.

Bueno, lo puse porque es similar a lo que obtuve yo en mis pruebas... y
en tal caso es lo que importa, al fin y al cabo es lo que se va a usar.


> el problema de raid 5 es que no escala bien con las escrituras... como
> lo mencion贸 Horst, el n煤mero IO's que raid 5 es capaz de manejar se
> determina por la formula siguiente:
>  [ IO_lecturas + (4 * IO_escrituras) ] / n掳_discos
> en el caso de raid 10 es
> [ IO_lecturas + (2 * IO_escrituras)] / n掳_discos
> al incrementar el n潞 de discos mejora considerablemente la lectura
> (analog铆a de los platos que mencionas) , y en el caso de la escritura
> gana raid10 pues s贸lo se duplica la operaci贸n, no cuadriplica como en el
> caso de raid5.

Tienes razon en que me he fijado solo en la lectura. Ahora, esta parte
no la entiendo, porque 4* y 2* ?

Si tienes 4 discos, escribir un stripe:
- en raid5: significa leer 2 y escribir 2 stripes.
- en raid10: significa escribir 4 stripes.

La penalidad de raid5 es que primero leo y luego escribo, mientras que
en raid10 solo escribo. No veo la duplicidad ni cuadriplicidad _en
tiempo_ de la operacion, estoy asumiendo que escribo/leo al mismo tiempo
en todos los discos (como si fueran platos extras).



Tambien hay algo extran~o en la formula, por lo siguiente:

> un ejemplo para ilustrar lo anterior.
> 
> carga de 500 I/Os con 10 discos para RAID5
> 
>  Lecturas    Escrituras            I/Os RAID_5  
> ----------------------------------------------------------        
>   100,00%    0,00%                (500 + 0) / 10    = 50 
>    90,00%    10,00%               (450 + 200) / 10  = 65 
>    75,00%    25,00%               (375 + 500) /10   = 87,5 
>    50,00%    50,00%               (250 + 1000) / 10 = 125 
>     0,00%    100,00%              (0 + 2000) / 10   = 200 
> 
> 
> Lecturas    Escrituras            I/Os RAID_10 
> ----------------------------------------------------------  
>   100,00%    0,00%                (500 + 0) /10     = 50
>    90,00%    10,00%               (450 + 100) / 10  = 55
>    75,00%    25,00%               (375 + 250) / 10  = 62.5
>    50,00%    50,00%               (250 + 500) / 10  = 75
>     0,00%    100,00%              (0 + 1000) / 10   = 100

Con 10 discos y solo lectura deberias tener performance de 9x para
raid-5 y 5x para raid-10; pero tus calculos no muestran eso.

Me parece que estas calculando la carga que lleva cada disco (divides
por el numero de discos) en vez del rendimiento (yo usaria alguna medida
de ancho de banda, como KiB/s) para el conjunto en total.

 
-- 
Aldrin Martoq <amartoq en dcc.uchile.cl>
http://aldrin.martoq.cl/videopodcast/ http://aldrin.martoq.cl/techblog/
------------ pr髕ima parte ------------
Se ha borrado un mensaje que no est谩 en formato texto plano...
Nombre     : no disponible
Tipo       : application/pgp-signature
Tama帽o     : 197 bytes
Descripci贸n: This is a digitally signed message part
Url        : http://listas.inf.utfsm.cl/pipermail/linux/attachments/20081231/3ceb4c3f/attachment.bin


M醩 informaci髇 sobre la lista de distribuci髇 Linux