On Wed, May 25, 2016, at 10:45, Guimarães Faria Corcete DUTRA, Leandro
wrote:
> 2016-05-24 20:31 GMT-03:00 Lucas Castro <lucascastrobor...@gmail.com>:
> > não seria interessante fazer uma RAID-10 como falou que quer fazer.
> > fica meio sem lógica fazer um stripping que ficará no mesmo disco.
> 
> Raid 10 com dois discos é apenas Raid 1.

Não no Linux.  E só vai ter o mesmo layout se usar o modo "n2" ("near",
2 cópias) do md-raid10 com dois dispositivos. Que, aliás, não é quase
nunca a melhor escolha para performance (pode ser a escolha mais segura
para a RAID de boot, entretanto).

Alguns casos específicos de topologia do md-raid10 serão idênticas às
topologias mais tradicionais, mas é só isso. Ou seja, RAID1 de dois
discos tem topologia equivalente ao md-raid10 n2 em 2 discos, mas a
*implementação* disso no Linux é diferente, e *não* se comporta da mesma
forma.

A diferença entre md-raid10 n2 com 2 discos (topologia idêntica do RAID1
tradicional) e md-raid1 com dois discos está em como múltiplos leitores
serão tratados pelo driver md:  md-raid1 usa no máximo um disco
componente por thread, limitando o throughput máximo ao de um único
dispositivo componente.  Já o md-raid10 irá fazer stripping do acesso
quando possível (e quase dobrar o throughput).

Ou seja, o md-raid1 "socializa" mais quando há mais de um processo
tentando acessar o disco, enquanto que o md-raid10 vai entregar >80% a
mais de throughput quando há só um processo tentando acessar o disco
(vai acessar todos os componentes em paralelo como se fosse uma raid0).

Em geral, para 2 discos, md-raid 1 << md-raid10 n2 << md-raid10 f2 em
matéria de performance com poucas threads (desktop normal). 

Faz uma diferença brutal dependendo do workload.  Para desktop, não
tenha dúvidas e vá de md-raid10 no caso do Linux, mesmo que seja só para
2 dispositivos (em SSD, use modo "near" ou "far". Em HDD, use modo
"far").  Lembrando que md-raid10 funciona com qualquer número de
dispositivos acima de 1, inclusive ímpares.

Num servidor com múltiplos acessos concorrentes, só testando: depende da
carga típica de trabalho.

Uso no meu desktop um md-raid10 f2 em 3 HDDs.  E sim, isso significa que
ele espalhou 2 cópias em 3 discos.  180% mais rápido que o disco sem
raid(!) ou em md-raid1, até mesmo para escrita (em arquivos grandes).  E
uns 300% mais rápido que o pior caso do md-raid5, já que raid10 nunca
incorre em RMW (read-modify-write para calcular a paridade).

Aliás, md-raid10 f2 em 2 SSDs te dá 99% da performance de leitura de
RAID0 entre os SSDs (na escrita fica em >85%), duplica os dados entre os
dois (proteção contra falha de 1 SSD), em troca de perder metade do
espaço (como era-se de esperar).  Só que um dos SSDs vai estar
"invertido" devido ao layout "far". 

Não sei porque o "far" é vantagem até em SSD, pela lógica não era para
fazer diferença nenhuma, pode ser um detalhe de implementação do
elevador de IO do Linux.  Mesmo que não houvesse diferença, ainda seria
uma boa usar o "far" porque vai garantir um regime de uso diferente
entre dois SSDs iguais, o que é sempre uma boa para tentar distanciar
uma eventual falha simultânea quando forem do mesmo lote.

> > se tiver grana pra adquirir mais um disco, RAID-5 é legal,

Mais ou menos.  RAID5 é bem mais perigoso que RAID1 e RAID10, tem uns
detalhes sórdidos, fora os tradicionais problemas de RMW, etc.  Mas
realmente sai bem mais "barato" em termos de "perda de espaço".

Por sinal, não utilize RAID5 para >8TB em discos com taxa de erro típica
(1E-14), e nem pensar se for >12TB, a chance de perda de dados durante o
rebuilt aproxima-se do evento certo.  Para isso existe RAID6.

PS: *cuidado* com o layout "offset" do md-raid10: pelo que me lembro,
ele pode gerar layouts com características peculiares e muitas vezes
indesejáveis...  desenhe o layout e verifique o que acontece em caso de
falha de 1 ou mais componentes, e compare com os outros layouts (near e
far).

> Com os preços de disco hoje, fica difícil justificar qualquer Raid que
> não seja o 10 a menos que haja baixa carga de escrita, rotina de
> cópias de segurança muito bem ajustada e alta tolerância a
> indisponibilidade e lentidão.

Concordo.

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique de Moraes Holschuh <h...@debian.org>

Reply via email to