Configuração de disco ideal para o SQL Server OLTP

1

Temos um servidor de banco de dados de alta transação (muitas leituras e gravações) (executando o SQL 2005) que está atualmente configurado com uma partição de sistema operacional RAID 1 (C :) e uma partição de dados / log / tempdb RAID 5 (D: ). O C: tem 2 drives e o D: tem 4 drives. O servidor tem cerca de 300 bancos de dados que variam de 10MB a 2GB.

Eu tenho lido sobre as práticas recomendadas para particionar os discos, mas gostaria de algumas opiniões sobre nossa configuração, já que estamos limitados no número de discos.

Parece que o RAID 10 é popular, mas não acho que poderíamos usá-lo com apenas 6 discos no total para trabalhar.

Obrigado.

Atualizar

Eu fui com 3 partições RAID 1 (2 discos cada)

  • Partição 1: SO, TempDB, Backups
  • Partição 2: Logs
  • Partição 3: dados
por Chris 06.11.2009 / 15:36

5 respostas

1

Uma maneira "melhor" comum de configurar volumes RAID com apenas 6 eixos é:

  • Volume 1, sistema operacional e log de transações SQL. 2 discos no espelho (RAID1) com BBWC. O cache de gravação do log de transações é muito importante para um bom desempenho, pois o mecanismo SQL aguarda a conclusão das gravações de log e o armazenamento em cache das gravações reduz significativamente a latência de gravação. (BBWC significa Cache de Gravação com Bateria Suportada, ou seja, um controlador com cache de gravação ativado e uma unidade de backup de bateria conectada ao controlador.)
  • Volume 2, arquivos de banco de dados restantes. 4 discos no RAID 10 (ou RAID1 + 0 ou RAID 0 + 1).

O posicionamento do SO realmente não importa muito. Quando o sistema está em funcionamento, o sistema operacional deve gradualmente entrar em um estado estável, onde o sistema operacional está tocando apenas ocasionalmente os discos. Se você precisar colocar o sistema operacional na matriz RAID 0 + 1 de 4 discos, não se preocupe com isso.

Além disso, você deve garantir que os limites de partição (e, portanto, os blocos do sistema de arquivos) estejam alinhados com os limites de distribuição do RAID .

A configuração acima pode ou não funcionar para você - você perderá alguma capacidade ao se despedir do RAID5. Com as unidades de disco modernas, você provavelmente tem espaço em disco suficiente (a E / S por segundo geralmente se torna um gargalo antes da capacidade). Com unidades mais antigas, talvez a capacidade seja um fator limitante.

Kendal Van Dyke escreveu uma boa visão geral de diferentes RAID níveis, alinhamentos de partições e seu desempenho para uma carga de trabalho do servidor SQL.

    
por 24.11.2009 / 20:05
0

Se você tiver espaço em seu volume C: considere mover os arquivos de log de transações de seus bancos de dados muito ativos e / ou seus dados e arquivos de log do TempDB para ele. O RAID 1 é melhor que o RAID 5 para gravações.

Invista o máximo de memória possível para reduzir a quantidade de disco IO (a memória é atualmente barata). Isso irá melhorar suas leituras. Se você estiver em um ambiente de 32 bits, lembre-se de que você terá que configurar o AWE para endereçar memórias acima de 4GB.

    
por 07.11.2009 / 13:54
0

Com o número limitado de unidades, é impossível obter a configuração ideal. Isso seria conjuntos de discos separados para:

  • Sistema
  • Dados
  • Registros
  • TempDB

Se você puder arcar com o espaço perdido ao perder um disco (você perdeu 1 dos 4 no espaço RAID 5 para a paridade, você perderá um segundo no RAID 10 no espaço), então reconfigurando as unidades provavelmente aumentaria um pouco o desempenho, se o gargalo for o disco.

Você está vendo problemas específicos? Ou você está apenas procurando otimizar a configuração antes de existir?

    
por 07.11.2009 / 14:56
0

Além do conselho que K Brian Kelley deu também investigue o alinhamento das partições. Se você estiver usando o Windows 2008, não precisará se preocupar, pois as partições são alinhadas automaticamente para você, mas no Windows 2003 você precisará fazer isso manualmente. Leia este whitepaper para entender o que / o quê / por que você deve fazer isso. Você pode obter até 30-40% de aumento de desempenho apenas alinhando suas partições.

link

    
por 24.11.2009 / 19:48
0

Que tal configurar todos os 6 discos em um RAID 10 e definir uma partição para o sistema operacional e outra (1 ou 2) para dados? Dado que você iria evitar o uso pesado de swap, adicione muita memória RAM na máquina?

    
por 27.04.2010 / 11:08