Il degrado della velocità è prevedibile all'aumentare del numero di file a cui si accede contemporaneamente. Alle unità a disco rigido non piace accedere in parallelo: ogni volta che la testina di lettura / scrittura deve cambiare i cilindri perdi diversi millisecondi. Anche se due file si trovano sullo stesso cilindro o anche sulla stessa traccia, potrebbe essere necessario attendere una rotazione per spostarsi da uno all'altro. Se si misura la prestazione dell'unità in megabit al secondo, si prevede che diminuisca in modo esponenziale all'aumentare dell'accesso parallelo.
fsck
non aiuta in questo: ripara solo i danni alla struttura delle directory, non esegue alcuna ottimizzazione.
La soluzione ideale sarebbe quella di passare allo storage a stato solido poiché questo non ha alcun limite fisico dei piatti rotanti. Ma è probabilmente un costo proibitivo.
Il prossimo passo sarebbe usare un RAID ottimizzato per l'accesso parallelo. Tieni presente che i RAID possono essere configurati per molti diversi profili delle prestazioni, quindi dovrai dedicare un po 'di tempo per apprendere le impostazioni di qualsiasi hardware e driver RAID.
Potrebbe essere possibile ridurre il problema utilizzando la memorizzazione nella cache del filesystem aggressivo. Se il tuo sistema ha RAM sufficiente, Linux dovrebbe già farlo abbastanza bene. Esegui un programma come top
per vedere quanta RAM libera c'è. Ma se i file più comunemente utilizzati non si adattano alla RAM (o alla RAM che è probabile che tu acquisisca), questo non sarà di grande aiuto.
La soluzione di un povero sarebbe quella di dividere i file tra diversi dischi rigidi fisici (non solo partizioni diverse sulla stessa unità). Questa non è davvero una soluzione scalabile a lungo termine e finirebbe per costarti più di un RAID decente. Ma potrebbe essere una soluzione rapida se hai unità in giro.
Per qualsiasi soluzione che coinvolga unità a disco rigido, assicurarsi che abbiano una velocità di rotazione rapida e una latenza di ricerca bassa.
Ho scritto un articolo con alcune informazioni generali sulle prestazioni del disco rigido qui:
Suggerimenti UNIX - File system