O RAID 0 (striping) com dois discos rígidos SSD faz algum sentido?


9

Eu tenho um notebook (Dell M6500, 16GB de RAM, I7-940M) com controlador RAID (controlador de RAID de hardware). No momento, tenho dois HDDs SATA em RAID 0 (faixa) para obter o melhor desempenho.

Eu quero comprar SSDs (Samsung 840 pro).

O RAID 0 (distribuição) com dois discos SSD faz algum sentido ou apenas um disco é suficiente?

Então, 1 ssd de 512 GB (sem invasão) ou 2 ssd de 256 GB (raid 0 listra)?


11
É um desperdício, você estraga as latências fazendo isso, o que é uma das principais razões para o SSD em primeiro lugar.
Nerdwaller 28/03

Não. O sistema operacional está solicitando 2 SSDs em vez de dois HDDs. Não vejo menção de misturar um HDD e um SSD em uma faixa.
Hennes 28/03

Quanta velocidade é suficiente? Você parece experiente o suficiente para testar você mesmo! Salve seus discos rígidos e tente instalar com um ou 2 ssds. Veja se isso faz diferença. Lembre-se de que, se um SSD falhar, você perderá todos os dados no volume se distribuir.
precisa

Opa, eu interpretei mal a pergunta.
allquixotic

Sei que em uma configuração de faixa se um SSD falhar, perderei todos os dados no volume (quero desempenho, para backup, tenho outra solução). Assim como agora (2 discos em raid 0 tarja). A questão é se é melhor desempenho ter 1 ssd de 512 GB (sem invasão) ou 2 ssd de 256 GB (faixa do raid 0).
Andrea

Respostas:


12

Você precisa ler a pergunta corretamente.

Ele está perguntando sobre RAID0 STRIPE, não RAID1 MIRROR.

Minha resposta: SIM, você terá uma melhoria significativa na velocidade.

ref: http://staff.science.uva.nl/~delaat/rp/2009-2010/p30/presentation.pdf

Velocidade: Minhas estações de trabalho executam o Linux Mint usando software raid (mdadm) e eu executo 4 unidades em uma faixa com o XFS como sistema de arquivos. Depois de se sentar nessa estação de trabalho, você não deseja voltar aos velhos tempos com UMA unidade de prato.

Faça backup da sua estação de trabalho diariamente com backup incremental, semanalmente, um backup completo, caso um SSD trave.

Sua velocidade é ótima, mas se ONE ssd travar, você perde muitos dados. Então você está avisado.

Faça backup e use a nuvem para armazenar arquivos adicionalmente.

Armazenamento: Meu NAS está executando o FreeBSD ZFS ZRAID2 para armazenamento com 2 + 4 unidades de 3 TB, por isso tenho 12 TB e 2 unidades de 3 TB fornecem redundância, para que eu possa perder 2 unidades por vez sem perder dados. Meu NAS é executado em unidades regulares.

Atualmente, o ZFS é o melhor sistema de arquivos para discos, com certeza para armazenamento. Você pode procurar o FreeBSD ou uma solução de software NAS dedicada, como FreeNAS, ZFSguru, NexentaStor ... Eu escolhi o ZFSguru porque gosto de ajustar o sistema FreeBSD. Eu uso compartilhamentos iSCSI e SMB / NFS nele.

Servidores:

Meu favorito é usar pratos para ZFS e usar SSD para ZIL no ZFS. Mas é arte negra.

NOTA 1:

Tente evitar invasões de hardware, em caso de falha Você precisa ter o mesmo hardware novamente. Não use os controladores baratos de ataque nas placas-mãe dos clientes. Tente usar a invasão de software suportada pelo sistema operacional, apenas para recuperação, pois o sistema operacional tem mais maneiras de lidar com a invasão como a maioria dos softwares de invasão de baixa qualidade nesses controladores de hardware.

NOTA 2:

Ao usar o ZFS, evite a todo custo controladores de invasão de hardware. Procure placas-mãe com portas SATA suficientes para conectar suas unidades. Existem controladores dedicados sem funcionalidade de ataque.

Configurar o ataque usando o ZFS

NOTA 3:

Os SSDs não são mais dimensionados após 4 discos Os HDDs continuam a ser dimensionados após 5 discos

NOTA 4:

Existem diferentes tipos de SSD

Você tem SSD SLC e MLC. Os primeiros são os mais caros, mas os mais rápidos e os melhores para operações pesadas de leitura / gravação.


3

Sim, as velocidades de gravação aumentam. Estou executando um RAID 0 em 4 SSDs a 30 GB cada, a minha velocidade de gravação aumenta 600 Mbps. Em breve, atualizarei para 2x 256 unidades SATA3 SSD Raid 0, com apenas um disco rodando a 300 Mbps, portanto, depende de você. a classificação SATA, se você tiver 2 SSDs SATA 3, poderá gravar também 900 Mbps, mas isso também requer uma instalação do Raid 0. Portanto, depende de você se você preferir ter desempenho. Sim, é mais rápido e, sim, você perderá todos os dados, mas se for apenas para jogos, poderá reconstruí-los em menos de um dia. Além disso, se suas opções fossem obter 2x SSDs de 256 GB ou 1x SSD de 512, eu usaria o SSD 2x 256, para velocidades de gravação muito mais rápidas.


11
Além disso, as velocidades de gravação têm um limite máximo, dependendo da classificação SATA, mas você sempre pode usar os discos rígidos PCI da OCZ para obter desempenho. : D
Eryper 28/03

2

Aqui está o teste que eu fiz. você pode se decidir olhando para o resultado.

Ambiente

  • CPU: CPU Intel Xenon E5-2650 v3 a 2.30GHz (núcleo 10, processador lógico 20)
  • RAM: 32GB
  • Arquivo: sample.rar (tamanho de 13,5 GB)
  • Windows 10

Teste

Minha estação de trabalho inclui.

  • 2 SSDs de 1 TB configurados como uma unidade RAID0
  • Disco rígido de 1 TB
  • Terminal Cygwin usado cpe timecomandos
  • Se você não é da família com timecomando, usa 'tempo real' para comparar cada caso

Aqui está o tempo de cópia do arquivo para cada situação

RAID0 para RAID0

real    0m17.089s
user    0m0.140s
sys     0m10.686s

RAID0 para HDD

real    1m25.302s
user    0m0.437s
sys     0m21.078s

HDD para HDD

real    1m17.935s
user    0m0.265s
sys     0m14.921s

HDD para SSD

real    1m29.908s
user    0m0.359s
sys     0m13.281s

Nota: Na minha estação de trabalho, utilizo esta unidade RAIDO para compilar um projeto C ++ / C # grande de 150 GB. Isso me salvou mais de duas horas por causa da configuração do RAID0. Se você precisar configurar o RAID0, consulte a postagem do blog que escrevi http://codeketchup.blogspot.sg/2016/03/how-to-setup-raid-0-with-ssd.html


11
É difícil dizer se os resultados aqui são devidos a striping ou devido ao desempenho do SSD vs HDD. Para garantir a integridade, você precisará incluir um SSD sem distribuição no SSD.
de Drew Noakes

1

Enquanto você pode RAID 0, dois SSDs e, em alguns cenários, vê velocidades de leitura / gravação muito mais rápidas (consulte esta análise do TechReport para obter um exemplo extremo com 4 unidades no RAID 0). Um único SSD oferecerá um desempenho suficientemente bom, que eu não recomendaria. Duas unidades no RAID 0 significam que, se uma delas falhar, você perderá todos os seus dados.

O TechReport também tem essa revisão comparando a escala de SSD em uma família de unidades, o que pode ajudar a comparar o delta de desempenho com unidades maiores.

Grande parte da resposta a esta pergunta dependerá do uso pretendido. Desenvolvimento, edição de fotos, jogos etc. podem ter diferentes padrões de acesso ao armazenamento. A melhor aposta é ler comentários nos melhores sites de tecnologia.


Com o dropbox e outras boas práticas de gerenciamento de backup / dados, perder minha unidade principal do sistema operacional não me incomoda muito.
James Mertz 28/03

0

Meu computador de trabalho é um Dell M6500 e estou executando um SSD Corsair 240gb. O M6500 possui uma interface SATA 2, para que você não obtenha a velocidade total dos drives SATA 3. Eu direi que é muito mais rápido que o meu computador pessoal, um M6400 com 2 discos rígidos de 160GB em uma faixa RAID 0. Eu acredito que você veria um aumento com 2 SSDs, mas não o dobro do que obteria com apenas 1 SSD.


0

você está atrás da velocidade e não se preocupa com redundância .. então eu vou responder isso. O Raid 0 pode oferecer pequenas melhorias; portanto, se o custo de 2 SSD de 256 Gb não for diferente de 1 SSD de 512 Gb, faça o mesmo.


0

Isso está pedindo uma opinião, mas:

Faz sentido se seu objetivo é desempenho puro para um único volume.

Se não faz sentido se:

  1. O acesso ao disco é rápido o suficiente (e até um único SSD moderno será rápido o suficiente para quase tudo. Especialmente se os outros gargalos potenciais forem componentes de laptop).
  2. Se você precisar de um consumo mínimo de energia (você processará duas unidades o tempo todo. Um SSD usa menos energia que um HDD, mas ainda assim é mais do que no modo de suspensão / espera).
  3. Se a confiabilidade for necessária (mas, novamente, o mesmo vale para dois discos giratórios em um RAID 0 / faixa)

Tudo isso pressupõe que "com um número suficiente", você quer dizer "É um SSD (não em uma faixa) o suficiente. A mistura de um SSD e um HDD deve funcionar tecnicamente, mas, dependendo do RAID, pode render o pior dos dois mundos.


0

2X ou Nx podem acelerar apenas se você não saturar o barramento, algumas placas-mãe compartilham a banda ao longo de todas as portas SATA que possuem, enquanto outras permitem que você alcance essa largura de banda em cada porta ao mesmo tempo.

E lembre-se ... a velocidade de leitura não é a mesma que a velocidade de gravação ... normalmente, a velocidade de gravação é muito mais lenta que a leitura (tente gravar rapidamente em um SSD 32GiB consecutivo) a maioria deles irá muito rapidamente alguns megabytes e depois caem para 25MiB / s ou menos (eles usam cache interno com uma memória DDR3 dentro do SSD, quando cheios, não podem continuar recebendo dados a essa alta velocidade, para que as gravações fiquem mais lentas).

Às vezes, você deve fazer benchmarks, se desejar uma inicialização rápida (ler é importante, não escrever muito), se desejar gravar grandes arquivos com dados aleatórios, verifique se o benchmark grava pelo menos alguns GiB o mais rápido possível, alguns SSDs têm 1 ou 2 GiB de RAM dentro do SSD para cache de gravação ... então é melhor preenchê-lo completamente para fazer o benchmark.

Sobre as IOPs: essa é a coisa mais importante em QUALQUER tipo de armazenamento (usb, sticks, discos de prato, ssd etc.), por exemplo, para arquivos pequenos, ou melhor, para pequenos pedaços de dados gravados / lidos, assegure (para SSD ) diz mais do que ... valor.

Agora, respondendo à sua pergunta: -Se o "grande" tiver menos de 2x de IOPs do que o dos "pequenos", não compre o "grande" ... compre o que lhe dá o máximo de IOPs

Acredite, as IOPs são muito mais importantes do que as velocidades de leitura / gravação que vêm em 'especificações' ... porque: -Dizem o valor mais alto atingido (para velocidade de gravação, elas usam RAM interna no SSD e não gravam dados suficientes para preencher ... e alguns também usam a RAM do PC como cache de gravação, então eles dizem que alguns GiB / s escrevem velocidade, essa velocidade é a RAM principal do seu PC, os dados ainda não estão nivelados no SSD)

AGORA, para todos aqueles que dizem que Raid0 vai fazer você perder ...

Se você fizer isso, nada será perdido: 1.- Use RAID 0 para o sistema operacional 2.- Crie um clone do sistema operacional em um gabinete USB (melhor se o USB 3.1 Gen 2 ... 10Gib / s)

Se um disco falhar, retire o que falhou, coloque um novo, restaure o clone e em alguns minutos o sistema será inicializado novamente.

Agora, como fazer essa inicialização também rápida após um ou mais discos em um RAID 0 morrer: 1.- Depois de ter o sistema operacional como você deseja, crie um clone no USB 2.- Remova esses dois ou mais discos no RAID 0 e coloque-os em um local seguro 3.- Coloque os novos no PC e recupere o clone

Quando um disco morre, você tem os outros prontos para serem colocados e inicializados ... apenas alguns segundos para fazer a troca e a reinicialização ... e crie outro conjunto para colocar em um local seguro.

Isso funciona para qualquer tipo de disco RAID ... Platter de software Linux e também SSD.

O custo: Tenha o dobro de discos ... alguns funcionando, outros preparados com os dados e prontos para inicializá-los.

Agora, para dados (não sistema) no RAID 0 e zero a perder (exceto alterações feitas antes do backup): 1.- Após qualquer gravação, faça backup das alterações na mídia externa (eu pessoalmente uso 5 cópias diferentes em diferentes kinf de mídias) , SSD, disco rígido, DVD, cartões de memória e pen drives) 2.- Antes de desligar o sistema, verifique se os backups estão sincronizados

Lembre-se de que o RAID 0 é ótimo para 'velocidade' enquanto você o usa ... mas qualquer falha e tudo o que há SOMENTE lá será perdido (a chave é essa palavra: SOMENTE).

Pense que você possui um clone do sistema no gabinete USB externo ... perder o sistema não é problema, inicialize um Live Linux e restaure o clone no mesmo disco (falha no software do caso) ou em novos diks (falha no hardware do caso).

Pense que você tem todos os seus dados em algum BackUP (mais de uma cópia), perder dados dentro da busca não é um problema, basta copiar os dados do BackUP depois de corrigir o que causa a falha (substituir discos, etc.).

Agora pense que você também não deseja esperar por essa 'cópia de volta' ... isso pode ser feito com um segundo conjunto de discos em um estado pronto para uso.

E, finalmente, pense ... após uma falha, durante o trabalho, faça uma tarefa em segundo plano para recriar esse segundo conjunto de 'pronto para uso'.

Se você usar esses hábitos ... nunca mais usará o RAID 0 do Linux ...

... exceto quando você tem muita RAM e pode usar o ZFS.

Principais ganhos do ZFS: 1.- Soma de verificação na leitura / gravação, para detectar alterações de Bits no estado desligado 2.- Possui um parâmetro que permite que você tenha mais de uma cópia de cada arquivo ou pasta que deseja (com e sem níveis de RAIDZ ) 3.- Se você puder perder 50% ou mais do espaço, poderá usar cópias ZFS = N em apenas um disco (notebook) e, caso alguns dados sejam corrompidos no modo desativado, o ZFS ainda poderá ler corretamente (ele armazena várias cópias no mesmo disco) ... também é possível usá-lo em paralelo com os níveis de ZFS do RAIDZ. Está tornando mais redundante.

Cópias do ZFS = N é como o antigo nível RAID 1, mas com somas de verificação e correção automática em caso de detecção de dados incorretos.

Aviso sobre o ZFS: a falha do bit de RAM em algumas partes do ZFS pode arruinar todo o ZFS e perder todos esses dados ... portanto, nunca use um e apenas um ZFS para armazenar dados ... tenha o Backup de todos e o tenha sempre.


0

Não testei com mdadmou raid0 de hardware, mas testei com a remoção de LVM.

A resposta curta é que a velocidade combinada de leitura é menor do que apenas uma sequência de leitura SSD, se você usar faixas curtas (para uma faixa 4KiB de exemplo).

Parece uma condição de corrida, parece que o LVM está enviando uma solicitação de bloco para cada SSD por vez, não em paralelo.

Portanto, se o tempo para processar a solicitação for maior do que o SSD leva para enviar dados para a RAM, 2 ou mais SSD não enviarão dados para a RAM, eles estarão na maioria das vezes aguardando comandos e processando esses comandos.

Somente quando eu começo a colocar tamanhos de faixa grandes, a velocidade combinada de leitura começa a subir mais que o SSD único, e eu estou falando de faixas de 1MiB; o ganho foi cerca de 1,3 a 1,5 vezes mais rápido com o 2xSSD do que apenas um.

Portanto, primeiro verifique se o seu SSD é bom em 4KiB com uma profundidade de fila de um, se for realmente bom, não tente descascar com tamanhos de faixas pequenas, melhor ainda, não descasque.

Eu também testei em dois processos paralelos, ambos os ddcomandos para ver se a leitura de ambos ao mesmo tempo reduz a velocidade deles, a redução é mínima.

Portanto, é muito melhor usá-los para coisas diferentes (OS / APPS) do que removê-los.

Se os discos não são SSD, mas rotativos, a distribuição gera um enorme ganho.

De alguma forma, o sistema operacional envia a solicitação para um disco de cada vez e, enquanto o sistema operacional envia a solicitação para o próximo disco no conjunto de strip-tease, o anterior enviou todos os dados para ram nesse tempo; portanto, deve esperar sem fazer nada, aguardando para o próximo pedido.

Então, eu acho que a faixa LVM é mal implementada e pode ser melhorada enviando uma fila de solicitações de faixas, para que cada SSD tenha mais dados a serem enviados para ram em cada solicitação.

A equação matemática é: Hora de começar a enviar dados versus hora de enviar dados para o ram.

Se a primeira parte é maior que a segunda parte da equação, a remoção apenas torna as coisas mais lentas do que apenas usando uma, para obter uma melhoria realmente grande a segunda parte da equação deve ser muito maior que a primeira parte.

Para GOOD SSD, a primeira parte (no LVM) é maior que a segunda parte. Para HDD de BOA rotação, a primeira parte (no LVM) é muito mais pequena que a segunda parte.

Isso é baseado em meus próprios testes feitos com LVM2 em dois SSDs rápidos (> 35Mib / S em 4KiB com uma profundidade de fila de um), testei com faixas de 4KiB até 1MiB; até o tamanho da faixa de 128KiB, a velocidade combinada era menor do que usar apenas um SSD; a velocidade combinada é um pouco maior até 1MiB que era o máximo (1,3x mais rápido com 2 SSD do que com apenas um)

Portanto, apenas um ganho de 30%, enquanto que se eu usá-los em paralelo em diferentes tarefas (sem distribuição), tenho um ganho de 96% (posso usar 98% de velocidade de leitura em cada um ao mesmo tempo).

Colocando isso em números, uma leitura linear de SSD a 386MiB / s, leitura linear de faixa 2xSSD LVM2 4KiB a 186MiB / s, por isso é muito, muito mais lenta do que usar apenas um SSD; Leitura linear da faixa 2xSSD LVM2 1MiB a 487MiB / s; leitura linear de ambos ao mesmo tempo (sem descascamento) em diferentes processos, recebo 374MiB / s de cada um; portanto, combinada é 2x374 = 738MiB / s

Portanto, minha conclusão com base nos resultados dos testes é: Com o LVM2, o ganho é muito baixo em tamanhos de faixa enormes (1MiB) e uma grande perda com tamanhos de faixa normais (4KiB até 64KiB).

Observe que li com o ddcomando do dispositivo em massa (/ dev / sda, / dev / sdb) e do volume lógico em massa (/ dev / mapper / test-test), com status=progressum tamanho de bloco de 1MiB e uma contagem de 10000, portanto eu li 10GiB; e faço uma reinicialização após cada teste para evitar totalmente caches, etc.

Eu uso a versão Linux do SystemRescueCD live para evitar diferenças de reinicialização, como a inicialização de um disco imutável (mídia somente leitura).

Espero que um dia eu consiga usar o Linux mdadmpara testar com invasões de software.


0

O benchmarking básico do dr sugere que o RAID 0 (striping) pode melhorar significativamente o rendimento das unidades SSD.

Configuração de benchmark

  • 2 SSDs de 1 TB (SanDisk X600 SD9TB8W-1T00-1001, unidade de criptografia automática de 2,5 "7 mm)
  • Windows 10, RAID de software
  • Estação de trabalho Lenovo P720, Intel Xeon Silver 4110 2.10GHz
  • ATTO Disk Benchmark 4.00.0f2

RAID 0 (distribuição)

insira a descrição da imagem aqui

RAID 1 (espelhamento)

insira a descrição da imagem aqui

Disco individual

insira a descrição da imagem aqui


-1

Eu acho que é uma pergunta difícil de responder. Se você estivesse falando de um PC de mesa com um bom controlador de invasão de hardware, certamente obteria melhor desempenho. Em um laptop fazendo invasão de software, você pode criar um gargalo na CPU que impedirá grande parte do aumento de desempenho. Dependendo da idade do laptop, você também poderá encontrar seu desempenho limitado pelo barramento SATA, se estiver executando o SATA II, que pode ser maximizado por um SSD moderno. Eu suspeito que você obteria um aumento no desempenho, mas talvez não seja suficiente para justificar o esforço, você não saberá a menos que o teste.


Eu tenho laptop com controlador de ataque de hardware.
28513 Andrea Andrea

Isso definitivamente tornará mais provável que você receba um impulso.
Col
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.