melhor configuração RAID para postgres

2

Estou comprando um servidor com 8 discos SAS para executar procedimentos intensivos de banco de dados. Atualmente, o principal gargalo é as grandes varreduras de índice no postgres.

No momento, estou decidindo entre discos de 10k de 8x300 GB ou discos de 15k de 8x140 GB, já que seria mais conveniente ter 200 GB + espaço lógico.

A folha de especificações dos estados do controlador RAID: "RAID-0 de hardware integrado, -1, -1E, RAID-5 opcional, -6, -10, -50, -60"

Qual seria a melhor configuração de RAID e qual seria a melhor opção em discos?

Sou novo na configuração de RAID e postgres e aprecio o conselho.

    
por pstanton 21.12.2009 / 05:42

4 respostas

9

Integrated Hardware RAID-0, -1, -1E, optional RAID-5, -6, -10, -50, -60

Isso soa um pouco preocupante para mim, soa como um controlador RAID de baixo custo. Você quer um bom controlador RAID que possa acompanhar 8 HDDs rápidos (na verdade, isso não é certo). Se você tem uma quantidade razoável de gravações no seu banco de dados, então você realmente quer uma unidade de backup de bateria e para ativar o cache de gravação protegido por bateria no controlador RAID.

Quanto ao layout do disco RAID, existem duas escolas comuns de pensamento:

  1. 2 discos no espelho para o SO, 2 discos no espelho para o log de transações do banco de dados e 4 discos no RAID 10 para os arquivos principais do banco de dados.
  2. Um grande array RAID 10 usando todos os discos e todos os arquivos do log + do SO + log de dados neste array ( veja raciocínio aqui, espelhado por BAARF ).

Eu preferiria não tomar partido no design do volume RAID, ele tende a se tornar uma discussão de fato. Idealmente, você deve experimentar diferentes layouts de armazenamento e compará-los para sua carga de trabalho específica. Meu instinto é que todos os discos no RAID10 são mais rápidos e mais robustos em várias cargas de trabalho.

Uma última coisa, para garantir que as partições do SO e os limites da faixa RAID estejam alinhados ( veja aqui , centrado no Windows, mas o princípio é geral). Você pode fazer isso quando criar as partições.

    
por 21.12.2009 / 06:25
7

Vá para os discos 8x146GB em uma matriz RAID10 grande (4 pares espelhados distribuídos juntos). Isso deve fornecer a você a melhor velocidade em termos de acesso IO.

    
por 21.12.2009 / 06:00
1

Você deve ler as informações em BAARF A Batalha Contra Qualquer RAID Cinco (Quatro, ... err ..., Grátis) . Portanto, a sugestão para ir com o RAID 10 é boa.

E para o desempenho do banco de dados, use discos mais rápidos (mesmo que sejam menores) em vez de menos discos mais lentos (mesmo que sejam maiores).

    
por 21.12.2009 / 07:22
0

Não se esqueça de alinhar o seu ext3 / 4 ao tamanho da faixa / stride RAID. (man mkfs.ext3 / 4 - > stride)

A propósito, existe alguma configuração de postgres para fazer com que sua escrita corresponda ao tamanho da faixa?

(E google por buraco de escrita RAID5)

    
por 21.12.2009 / 08:55