Melhores opções para 4 milhões de arquivos no ext4

3

Vou colocar 4 milhões de arquivos em uma partição EXT4. Eu tenho cerca de 700 arquivos em cada dir, o tamanho médio do arquivo é 38kb, o tamanho total é de 169 gigabytes.

Quais são as melhores opções em termos de tamanho de bloco, tamanho de inode e taxa de inode que eu posso escolher?

É melhor criar duas ou mais partições, pensando no tempo de verificação que fsck poderia ter?

    
por cdarwin 20.10.2018 / 22:51

1 resposta

1

Manipular arquivos 4M em um único sistema de arquivos não é problema para o ext4, desde que o sistema de arquivos esteja formatado com inodes suficientes. Não é problema ter até arquivos 4M em um único diretório, se os nomes dos arquivos não forem excessivamente grandes.

Existem sistemas de arquivos Lustre com arquivos de 1.5-2B e arquivos de 10-12M em um único diretório (que é sobre o limite de diretório até o kernel 4.recent quando o recurso "large_dir" foi adicionado). Isso significa que você não precisa fazer nada de especial com a estrutura de diretórios para manipular os arquivos, a menos que precise armazenar muito mais arquivos no futuro ou se tiver uma rotatividade de arquivos regular, onde talvez queira fazer " idade "com base em diretórios e, em seguida, excluí-los depois de algum tempo.

Opções de formatação razoáveis seriam:

mke2fs -t ext4 -i 32768 -b 4096

-i 32768 = average file size is 32KB, to ensure enough inodes
-b 4096 = blocksize, to allow large directories

O tamanho do inode padrão é bom, a menos que você armazene muitos xattrs em cada arquivo. Se sim (use getfattr -d -m- -ehex /path/to/existing/file para ver qual é o tamanho médio do xattr), use -I para aumentá-lo. O tamanho do inode principal é de cerca de 180 bytes atualmente, e o restante está disponível para xattrs rápidos.

Se você colocar o sistema de arquivos em um dispositivo LVM / DM, também poderá redimensioná-lo on-line para adicionar mais espaço / inodes se precisar de mais no futuro. O que você não pode mudar facilmente é a taxa de inode ou tamanho de inode.

    
por 21.10.2018 / 23:59