Quanto custa o cache do HDD com o softraid do Linux?

3

Estou em um processo de renovar / expandir meus conjuntos de discos, mas não tenho certeza sobre que tipo de discos obter, em cache.

Que diferença faz a quantidade de cache de disco de 16/32 / 64MB, em capacidades de, digamos, discos SATA de 1 / 1,5 / 2TB? Os discos serão usados em um servidor webapp e em uma estação de trabalho de mídia, com o softraid do Linux em configurações de raid-1 / raid-5. Note que, como ambos os propósitos são apenas para um hobby, o preço de uma dúzia de discos é um grande problema.

    
por Jawa 20.04.2010 / 18:34

1 resposta

10

Cache e RAID tem um relacionamento interessante.

Controladores RAID caros possuem cache interno e desativam o cache da unidade (normalmente). A razão é que o RAID é normalmente projetado para garantir que seus dados estejam seguros e para aumentar o desempenho. O cache ajuda o desempenho em detrimento da confiabilidade, porque se a energia acabar, o cache desaparece, mesmo que o software tenha considerado seguro. Isso causa coisas ruins no software que realmente precisam saber que existem dados no disco. Coisas como bancos de dados.

A bateria existe para gravar os dados na NVRAM, no caso de um controlador, ou nos discos físicos, no caso de uma matriz com bateria.

O RAID de software realmente não tem esse tipo de opção. Se as unidades disserem "ok, temos os dados" e, em seguida, a energia morrer enquanto os dados ainda estiverem no cache, haverá um problema. Não há NVRAM que mantém os dados, e os discos não continuam girando graças a um backup de bateria (por conta própria, de qualquer maneira. Software adicional pode estar disponível para fazer isso).

Eu gostaria de ler a pergunta 9 em "Considerações de configuração" no COMO FAZER Software RAID: link

Essas perguntas têm uma leitura interessante: Discos SATA que lidam com gravação cache corretamente?
Espelhamento do LVM VS RAID1

De qualquer forma, em resposta à sua pergunta ... mais cache de unidade dá à unidade mais espaço para "brincar". Em outras palavras, colocar as coisas no disco é caro, em termos de tempo. Armazenar coisas na memória é muito barato.

O desempenho dependerá realmente da carga que você está colocando nos discos e de onde está o gargalo. Cada fuso do seu disco tem uma estatística chamada IOPS (operações de E / S por segundo - link ) que determina o quão rápido ele pode colocar bits nos pratos giratórios. Se você alimentar o disco rígido com mais dados do que ele pode colocar em um disco, ele usa o cache. Se você continuar martelando, continua alimentando o cache. No ponto em que o cache fica cheio, o computador aguarda no disco para limpar os dados "sujos" (dados que precisam ser gravados).

Portanto, com um sistema RAID, você tem vários discos sendo alimentados, aumentando assim a IOPS. Depois de adicionar fusos suficientes, o disco deixa de ser o gargalo e se torna o trânsito para o array (você não está lá ainda, não se preocupe).

Essencialmente, mais cache oferece mais espaço de manobra quando se trata de despejar muitos dados no (s) disco (s). Se você é particularmente orientado por IO, verá uma melhoria.

Por outro lado, se você, seu software ou sua matriz RAID (inexistente no momento) desativa o cache da unidade, você paga muito dinheiro por nada.

No final, se você tiver uma opção, obtenha um cache mais baixo em favor de uma taxa de rotação mais alta.

    
por 20.04.2010 / 18:51