Eu tenho 2x discos de 4 TB no hardware RAID1 (pode ser um LSI MegaRaid) no Debian Wheezy. O tamanho do bloco físico é 4kB. Vou armazenar 150-200 milhões de arquivos pequenos (entre 3 e 10kB). Não estou pedindo desempenho, mas o melhor sistema de arquivos e tamanhos de bloco para economizar armazenamento. Copiei um arquivo de 8200 bytes para um ext4 com tamanho de bloco de 4kB. Isso levou 32kB de disco !? O diário é o motivo disso? Então, quais opções existem para economizar mais armazenamento para esses arquivos pequenos?
10
Respostas:
Se eu estivesse nessa situação, procuraria um banco de dados que possa 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 possua um driver FUSE disponível para interagir com ele como arquivos quando necessário, sem que todos estejam sendo arquivos separados.
Como alternativa, você pode considerar o percentil 60 a 70 do tamanho dos arquivos e tentar ajustar esse tamanho de arquivo diretamente nos 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ê conseguir 60% a 70% dos arquivos lá, isso provavelmente será uma grande vitória.
Somente certos sistemas de arquivos podem fazer isso (reiserfs é um), e acho que tudo depende do tamanho desse percentil, se ele se encaixará na árvore. Você pode ajustá-lo. Acho que tente encaixar o resto em um único bloco.
E não se preocupe com periódicos; eles têm um limite de tamanho superior de qualquer maneira.
fonte