Por que o MongoDB docs recomenda executar o Raid 10 no EBS?

2

Eles parecem falar apenas sobre desempenho, o que eu acredito que não é o caso comparado a outros tipos de RAID híbridos.

Veja aqui: link

    
por Claudio Poli 29.07.2011 / 02:43

2 respostas

3

O que você está perguntando - "por que o MongoDB recomenda EBS sobre discos locais" ou "por que o MongoDB recomenda o RAID-10 em vez de um único EBS?" Acho que ambas as perguntas estão bem respondidas no link que você deu, mas recapitulando:

  • EBS vs disco local: isso não é um problema se você quiser que seus dados do MongoDB sobrevivam a uma falha ou reinicialização de instâncias. O disco local desaparece quando a instância o faz.
  • RAID-10 do EBS: Simplificando, o desempenho do EBS é baixo ... incrivelmente fraco (e, pior, variável). Um RAID-10, pelo menos, espalha a carga em vários volumes.

Editar : Então, há uma terceira pergunta então. Os dados de benchmarking reais vinculados a partir do link em seu comentário acabaram, portanto, só temos o comentário, mas eu diria que é um benchmark ruim porque a lógica envolvida está errada. A E / S por bloco necessária para diferentes níveis de RAID é:

  • RAID1: N grava em N discos
  • RAID5: N-2 lê (coleta dados existentes e inalterados na faixa - possivelmente em cache, se tiver sorte), 2 gravações em N discos
  • RAID10: 2 grava em N discos

Eu não posso explicar por que o benchmark obteve os resultados, porque os dados foram , mas meu palpite é que não foram feitos testes suficientes para suavizar a variabilidade inerente no teste de um teste. recurso compartilhado. Eu fiz muito desse tipo de trabalho para o Heroku quando, e a variabilidade em execuções ao longo do tempo (e sobre volumes) foi muito grande.

Quanto ao artigo da wikipedia que você cita, é irrelevante neste caso, porque é tudo sobre o RAID-5 em um dispositivo SAN high-end; você está fazendo RAID-5 dentro de uma VM, que não tem a capacidade de tornar "a tarefa de recálculo de paridade e redistribuição [...] realizada como um processo de back-end transparente para o host" - entre uma variedade de outras diferenças entre "big-ass SAN" e "software RAID".

    
por 29.07.2011 / 02:53
0

O 10gen fez um webinar não há muito tempo especificamente sobre o uso do MongoDB na AWS. Ele lida com dois problemas: (1) Desempenho e (2) tolerância a falhas na sequência da interrupção recente de vários dias da AWS em uma única zona de disponibilidade. Sua solução é o RAID 10 em muitos nós.

Eu sugiro que você passe pelos slides, pois eles podem explicar muito melhor do que eu em um post no SF.

link link

    
por 29.07.2011 / 02:53