Direi che molto dipende dalle prestazioni della tua connessione hardware/filesystem/mysql di base. Un unico accesso al disco, solo per leggere le immagini, sarà molto probabilmente l'opzione più rapida. Ma dovresti nominare i tuoi file manualmente in anticipo.
Mysql richiede una connessione socket TCP o *NIX e questo potrebbe rallentare le cose (molto dipende dal numero di immagini che hai e dalla "qualità" del tuo db link, però). Se hai molti file, il calo delle prestazioni potrebbe essere trascurabile. Tuttavia, la semplice lettura di un file potrebbe essere più veloce, senza preoccuparsi di impostare una connessione DB; dovresti comunque annotare la corrispondenza ID / nome file per l'ordine.
Qualcosa che proverei nella tua situazione è dare un'occhiata al comando php stat e vedere se può aiutarti a ordinare le immagini. A seconda del numero di immagini che hai (funziona meglio con numeri più bassi), le prestazioni potrebbero non ottenere un grave calo delle prestazioni e NON saresti in grado di mantenere un elenco separato di tuple di immagini/data di creazione. Man mano che il numero di immagini aumenta, l'approccio dell'elenco di file mi sembra un modo ragionevole per risolvere il problema. Tuttavia, il solo benchmarking della cosa all'aumentare del numero di immagini può dirti la verità. Dal momento che, penso, puoi aspettarti di avere molta variabilità, a seconda del tuo contesto specifico.