Quais tamanhos de bloco para milhões de arquivos pequenos

9

Eu tenho 2x 4TB Disks no hardware RAID1 (pode ser um LSI MegaRaid) no Debian Wheezy. O tamanho do bloco físico é de 4kB. Vou armazenar 150-200 milhões de arquivos pequenos (entre 3 e 10kB). Eu não estou pedindo desempenho, mas pelo melhor sistema de arquivos e tamanhos de bloco para economizar armazenamento. Eu copiei um arquivo de 8200 bytes em um ext4 com tamanho de bloco de 4kB. Isso levou 32kB de disco! Está registrando o motivo disso? Então, quais opções existem para salvar a maioria dos arquivos pequenos?

    
por rabudde 08.01.2014 / 22:40

1 resposta

1

Se eu estivesse nessa situação, estaria analisando um banco de dados que pode armazenar todos os dados em um único arquivo com um índice compacto e baseado em deslocamento, em vez de arquivos separados. Talvez um banco de dados que tenha um driver FUSE disponível para interagir com ele como arquivos quando necessário, sem que eles realmente sejam arquivos separados.

Como alternativa, você pode ver o percentil 60 a 70 do tamanho dos arquivos e tentar ajustá-lo diretamente aos nós da árvore do sistema de arquivos, em vez de blocos separados no disco. Armazenar 10k em cada nó é provavelmente uma grande pergunta, mas se você pudesse obter 60% -70% dos arquivos, provavelmente seria uma grande vitória.

Apenas alguns sistemas de arquivos podem fazer isso (reiserfs é um deles), e acho que tudo depende do tamanho do percentil, se ele caberá na árvore. Você pode ajustá-lo. Eu acho que tente encaixar o resto em um bloco.

E não se preocupe com periódicos; eles têm um limite de tamanho superior de qualquer maneira.

    
por 09.01.2014 / 00:52