como um RAID distribuído funciona com um grande número de discos?

como um RAID distribuído funciona com um grande número de discos?

ainda estou tentando configurar meu grande (24) conjunto de discos (2,4 TB) para um arquivo/nas de arquivos grandes e pequenos mistos. Mas, fora isso, agora estou mais focado em entender como os RAIDs distribuídos funcionam nos bastidores, mas mais eu leio e fico mais confuso porque a maior parte dos exemplos da literatura são baseados em um número "baixo" de discos (perguntei ao produtor, mas ele estava relutante em responder publicamente a algumas dessas perguntas porque "informação reservada")

  • tamanho da faixaé geralmente (Number of data disks) x (size of strip)(ou pedaço) por exemplo. 8x64KB=512KB ou 10x256KB=2560KB
  • como os arquivos são divididos e salvos nolistra? um arquivo por faixa (as faixas restantes são preenchidas com zeros) ou muitos arquivos por faixa até que todas as faixas sejam preenchidas?
  • para matrizes grandes, o tamanho da faixa ainda é importante? Quer dizer, descobri que meu PERC usa um valor fixo de 1 MB para o tamanho da faixa se seu valor for maior que 1 MB (por exemplo, 8x256 KB). Nesse caso, como deve ser disposta a faixa? ainda é grande como 8x256 KB = 2 MB e dividido internamente em 2x 1 MB? ou é grande 1 MB dividido por 8 discos de dados?
  • hoje em dia devo configurar um RAID distribuído com "potência de 2" em mente? meu PERC me permite configurar qualquer número de discos para qualquer tipo de nível de RAID, que não tenham potência de 2
  • conhecendo essas limitações (?), vale a pena definir o array como 2x12Disks RAID60 e 256 KB de tamanho de faixa? não precisamos desperdiçar muito espaço

Responder1

como os arquivos são divididos e salvos na faixa? um arquivo por faixa (as faixas restantes são preenchidas com zeros) ou muitos arquivos por faixa até que todas as faixas sejam preenchidas?

Matrizes como essa não pensam em termos de arquivos, apenas blocos, o próprio sistema de arquivos define quais arquivos são compostos de quais blocos, não é o sistema de disco subjacente que faz isso.

Portanto, não pense nisso como arquivos apenas blocos, imagine todos os arquivos em seu sistema de arquivos, mas retire todos os dados sobre pastas e arquivos, é apenas uma grande pilha de blocos - e são esses blocos que são distribuídos pelos discos disponíveis para desempenho e resiliência.

De modo geral, o padrão para sistemas de arquivos e matrizes RAID como este caberá perfeitamente em 95% de todos os aplicativos. A capacidade de ajustá-los é ótima se você tiver tempo para brincar e testar todas as diversas combinações ou se tiver um aplicativo que tenha requisitos incomuns (como ler ou gravar constantemente muitos arquivos minúsculos aleatórios ou, no outro extremo, arquivos sequenciais enormes) - nesses casos, sim, alguns ajustes podem trazer benefícios significativos. Mas, novamente, de modo geral, os padrões costumam ser muito bons para a maioria dos casos de uso. Eu faço VoD, então frequentemente ajustamos nossos volumes de armazenamento para ter faixas/blocos muito grandes porque sabemos que são todos arquivos sequenciais grandes, mas não colocamos nossos arquivos de banco de dados ou logs etc. seria terrível para esse uso.

De qualquer forma, voltando às recomendações, que bom que você parece ter escolhido o R60 - recebemos pessoas aqui o tempo todo com problemas com o R5/50, está morto, não o use de jeito nenhum - R6/60 e R1/10 são os únicos jogos na cidade, a menos que você tenha um tesão por ZFS de qualquer maneira :) - de qualquer forma, se eu estivesse fazendo isso, faria exatamente o que você sugere - R60 composto de 2 x R6 de 12 discos, deixe a faixa nos padrões e depois como seu aplicativo começar a usar esse array, você pode ver como está o desempenho dele e se realmente sentir que precisa ajustá-lo e obter muitos benefícios com isso, vá em frente, mas aposto que você ficará bem com os padrões .

Boa sorte.

informação relacionada