Por que meu desempenho não aumentou quando passei de 4 RAID 10 para 6 RAID 10?

5

Eu tinha 4 unidades em um conjunto RAID10 e 2 discos sobressalentes. Temos monitorado o perfmon Média de segundos do disco por transferência (leituras e gravações) do contador. Compramos mais 2 discos, reconstruímos o conjunto RAID10 usando 6 discos (2 span) e o desempenho permaneceu o mesmo. Existe alguma limitação de que o RAID10 só melhore com base em 4 múltiplos de disco (4, 8, 12, etc)?

Estou usando um Dell R510. Este é um servidor SQL. Mantivemos os mesmos arquivos no volume.

Estou usando o cache não volátil Dell Perc H700 de 1 GB.

ADs / T é em torno de 200ms.

São drives de 15k sas de 600 GB

Não sei como o controlador Dell PERC faz os spans. Ele apenas pergunta quantos discos eu quero no intervalo (2 ou 3 neste caso).

A razão pela qual adicionamos fusos foi aumentar o tempo total por transação. fomos de RAID1 para RAID10 (4 discos) e o desempenho dobrou. esperávamos um aumento de 33%. ADs / T é recomendado a 20ms no máximo. estamos em 100. percebemos que não iríamos chegar a 20 adicionando 2 discos, mas como antes eu estava aqui eles estavam em 400ms, eles estariam bem por enquanto nos anos 50 e 60.

as transferências por segundo são em torno de 850

Eu entendo a lógica por trás da adição de discos que não está acelerando uma transferência individual contra um determinado disco. Mas para todos os efeitos, ADs / T (ou ler ou escrever também) é uma medida do tempo que leva para fazer algo contra um determinado disco / volume de acordo com as janelas. Portanto, se uma transação inteira levar 40 milissegundos, mas, na verdade, ela está gravando em 4 discos, é gasto teoricamente 10 ms por disco, se feito em paralelo. Há sempre a chance de escrever o mais rápido possível em um disco e depois passar para o próximo, mas como alguém pode dizer o que está fazendo?

assim, o tempo que leva para 4 discos deve ser proporcional aos 6 discos. O Windows deve vê-lo mais rápido, mesmo que, se um disco atingir seu potencial máximo, cada disco não será mais rápido.

ssd não é uma opção para nós devido ao grande tamanho de nossos índices, o espaço total que precisamos para todos os nossos arquivos sql e o custo. Os tamanhos de SSD ainda não estão lá, embora para arquivos de tamanho menor isso possa fazer sentido.

se adicionar discos não ajudar a melhorar a velocidade, como explicar o aumento de 50% no desempenho ao passar de 2 para 4 discos e, em seguida, nada quando passar de 4 para 6?

    
por Mark Henderson 18.04.2011 / 21:08

5 respostas

1

Você deve se aprofundar nas estatísticas de desempenho de SQL e também nas estatísticas de desempenho. Se você tiver muitas conexões, pode ajudar a criar vários arquivos TempDB menores. (leia sobre isso, foi um grande ganho para nós. link ) Se você tiver um relação de cache de buffer abaixo de 93 você pode querer mais memória. Uma estatística não é suficiente para diagnosticar o problema. Há mais de uma maneira de armazenar o armazenamento.

Se a caixa for 2008, use o Monitor de Recursos para determinar quais arquivos de banco de dados são mais ocupados. Colocá-los em eixos diferentes é a melhor correção de desempenho. Especificamente, se você tiver toneladas de leituras e gravações, em vez de ler na maioria das vezes, procure instalar um segundo controlador de unidade, algumas unidades externas menores de 15k e obter seus arquivos LOG e TempDB longe da unidade configurada com os dados contidos nela.

    
por 24.06.2011 / 20:31
0

Você pode estar limitado pelo seu ônibus, também procure um cabo com várias pistas para aumentar a taxa de transferência.

    
por 18.04.2011 / 21:49
0

Você pode estar atingindo uma parede com o barramento ou mesmo com o processador sendo capaz de processar os dados. Se este é realmente o gargalo você vai querer olhar para obter outra máquina, puxando os 2 discos que você adicionou e adicionando-os a um RAID10 na outra máquina.

Neste ponto, você configuraria um sistema de arquivos paralelo entre os dois RAIDs nas máquinas para melhorar ainda mais o desempenho (você deve ver um grande aumento nas taxas de leitura e gravação de dados)

    
por 16.06.2011 / 06:09
0

Todos os comentários acima, especialmente o "pequeno segredo sujo" estão no caminho certo.

Para o desempenho do SQL dicas do sistema de disco RE, consulte: link

    
por 13.02.2012 / 19:46
-1

O pequeno segredo sujo do RAID:

Adicionar mais discos apenas aumenta seu desempenho se o afunilamento estiver enfileirado devido a ter muitas tarefas e discos insuficientes. Ele não torna os discos individuais mais rápidos e, de fato, adiciona uma certa quantidade de sobrecarga. No final, a leitura de dados do disco funciona exatamente da mesma maneira que antes, e ainda é preciso muito tempo para isso. A diferença é que você pode fazer isso em vários discos ao mesmo tempo - o que só ajuda se você estiver mantendo todos os discos ocupados.

Mudar para um disco de velocidade mais alta (como os SSDs) provavelmente ajudará bastante. Um único SSD pode superar uma caixa inteira cheia de drives winchester se a latência e o tempo de busca forem o problema.

Uma solução interessante que ainda está um pouco em desenvolvimento, mas já mostra muita promessa, é o módulo flashcache do Facebook. É apenas Linux, mas, novamente, se o desempenho é um problema, então você não deveria estar usando o Windows de qualquer maneira. Alguns benchmarks realizados por Vadim Tkachenko em Percona mostram que flashcache pode fazer com que você obtenha 99% do desempenho < / a> rodar em SSD com apenas uma fração do custo - supondo, obviamente, que a distribuição de hits não esteja distribuída uniformemente em todo o conjunto de dados.

    
por 18.04.2011 / 22:17

Tags