Comparando RAID-1 e RAID-10

Seagate Storage Solution Provider

A forma mais prática de otimizar a performance de I/O é através de um volume RAID. A grande vantagem dos volumes em RAID está no uso de discos normais, sem que o usuário tenha que apelar a tecnologias mais onerosas como SAS 15k ou SSD.

Para ilustrar as diferentes performances que podem ser atingidas em volumes RAID, montamos uma configuração base para de testes :

:: Placa mãe de servidor Intel® S1200V3RPS (Rainbow Pass);
:: Processadores Intel® Xeon® E3-1271V3 (4-Core @ 3.6Ghz HT);
:: 32GB de RAM (populadas através de 4 módulos Kingston® DDR3/1600 ECC);
:: Fonte Nilko® 500W com PFC Ativo

Para montagem dos volumes foram usados de 1 a 4 discos rígidos de mesmo modelo, Seagate® ST3000DM001 (SATA, 64MB de Cache e modo de gravação perpendicular).

Preservando a mesma configuração de servidor como base para todos os testes, chegamos a três simulações de desempenho: Disco único (sem RAID), 02 HDs em RAID-1 (espelho) e, finalmente, 04 HDs em RAID-10 (volume distribuído + espelho).

Seagate Certification Program

Sem RAID, usando apenas 1 HD
Empregando apenas 01 disco rígido, sem RAID, o servidor atingiu uma taxa de transferência média de 162.9MB/s (como se vê na imagem abaixo - clique para ampliar).

ST3000DM001 sem RAID

RAID-1 (espelho), usando 2 HDs
Como a segurança dos dados é fator primordial, a configuração de RAID mais difundida é o espelhamento (mirroring), através do RAID em nível 1.
Nessa montagem, mesmo com a duplicação dos dados visando segurança, o volume atingiu uma taxa de transferência média de 188.3MB/s, demonstrando um incremento de 15% sobre a unidade nominal (como se vê na imagem abaixo - clique para ampliar).

RAID-1 com 2 discos ST3000DM001

RAID-10 (espelho + distribução), usando 4 HDs
No RAID nível 10 o usuário consegue combinar segurança e performance! O volume é montado através de 4 discos, onde são vistos 2 volumes espelhados e, sobre esses 2 volumes, um nível 0 (zero) de stripe combina o desempenho dos 2 volumes, criando uma matriz com a capacidade dobrada, segurança dos dados e performance de leitura e gravação!

Na configuração com RAID-10 o volume atingiu uma taxa de transferência média de 272.7MB/s (como se vê na imagem abaixo - clique para ampliar), ou seja, um incremento de 44% sobre o volume espelhado e surpreendentes 67% sobre a unidade nominal.


RAID-10 com 4 discos ST3000DM001

Conclusão
O propósito dessa postagem é apresentar uma solução acessível de performance, uma vez que 4 discos rígidos SATA têm custo altamente eficiente em comparação a unidades SAS ou SSD. Soma-se a isso, a segurança dos dados, já que o RAID-10 embarca a segurança do nível 1 (espelhamento) e, finalmente, em se tratando de equipamentos baseados em placas de servidor Intel, a tecnologia Intel RSTe é um recurso nativo e, portanto, pode ser implementado sem nenhum ônus adicional com controladoras proprietárias.

Dicas de leitura:
Comparando desempenho de SSDs em RAID-0
Performance em RAID-5
Comparando RAID-1 e RAID-10 @ ST3100528AS (2010)
Comparando RAID-1 e RAID-10 @ ST2000DM001 (2014)
Comparando RAID-1 e RAID-10 @ ST4000DM000 (2014)

Visite Sinco.net

4 comentários:

  1. Boa Tarde amigos,
    Adorei o blog, muito bom, parabéns.

    Estava vendo este poste sobre taxas de transferência e estou com uma grande dúvida em meu servidor, e talvez um de vocês tenha o conhecimento necessário para me responder essa questão.

    Tenho um servidor HP ML150 G6 com controla RAID p410 512MB de cache, tenho 4 discos SAS 3.0gbs de 15K em RAID 5.

    O sistema operacional é linux, redhat e rodei um programa de teste chamado tiotest, que esta no pacote tiobench.

    Os resultados foram os seguintes:

    [root@server ~]# tiotest -f 10 /dev/cciss/c0d0p1
    Tiotest results for 4 concurrent io threads:
    ,----------------------------------------------------------------------.
    | Item | Time | Rate | Usr CPU | Sys CPU |
    +-----------------------+----------+--------------+----------+---------+
    | Write 40 MBs | 0.1 s | 334.132 MB/s | 13.4 % | 607.2 % |
    | Random Write 16 MBs | 0.1 s | 219.520 MB/s | 5.6 % | 196.7 % |
    | Read 40 MBs | 0.0 s | 7458.512 MB/s | 335.6 % | 988.1 % |
    | Random Read 16 MBs | 0.0 s | 6260.016 MB/s | 320.5 % | 1041.5 % |
    `----------------------------------------------------------------------'
    Tiotest latency results:
    ,-------------------------------------------------------------------------.
    | Item | Average latency | Maximum latency | % >2 sec | % >10 sec |
    +--------------+-----------------+-----------------+----------+-----------+
    | Write | 0.016 ms | 0.065 ms | 0.00000 | 0.00000 |
    | Random Write | 0.005 ms | 0.900 ms | 0.00000 | 0.00000 |
    | Read | 0.002 ms | 0.036 ms | 0.00000 | 0.00000 |
    | Random Read | 0.002 ms | 0.016 ms | 0.00000 | 0.00000 |
    |--------------+-----------------+-----------------+----------+-----------|
    | Total | 0.007 ms | 0.900 ms | 0.00000 | 0.00000 |
    `--------------+-----------------+-----------------+----------+-----------'

    Veja que write chegou a 334MB/s, porem o pessoal do sofware me diz que deveria chegar a 900MB/s devido a controladora ter cache.

    Isso é possivel?

    Grato pela atenção!

    ResponderExcluir
    Respostas
    1. Olá Emelicio!

      Quanto aos resultados do seu teste, nos parecem bastante consistentes e realistas. Já a marca de 900MB/s... Bem distante de uma realidade prática...
      Será que não confundiram com taxa de leitura??

      Um HDD SAS de 15kRPM entrega por volta de 190MB/s de transferência média quando se trata de uma unidade isolada.
      Veja essa postagem, onde temos um volume RAID10 (que tem mais desempenho que o RAID-5) com 4 unidades SATA:
      http://www.blog.sinco.net/2014/12/raid1-raid10-st4000dm000.html
      Essas 4 unidades atingiram 68% de incremento sobre a unidade única.
      Em uma razão bem simplória, seu SAS-15k de +-190MB/s cresceria para +-319MB/s (se fosse RAID-10).
      Já nessa outra postagem, conseguimos obter 28% de ganho sobre o MESMO volume de discos, simplesmente usando uma controladora com Processador de I/O e Cache:
      http://www.blog.sinco.net/2010/03/performance-em-raid-5.html

      Se, novamente de forma simplória, jogarmos 28% sobre o índice de 319MB/s, teríamos por volta de 383MB/s em seu volume RAID-10 de 4 SAS com a controladora de I/O.

      Ou seja... Essa sua medição por volta de 334MB/s está parecendo dentro da realidade.

      Por que não enxergamos o índice de 900MB/s?
      Porque já testamos centenas de cenários diferentes de I/O e, até hoje, quem domina o topo dos benchmarks são os SSDs.
      Nessa postagem, por exemplo, temos 4 SSDs em RAID-10 e batemos 713MB/s:
      http://www.blog.sinco.net/2014/12/ssd-raid-sv300s37a240g.html

      SSDs entregam bem mais desempenho que discos mecânicos (mesmo os 15k) e, diferente dos HDDs, quase não aumentam as taxas de I/O do volume quando usados em uma controladora dedicada (pois seus tempos de acesso tendem a ZERO e, nesse cenário, o cache acaba não ajudando em quase NADA).
      Ou seja, se chegamos na marca de 700 com 4 SSDs, acreditamos que seja difícil buscar 900MB/s com discos mecânicos.

      []´s Equipe Sinco.net

      Excluir
  2. Obrigado pela resposta rápida!

    Então, realmente, pelos discos nem tem como dar 900MB/s, porem essa pessoa diz que deveria chegar a 900MB/s devido a ter cache, e que os arquivos de teste já ficam diretamente no cache da controladora.

    Não sei se isso pode, sei que o cache está funcionado pois se eu desativar ele, a velocidade cai para 18MB/s.

    ResponderExcluir
    Respostas
    1. Note que no seu resultado do tiotest a leitura é bem elevada. Isso se dá porque a leitura obteve dados da memória cache.
      Tudo nos parece bem normal... Não enxergo a argumentação desse terceiro.
      Como projetamos e fabricamos nossa própria linha de servidores, não temos como aprofundar uma opinião num servidor de terceiros.
      Qual a posição da HP com relação a essa dúvida? Eles estão participando dessa discussão?
      E o suporte da sua distribuição Linux? É uma versão comercial (com suporte da softwarehouse)? Ou uma versão suportada por comunidade? A engenharia dessa distribuição está participando dessa discussão? Pode haver um driver "especial", já que o pessoal do software diz que precisa obter 900MB/s de escrita.

      []´s Equipe Sinco.net

      Excluir