Qual é a diferença entre o btrfs raid1 e o btrfs -m dup -d dup em um único dispositivo?

2

Estou usando o btrfs há cerca de dois anos em vários dispositivos.

Estou planejando testar algumas configurações do btrfs em um HDD (Single platter) que possui setores não confiáveis. Uma dúzia de setores no HDD às vezes não são legíveis.

Haveria alguma diferença em termos de integridade de dados e velocidade geral de leitura e gravação nessas configurações:

1 TB HDD
-1 TB btrfs partition created with 'mkfs.btrfs -d dup -m dup /dev/sda1'

1 TB HDD
-500 GB partition
-500 GB partition
--500 GB btrfs Raid 1 'mkfs.btrfs -m raid1 -d raid1 /dev/sda1 /dev/sda2'
    
por Artyom 26.10.2016 / 11:29

4 respostas

3

Sugiro usar a variante com dup em vez de colocar várias parções no mesmo dispositivo e atacá-las. A variante raid é ruim porque o raid solicita que ambas as cópias sejam lidas enquanto os dados são acessados (isso é bom para raid multi-dispositivo normal, porque se o dispositivo for mais rápido, os dados estarão disponíveis mais cedo). Com o dispositivo rotacional de dispositivo único, isso faz com que o cabeçote de leitura pule entre diferentes partições, portanto, se você tiver várias solicitações na fila (o caso usual), você terá um desempenho muito ruim. Aumentar a profundidade da fila e o agendador CFQ pode reduzir um pouco a latência geral, mas é melhor evitar essa confusão.

A variante dup deve ser sensata o suficiente para ler apenas uma cópia normalmente e apenas recorrer a outra cópia se o setor não for legível.

Não tenho certeza sobre a implementação de dup , mas imagino que dup não coloque o dispositivo de cópia 1/2 fora da primeira cópia, então dup provavelmente aumenta o desempenho de gravação também. Com o ataque de um único dispositivo, o desempenho de gravação também será ruim, porque uma operação de gravação lógica precisa ser gravada em dois locais no dispositivo rotacional físico e a diferença é sempre 1/2 dispositivo, então você acaba com um algoritmo que implementa pior comportamento de um dispositivo rotacional.

    
por 25.04.2018 / 10:17
0

Tarde para a festa, mas de qualquer maneira. Eu estava pensando sobre a mesma pergunta e no homem que eu li (sobre dup):

"Por exemplo, uma unidade SSD pode remapear os blocos internamente para uma única cópia, desduplicando-os. Isso nega o propósito de aumentar a redunidade (sic) e apenas desperdiça espaço"

Talvez a invasão 1 seja uma maneira de evitar essa preocupação (ou não).

    
por 19.01.2017 / 17:02
0

Em relação aos blocos de remapeamento SSD. O SSD internamente não reconhece as partições, trata qualquer setor da mesma forma. Portanto, ter o mesmo arquivo (dados) como duas cópias na mesma partição é o mesmo resultado de ter duas cópias em partições separadas. Nem todos os fabricantes de SSD codificam o armazenamento interno da mesma forma; alguns podem realizar desduplicação em bloco e outros não.

Para uma unidade SSD: A integridade dos dados teóricos seria a mesma, qualquer setor tem uma chance de falha, mas os dados / metadados duplicados fornecem redundância. Leitura / gravação de desempenho também o mesmo. O SSD não possui uma diferença de tempo de busca ou leitura na unidade.

Para um acionamento rotativo: A integridade dos dados teóricos seria a mesma, qualquer setor tem uma chance de falha, mas os dados / metadados duplicados fornecem redundância. Leitura / gravação de desempenho também o mesmo. Desempenho de leitura com o qual não posso falar, pois os testes precisariam ser realizados. A leitura pode ser feita a partir da cópia de arquivo (em dup) ou da partição. No entanto, não sei se o BTRFS é capaz de otimizar isso; ou seja, use a cópia / partição que é mais rápida na frente do prato (mais rápido). O desempenho de gravação seria degradado mais com duas partições, pois ambas as cópias devem ser gravadas para que o IO seja concluído. A partição na segunda metade do prato será sempre mais lenta para procurar / ler / escrever.

Nota: Enquanto o espelho RAID está sendo usado, já que está em um único dispositivo físico, qualquer falha no dispositivo significa perda total de dados. Este espelho apenas protege contra falhas do setor.

    
por 23.01.2017 / 14:52
0

Encontrei pelo menos uma diferença:

Você pode montar seu raid1 rw degradado apenas uma vez. A chance de falha de uma partição enquanto outra partição do seu dispositivo é saudável pode ser pequena, mas isso é uma diferença.

Fonte: link

raid1 volumes only mountable once RW if degraded

Even if there are no single profile chunks, raid1 volumes if they become degraded may only be mounted read-write once with the options -o degraded,rw.

Notes:

  • This does not happen (reportedly) when there are more than 2 devices.

  • This does not happen with raid10 profile volumes.

  • This is often due to the "Incomplete chunk conversion" issue, where there are single chunks left.

Possible recoveries:

  • If it is still read-write, you can convert the chunks from profile raid1 to profile single (or profile dup) if you have enough space).

  • If it is still read-write, you can btrfs device replace the missing device.

  • When a raid1 volume is stuck as read-only for either reason it can only be recovered by dumping its contents, recreating it and restoring the contents.

    
por 28.03.2017 / 19:56

Tags