Clarificando o dimensionamento da tabela de dedução no ZFS quando apenas alguns conjuntos de dados são deduzidos

1

Estou tentando esclarecer como o zfs dedup lida com o caso em que alguns (mas não todos) conjuntos de dados em um conjunto são deduzidos, de uma perspectiva de impacto de tabela / RAM de dedup. Eu encontrei esta cotação da lista de discussão do FreeBSD em 2012 :

"Note that only file systems that you enabled dedup for will actually participate in dedup. File systems that have dedup=off won't go through the dedup."

Como exemplo, suponha que temos dois zpools, A e B. O Pool A tem 4 conjuntos de dados contendo 21 TB de dados:

  • Os conjuntos de dados 1 e 2 contêm, cada um, dados de 0,5 TB com dedução em
  • O conjunto de dados 3 e 4 contém, cada um, 10 TB de dados com dedup off

O Pool B tem um conjunto de dados contendo dados de 1 TB com dedup.

É claro que a funcionalidade de dedução se aplica à totalidade de cada pool. O que não está claro, é se o impacto de RAM da dedução é baseado apenas nos conjuntos de dados deduped? Em outras palavras, todas as outras coisas sendo iguais, o tamanho da tabela de desduplicação e o impacto da RAM serão semelhantes para o conjunto A e o pool B, ou muito maiores para o pool A do que o pool B?

Acho que a tabela de desduplicação deve ser semelhante para ambos (conjunto poolwide, mas nenhum impacto no tamanho de quaisquer conjuntos de dados não deduzidos), principalmente porque se fosse muito maior, seria equivalente a forçar a dedução em todo o pool não apenas conjuntos de dados específicos. No entanto, não está claro para mim se isso é realmente verdade.

    
por Stilez 12.03.2017 / 09:51

0 respostas