Rendimiento de software RAID sobre Linux (2)

Continuamos las pruebas, ahora le toca el turno a el RAID10 sobre 4 discos (por si el número par afecta en algo):

Version  1.03       ------Sequential Output------ --Sequential Input- --Random-                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CPns1              4G 64797  96 119486  21 48358  12 61408  95 98698  13 430.2   1                    ------Sequential Create------ --------Random Create--------                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP                 16  2734   7 +++++ +++  2172   4  3093  10 +++++ +++  1695   5

Rendimiento (E/L): +77% / +34%

Configuración con 4 discos en RAID1+0:

Version  1.03       ------Sequential Output------ --Sequential Input- --Random-                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CPns1              4G 65864  98 114191  23 42419  11 59552  97 124150  21 495.5   1                    ------Sequential Create------ --------Random Create--------                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP                 16  3248  12 +++++ +++  2530   7  3060  13 +++++ +++  1801   6

Rendimiento (E/L): +69% / +69%

Para los interesados, esta configuración la he construido con estas órdenes:

mdadm --create -n 2 -l 1 /dev/md1 /dev/sdb2 /dev/sdd2 --size 5000000mdadm --create -n 2 -l 1 /dev/md3 /dev/sdc2 /dev/sda2 --size 5000000mdadm --create -n 2 -l 0 /dev/md4 /dev/md1 /dev/md3mkfs.xfs /dev/md4 -fmount /dev/md4 test

Y ahora una prueba que es la que realmente me ha pasado por la cabeza como candidata, y para la que he realizado las pruebas. Montar RAID1 + LVM con stripping para simular RAID0. Ya que de todas formas voy a utilizar LVM quizás pueda aprovecharlo para obtener un buen rendimiento con una excelente flexilibilidad:

Version  1.03       ------Sequential Output------ --Sequential Input- --Random-                   -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CPns1              4G 66600  97 114477  24 44862  15 53496  95 120469  29 397.6   1                   ------Sequential Create------ --------Random Create--------                   -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--             files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP                16  4115  24 +++++ +++  4197   0  5103  28 +++++ +++  1958   7

Rendimiento (E/L): +69% / +64%

Y finalmente poniendo todos los datos juntos, junto con la eficiencia de disco y el número de discos usados:

  • RAID5(5): +47% / +113% / 80%
  • RAID1(5): -17% / -9% / 20%
  • RAID10(5): +108% / +77% / 50%
  • RAID10(4): +69% / +69% / 50%
  • RAID1+LVM(4): +69% / +64% / 50%

¿Adivináis el que he escogido?

Actualizado (9/2/07): adjunto tabla resumen.

**Nivel RAID** **Discos** **Escritura** **Lectura** **% Espacio** **% Escritura** **% Lectura**
N/A 1 67512 73633 100 100% 100%
5 5 99400 157120 80 147% 213%
1 5 55983 67411 20 83% 92%
10 5 140498 130574 50 208% 177%
10 4 119486 98698 50 177% 134%
1+0 4 114191 124150 50 169% 169%
1+lvm(0) 4 114477 120469 50 170% 164%