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.