Blog‎ > ‎RaspPhotoPipe‎ > ‎

Expansão de armazenamento - Parte II

posted 23 Mar 2013, 15:03 by Flip Pipe
Como escrevi em fevereiro, um dos objetivos é ter mais capacidade de armazenamento que só o Compact Flash da camera. Depois de algumas semanas de experiências, finalmente, consegui decidir uma coisa no RaspPhotoPipe.

  • Três USB 3.0 Flash Drive em RAID 5.

Esta decisão foi tomada depois de cerca de seis semanas de investigações para chegar a esta conclusão.

Que tipo de pen drive USB para usar

Minha primeira decisão e, provavelmente, a mais óbvia foi usar pen drives USB 2.0, e há dois tipos de presente: UDP e do COB (Chip on Board).



Uma descrição sobre as diferenças podem ser encontradas aqui (em inglês), mas não diz sobre o tempo de vida e débitos. Pedi ajuda em StackExchange (em inglês) mas até agora não tive sorte nenhuma.

Até aqui, a comparação só eu tenho é de duas pen usb. Usando o Utilitário de Disco do Ubuntu eu tenho alguns resultados:

 COB UDP
 
 


Com estes resultados e porque são mais pequenas, vou-me focar nas pen USB UDP.

Onde Comprar

A minha primeira ideia foi comprar diretamente da China e da fabrica por mais barato e para comprá-lo sem qualquer invólucro.

Encontrei um site de venda empresa para empresa: http://www.alibaba.com/

Contactei com cerca de 6 empresas, todas elas responderam às minhas perguntas, mas no final, o MOQ ("mininum order quantity" - quantidade mínima) era de 50 unidades, e na melhor das hipóteses vou usar 6 em numa configuração em RAID mais elaborado.

Um dos fabricantes, apontar-me a versão de atacado de Alibaba:

http://www.aliexpress.com

Mas, sem invólucro não encontrei nenhum produto. Para ser barato, a quantidade minima era de 10 unidades.

Então, virei-me para as lojas mais convencionais.

Depois de algumas horas a procurar PENs no site MyMemory, eu escolhi a Kingston DataTraveler USB 3, 32 GB.

"O preço é idêntico ao USB 2, mesmo sendo um péssimo USB 3, deve ter pelo menos o mesmo desempenho de USB 2." Este foi o meu pensamento para comprá-las ... e comprei 6.

Por curiosidade, MyMemory enviou-me cada um delas num pacote diferente. Não muito bom para o ambiente.

Quando elas chegaram, eu fiz alguns testes com o Utilitário de Disco, e para mim foi um pouco dececionante.



Como podem ver, a leitura tem um desempenho bom, mas é tão bom quanto o minha PEN USB 2.0 UDP .

Agora, com seis PENs, eu não vou comprar outras. Mas há um pico de esperança ... como o primeiro pico na escrita. Provavelmente, esse pico pode ser o suficiente para no RAID em geral ganhar melhor desempenho.

Que nível de RAID escolher

Não vou explicar as diferenças entre os níveis de RAID, porque eles estão bem documentadas na internet.

RAID 0 - Têm o melhor desempenho na escrita e melhor preço por GB, mas não é utilizável porque se uma PEN falhar, todo o RAID irá falhar, mas vou testá-lo para comparação.

RAID 5 - Bom preço por GB, mas falta-lhe o desempenho na escrita, mas de quanto?

RAID 50 e 05 - a um custo pouco maior de preço, mas juntando a distribuição com espelhamento, provavelmente vai ter melhor desempenho que só RAID 5.

RAID 10 e 01 - o mais caro, mas ele deverá um bom desempenho... bem vamos testá-lo.

Para fazer o teste, para fazer os testes liguei as 6 PEN no computador e dividi cada uma em 6 partições



Com ele, eu criei seis unidades RAID, cada uma com 6 partições, uma de cada PEN e no final fiquei com o seguinte cenário:










Os primeiros 3 são níveis de RAID suportados diretamente pelo mdadm, mas os outros três são combinações de níveis de RAID, porque eles não são diretamente suportados pelo mdadm.

Com esta configuração eu tenho esse tamanho total dos volumes



E a esta altura, o vencedor é o RAID 5, seguido por seus irmãos de 50 e 05.

O ponto seguinte é testar a taxa de transferência de escrita. Para fazer isso, eu criei dois testes ... um com o dd a copiar 4G de /dev/zero, e outro mais realista para a sua utilização, criei sete diretorias com três conjuntos de imagens, um em raw e outro em jpeg. Em seguida, com o rsync, foram copiados da memória e entre cópia de cada diretório esperei 5 segundos. O último teste é o mais próximo que eu me lembre de como simular o uso real. Todos os testes foram feitos três vezes para verificar a consistência.

E os valores iniciais com o dd foram dececionantes.



Todos os RAIDs com nível 5, os resultados foram miseráveis. Durante os testes, eu guardei alguns dados como era a escrita em cada partição com dstat. Os dados e gráficos estão nos arquivos deste post. Esta informação permitiu a criação deste gráfico



Mas como irá comparar com o teste mais semelhante com a realidade.



Quaisquer conclusões com estes testes ... Tendo tomado as notas destes valores, eles são muito semelhantes durante as rondas e os conjuntos. Como podem ver, há muitas células com valores ~107MB/s, ~35 MB/s e ~15MB/s em todos os níveis RAID.



Com estes resultados, o RAID 5 tem mais hipóteses de ser escolhido, mas porque é isso acontece. Provavelmente algum tipo de memória cache no RAID antes de os dados serem enviados para a unidade física.

Eu tentei encontrar a resposta a isto pesquisando um pouco, mas acabei por encontrar encontrar algo mais útil.
Existe um parâmetro em RAID 5, que afeta o desempenho: stripe_cache_size

No StackExchange há uma resposta que explica um pouco.

http://askubuntu.com/questions/19325/improving-mdadm-raid-6-write-speed

Neste blog tem um gráfico de como o valor desse parâmetro afeta o desempenho de escrita

http://peterkieser.com/2009/11/29/raid-mdraid-stripe_cache_size-vs-write-transfer/

O porquê ... Não encontrei ...

O valor de omissão no sistema é de 256, mudei para 8192 e refiz os testes com o RAID 5... vejam as diferenças



E podemos verificar a velocidade de escrita ao longo do tempo



WOW ... grande diferença ... afinando o RAID 5, não há mais perguntas que nível de RAID que vou usar no meu RaspPhotoPipe.

Mas todos estes testes foram feitos no meu computador de secretária, e não no RaspberryPI. Assim, o próximo post sobre armazenamento será de como configurar e afinar o RAID 5 no RaspPhotoPipe.


ą
Flip Pipe,
23 Mar 2013, 15:03
ą
Flip Pipe,
23 Mar 2013, 15:03
ą
Flip Pipe,
23 Mar 2013, 15:03
ą
Flip Pipe,
23 Mar 2013, 15:03
ą
Flip Pipe,
23 Mar 2013, 15:03
ą
Flip Pipe,
23 Mar 2013, 15:03
ċ
Flip Pipe,
23 Mar 2013, 15:03
Comments