RAID

O que é RAID?

Antes de falar de RAID, precisamos nos lembrar que hoje nossos processadores atingiram a casa dos 4Ghz, 6 núcleos (Phenom X6 Thuban), as memórias também trabalham e frequencias um dia inimagináveis e com quantidades razoável. “Porque então comprei um novo computador, Quadcore com 4GB de RAM e ainda não assim não consigo um desempenho satisfatório?”

Alguma vez você já se perguntou qual é o único componente do computador que não evoluiu? Qual o único componente ainda mecânico no nosso computador? São os HDs (Isso não é totalmente verdade. A evolução do HD surgiu há pouco tempo e se chama SSD, porém ainda não tem um preço atrativo para usuários finais).

Apesar de termos atingido capacidades absurdas (temos discos de 2 TB hoje), o HD continua trabalhando de forma mecânica e magnética.  Suas taxas são muito abaixo das taxas do processador ou da memória. É aqui sim que o desempenho do nosso PC afunila.

Veja como exemplo um processador qualquer que trabalhe com o FSB de 800 Mhz, atinge a taxa máxima de 6400MB/s. As memórias para esse processador trabalhariam com uma frequência de 400 Mhz e transferem 3200 MB/s no máximo (por isso o uso de memórias em par para habilitar o Dual Channel e atingir a mesma taxa de transferência do processador). Já o HD, transfere quanto? 1600MB/s? 800 MB/s? Não! Mesmo trabalhando com HD SATA 300 que é o HD mais rápido que usamos para desktops (desconsiderando os Raptors que são caríssimos) atinge “teoricamente” a taxa de 300MB/s (se é que raramente passa de 70MB/s)que é 20 vezes menor que ataxa do processador. Isso porque estamos falando de um processador que está longe de ser top.

Isso faz com que pensemos: “Como aproveitar melhor o desempenho do meu PC?” “Só comprando um SSD?”

SEUS PROBLEMAS ACABARAM!

É aqui que entra o RAID. RAID vem de Redundant Array of Independent Disks algo como Matriz Redundante de Discos Independentes. Essa tecnologia foi herdada de grandes servidores e fazem parte do dia-a-dia dos desktops desde 2001, porém a popularização da mesma se fez nos últimos 3 ou 4 anos.

Os desktops contam com vários tipos de RAID,  são eles:

RAID 0 ou Stripping (Distribuição) – Consiste na soma de 2 ou mais discos que são reconhecidos como apenas 1 disco cujo tamanho é a soma total de todos os outros e onde as informações são distribuidas sincronizadamente, ou seja, quando gravamos um arquivo no array (matriz de discos), a controladora o divide em blocos que são gravados sequencialmente nos discos ao mesmo tempo. Tendo 2 discos que dividem a quantidade do arquivo ao meio para serem gravados ao mesmo tempo em paralelo, gastariamos em teoria metade do tempo de gravação, pois um arquivo que hipotéticamente levaria 10 segundos para ser gravado em 1 disco, levará 5 segundo se for gravado em 2 discos sendo metade do arquivo em cada e o ganho de desempenho aumentaria a cada disco a mais incluso no array. A única desvantagem do RAID 0 é que se 1 dos discos for danificado, automaticamente todo o conteúdo da array será perdido já que parte dos dados necessários para a construção do arquivo se foram com o disco avariado. Em teoria deveríamos ter o dobro de desempenho, mas na prática ganhamos de 30 a 40% de desmpenho dependendo da aplicação. Em um PC com uma placa mãe GA-MA61PME-S2 com 2GB de Ram e processado X2 5000+ a instalação do XP em modo normal leva cerca de 27 minutos, já com o RAID 0 montado, levou 11 minutos e 28 segundos.

RAID 1 ou Mirroring (Espelhamento) – Consiste no uso de disco aos pares onde diferentemente do RAID 0, o array fica com a metade do tamanho total dos disco já que apenas metade do espaço será disponibilizado para alocação, enquanto a outra metade fica reservado para o espelhamento ou seja, tudo que é gravado em 1 disco é espalhado para o outro. Todo esse processo é transparente para o usuário e garante a segurança mesmo que 1 dos discos venha a falhar. Se 1 dos discos do array falhar, mesmo que seja o disco usado para subir o sistema, o outro é acionado automaticamente de forma imperceptível, sem delays ou demora e sem a necessidade do reinicio do sistema operacional. O disco defeituoso pode ser trocado sem a necessidade do reinicio da máquina, desde que a placa e o disco aceitem essa função (AHCI na placa e Hot Swap para o disco), e o rebuilding (ou reconstrução) do array é iniciado e pode levar horas ou até dias dependendo do tamanho dos discos (o rebuilding é feito de forma transparente e em background para não interfirir no desempenho da máquina). Como todas as informações gravadas em 1 disco são espelhadas no outro, temos uma ligeira perda de desenpenho, cerca de 10%, porém é a solução ideal para pequenas empresas que não tem solução de backup dedicado e não pode perder as informações de forma alguma.

RAID 5 ou Parity (Paridade) – O RAID 5  consegue aliar o desempenho por usar vários discos e  ao mesmo tempo manter uma cópia de segurança para reconstrução caso algum disco seja danificado.

O RAID 5 utiliza no mínimo 3 discos e os dados são distribuídos paralelamente, o que faz com que o desempenho beire o de um RAID 0 com o mesmo número de discos,  porém a paridade também é distribuida entre os discos de uma forma que a perda de 1 dos discos não venha paralisar o sistema.

É preciso lembrar porém que o RAID 5 fica com 1/3 do tamanho total do array reduzido. Tamanho esse que é usado para armazenar a paridade de dados. Veja na imagem abaixo como funciona o sistema.

Veja que o disco 1 guarda paridades referente ao disco 2 e 3, o disco 2 guarda paridade referente aos discos 1 e 3 e o disco 3 guarda as paridades dos discos 1 e 2. Veja que se 1 dos discos parar, os 2 outros detém as paridades necessárias para que o array consiga continuar online.

Lembrando que assim como o RAID 1, quando 1 disco ou mais param (desde que haja paridade suficiente para manter o array online), o SO continua a trabalhar normalmente, o array fica com a velocidade degradada, porém continua trabalhando. Se for plugado 1 disco hotswap o array passa a fazer o rebuild em segundo plano.

RAID 0+1  ou 10 ou Stripping + Mirroring (Distribuição + Espelhamento) – Nesse nível de RAID, podemos usufruir tanto do desempenho do RAID 0 e a segurança do RAID 1.

Para a construção desse RAID é necessário trabalhar com discos aos pares e com no mínimo 4 discos.

Apesar do RAID 5 parecer ter maior desempenho (já que distribui dados por vários discos ao mesmo tempo), em algumas aplicações o RAID 0+1 é muito mais eficaz e seu desempenho muito superior. Um exemplo dos aplicativos que conseguem extrair o máximo de velocidade desse tipo de RAID, podemos citar o Exchange e o SQL Server.

JBod ou Spanning (Expandido) – JBod ou Spanning não é na verdade um RAID, não traz ganhos de segurança e nenhum desempenho. O que o JBod faz é apenas segmentar os discos.

O JBod combina o espaço de todos os discos do array, ou seja, quando um dos seus discos físicos termina, ele segmenta os arquivos para o próximo disco. Nenhum ganho, seus discos passam a ser reconhecidos como 1 só e é só isso.

Esses são os níveis de RAID que temos para desktops. Existe uma infinidade de outros níveis para servidores e que vou comentar em um outro tópico em um outro dia.

Lembre-se no próximo upgrade que for fazer que implementar um RAID pode dar mais ganho que a troca de processador ou aumento de memória. É claro que cada caso deve ser analizado e que a troca de um Celeron D por um Core2Duo daria um ganho surpreendente… mas se voc}e tentou de tudo, já tem uma boa configuração e não vê como ganhar mais desempenho… tente montar um RAID, você ficará surpreso…

14 Respostas to “RAID”

  1. Ai Akira muito bom esse do Raid eu piro quem vejo essa tecnologia !

  2. vi teu tópico na comunidade sobre o RAID
    queria tirar uma dúvida

    olhei no mercado livre sobre o RAID e apareceu tipo uns “gabinete” pra HD
    queria saber se essa tecnologia só funciona com esses “gabinetes” ou se eu ligar 2 ou mais hds direto na placa mãe ele funciona automaticamente

    minha placa mãe: m4a785td-m evo

    5 xSATA 3 Gb/s ports Support RAID 0,1,10,JBOD

    valeu

    • Só habilitar a controladora, criar o array, instalar o SO e usufruir.
      Não precisa de gabinete especial, o que seria “desejável” é usar 2 HDs idênticos na marca, modelo e capacidade para ter o mesmo tempo de acessp.
      Qualquer duvida, deixe outra pergunta.

      []s

      Akira

  3. “Só habilitar a controladora, criar o array..” o que seria array? parabéns pelo blog, coloquei nos meus favoritos já😀

    • Array é um conjunto de discos… depois de habilitar o controlador RAID no setup, vc deve entrar no setup da controladora (na Asus geralmente F10 quando pedir) e cria o(s) array(s).
      Exemplo, se vc for criar um RAID 0, deve criar um array de pelo menos 2 discos… vc pode ter mais de 1 array… desde que tenha no mínimo 2 HD’s por array.

  4. então se eu tenho 4 HD’s, crio 2 arrays, seria mais ou menos 2 HD’s (nesse caso, 2 HD’s formariam 1, 4=2) no pc ? e eles não trabalhariam ao mesmo tempo (a não ser que eu crie apenas 1 array para os 4 HD’s). é isso ou entendi errado e falei besteira?

    • Correto… vc pode criar 1 array de 4 ou 2 de 2… criando 1 array só, “teoricamente” vc teria 4x mais desempenho… claro que isso não vai acontecer, mas vc vai ter um puuuta desempenho qdo rodar aplicativos que dependam diretamente do disco…
      Só que a chance de 1 dos 4 HDs dar problema é maior que 1 em 2, ou seja SPOF Single Point Of Failure ou traduzindo ao pé da letra, é confiar todos os ovos em uma só cesta… se a cesta quebrar, vc perderá todos de uma só vez… o ideal para vc seria um RAID 5, porém vc perderá 1/3 do espaço dos seus discos para paridade, porém mesmo que um dos discos queime, seu sistema continua funcionando normalmente.

  5. entendi, realmente o desempenho deve ser muito melhor.. quando puder testo aqui hehe.. valeu pela explicação

  6. I would like to exchange links with your site professorakira.wordpress.com
    Is this possible?

  7. […] possível, monte um sistema RAID 0 ou RAID 5 (entenda melhor o sistema RAID clicando aqui) para um desempenho geral muito maior, com cerca de 30 a 40% chegando até um pouco mais quando […]

  8. Bom dia, eu tenho o SO Windows 2003 Server em portugues já totalmente configurado e a funcionar em disco de 160Gb e gostaria de implementar o raid1 com outro disco igual. Mas não gostaria de refazer toda a configuração atual novamente. Qual o procedimento?
    Deveria criar o raid com uma copia do SO atual e depois de criado o raid 1 apaga todo o conteudo existente e depois desta criação repor o SO novamente atraves do seagate diskwizard por exemplo? ou tem outra amneira mais eficaz? Agradeço a vossa (ou de outros leitores) para esta ajuda se possivel
    Obrigado
    Aloisio Faria
    aloisiofaria@yahoo.com

    • Caro Aloisio,

      o ideal seria fazer tudo do zero, mas na inviabilidade, é possível fazê-lo pelo gerenciamento de disco.

      qualquer dúvida poste!

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: