Saya menulis sebuah aplikasi yang juga menyimpan banyak dan banyak file walaupun milik saya lebih besar dan saya punya 10 juta di antaranya yang akan saya bagi di beberapa direktori.
ext3 lambat terutama karena implementasi default "linked list". Jadi, jika Anda memiliki banyak file di satu direktori, itu berarti membuka atau membuat yang lain akan semakin lambat. Ada sesuatu yang disebut indeks htree yang tersedia untuk ext3 yang kabarnya meningkatkan banyak hal. Tapi, itu hanya tersedia pada pembuatan sistem file. Lihat di sini: http://lonesysadmin.net/2007/08/17/use-dir_index-for-your-new-ext3-filesystems/
Karena Anda harus membangun kembali sistem file dan karena keterbatasan ext3, rekomendasi saya adalah Anda ingin menggunakan ext4 (atau XFS). Saya pikir ext4 sedikit lebih cepat dengan file yang lebih kecil dan memiliki pembangunan kembali yang lebih cepat. Indeks Htree adalah default pada ext4 sejauh yang saya ketahui. Saya tidak benar-benar memiliki pengalaman dengan JFS atau Reiser tetapi saya telah mendengar orang merekomendasikan itu sebelumnya.
Pada kenyataannya, saya mungkin akan menguji beberapa filesystem. Mengapa tidak mencoba ext4, xfs & jfs dan lihat mana yang memberikan kinerja terbaik secara keseluruhan?
Sesuatu yang dikatakan oleh seorang pengembang kepada saya yang dapat mempercepat dalam kode aplikasi bukan untuk melakukan panggilan "stat + open" melainkan "open + fstat". Yang pertama secara signifikan lebih lambat dari yang kedua. Tidak yakin apakah Anda memiliki kendali atau pengaruh apa pun atas hal itu.
Lihat posting saya di sini di stackoverflow.
Menyimpan & mengakses hingga 10 juta file di Linux
ada beberapa jawaban dan tautan yang sangat berguna di sana.