Zarządzam aplikacją zawierającą magazyn plików, w którym wszystkie pliki są przechowywane z nazwami plików równymi ich sumom MD5. Wszystkie pliki są przechowywane w jednym katalogu. Obecnie jest ich tysiące, ale wkrótce na serwerze powinny pojawić się miliony plików. Na obecnym serwerze działa Ubuntu 11.10 na systemie plików ext4.
Ktoś powiedział mi, że nie jest rozsądne umieszczanie wielu plików w katalogu, ponieważ spowoduje to znaczny wzrost czasu wyszukiwania i niezawodności (miał historię o maksymalnej liczbie plików, na którą może wskazywać pojedynczy katalog, co prowadzi do dużej listy z linkami). Zamiast tego zasugerował utworzenie podkatalogów z np. Podciągami nazwy pliku. Sprawi to jednak, że niektóre rzeczy w mojej aplikacji będą znacznie bardziej kłopotliwe.
Czy to nadal prawda, czy też nowoczesne systemy plików (np. Ext4) mają bardziej wydajne sposoby radzenia sobie z tym i naturalnie skalowane? Wikipedia ma pewne szczegóły na temat systemów plików, ale tak naprawdę nie mówi nic o maksymalnej liczbie plików na katalog ani o czasach wyszukiwania.