Ajustando um conjunto de dados de backup de e-mail no ZFS

3

Eu tenho uma pasta cheia de arquivos de backup de e-mail (do offlineimap). Uma dessas pastas tem 87k arquivos, dos quais 68k estão entre 512-1024 bytes de tamanho. (Esta pasta é bem representativa do resto). A distribuição inteira do tamanho é assim:

Size bin    % by count  % by space
512         0.08%       0.00%
1024        77.37%      74.58%
2048        1.65%       1.62%
4096        3.92%       4.05%
8192        6.11%       6.78%
16384       3.68%       4.25%
32768       3.07%       3.66%
65536       1.77%       2.15%
131072      0.75%       0.92%
262144      0.36%       0.44%
524288      0.33%       0.41%
1048576     0.30%       0.37%
2097152     0.21%       0.27%
4194304     0.20%       0.25%
8388608     0.11%       0.14%
16777216    0.08%       0.10%

Minha pergunta é: qual é o melhor tamanho de registro a ser usado para esses dados? Eu ficaria tentado a pensar 1k, mas isso é muito menor do que os valores normais recomendados, e estou preocupado com a sobrecarga de metadados.

Li alguns artigos que abordam isso, mas não cheguei a nenhuma conclusão. Por exemplo, um artigo examina a eficiência do armazenamento do uso de tamanhos de registros menores que o arquivo médio. Seu tamanho médio de arquivo era 128k e ele descobriu que, com a compactação, a eficiência de armazenamento aumentava à medida que o tamanho do bloco aumentava de 512 para 128k, mas ele não testava tamanhos de bloco maiores que seus arquivos, então a tendência não ficou clara.

Outra boa leitura foi este tópico do reddit que descreve a diferença entre os tamanhos dos registros e dos blocos e entra em sintonia de desempenho SSD.

    
por Alex Hirzel 15.01.2017 / 16:40

2 respostas

2

Acabei fazendo o que o @ewwhite disse e fiz um benchmark rápido. Minha conclusão é que 128k está bem.

BlockSize   CompRatio   du-s
1           0           50747244
2           1           26001757
4           1           13487472
8           1.04        12690656
16          1.06        9560063
32          1.08        8011524
64          1.09        7872713
128         1.1         7822344
256         1.11        7804225
512         1.14        7799985
1024        1.16        7801688

    
por 16.01.2017 / 00:31
0

Eu raramente altero o tamanho do registro nos pools do ZFS. O padrão de 128K é adequado para a maioria das cargas de trabalho.

Você pode facilmente avaliar isso em vários tamanhos de registro ...

Se o desempenho do armazenamento é sua preocupação, há mais oportunidades de otimizar em outro lugar. Você tem detalhes sobre o sistema operacional / hardware / requisitos?

    
por 15.01.2017 / 22:34