Acho que há algum mérito em pelo menos tentar o RAID aqui. Existe alguma sobrecarga, e as reconstruções de RAID, quando acontecem, podem acabar sendo um show-stopper, mas existem alguns benefícios possíveis.
- Gerenciamento muito mais simples é o óbvio
- O desempenho de disco único atingirá o pico em algo como 50 a 70 MB / s por toda a unidade. Ele será mais rápido na borda externa (por exemplo, início do disco) e mais lento na borda interna (em meus testes, geralmente metade da taxa da borda externa) Se você estiver gravando em um único disco, você atingirá esse limite o tempo todo. Se você está escrevendo para um agregado de discos (no entanto, ele é gerenciado), você ainda atingirá esse limite (o desempenho sustentado de um RAID0 de 4 discos é simplesmente 4x o desempenho interno de um único disco), mas você têm maior taxa de transferência agregada.
- Conjuntos RAID aumentarão a contenção (se você estiver fazendo várias gravações / leituras). Eles também aumentarão a largura de banda disponível. Isso pode ou não ser importante para você, mas vale a pena tentar
- Parece que suas gravações basicamente transmitem dados em massa para o disco. Se for esse o caso, a sobrecarga RAID5 é razoavelmente baixa, porque se você estiver gravando pedaços de dados com largura de faixa RAID completos no disco, não há necessidade de fazer o ciclo de recálculo / gravação de leitura / paridade - seu controlador apenas gravará a nova faixa e paridade em um hit. (Paridade é barata, é o ciclo de leitura / gravação que dói)
Escrever 800 GB de dados de cada thread levará algo em torno de 2 a 3 horas. Assumindo que seu disco irá sustentar cerca de 120MB / seg na borda externa e cerca de 60MB / seg na borda interna. Com 120MB / s, seus 800 GB de dados levariam cerca de 111 minutos, com 60 MB / s seria o dobro disso. A queda no desempenho de gravação não é linear, mas é razoável supor que você gastará entre 2 e 3 horas escrevendo esse arquivo de 800 GB. A sugestão de @kubanczyk provavelmente diminui pela metade, mas não tenha medo de ir para agregações maiores (seja RAID0 ou RAID5 ou RAID5 + 0)
Eu não tenho uma boa idéia para isso (não tenho como fazer os testes), mas geralmente é considerado que os drives SAS têm melhor desempenho, mesmo quando a velocidade de rotação é a mesma (por exemplo, Seagate Constellation ES.2 SATA vs Seagate Constellation ES.2 SAS). Alguns dos benefícios incluem operação full-duplex para unidades SAS e maior profundidade de fila. O ponto full-duplex vs half-duplex deve significar que as operações simultâneas de leitura / gravação têm menos efeito geral. Você ainda incorrerá em buscas em disco, mas não estará bloqueando gravações de disco enquanto espera por uma leitura, por exemplo.
Eu construo muitos sistemas com matrizes de 16 discos. Dois conjuntos RAID5 (controladores RAID de hardware), com o software RAID Linux no topo. Temos um desempenho muito bom aqui: em algum lugar entre 750 e 850MB / seg suportado em todo o array, dependendo do modelo de disco usado. Jogar em vários escritores adiciona contenção e diminui a taxa de transferência geral, mas dependendo da frequência com que você está escrevendo seus dados antes de lê-los novamente, algo nesse sentido pode ajudar.
Espero não ter enlameado muito as águas aqui:)