Sei Dir mal nicht so sicher, es gibt sehr leistungsfähige Multi-CPU Systeme. An Deiner Stelle würde ich eine reine HW-Lösung zumindest ins Auge fassen.
Naja, aber rechne mal 1.000.000 Fotos x 1 MB/Foto = 1.000 GB an Festplattenspeicher.
Du hast die drei Komponenten Webserver, FS und RDBMS. Alle drei könntest Du ohne weiteres auf vielleicht zwei Rechner verteilen.
Komme mit ein paar Festplatten oder einem http://en.wikipedia.org/wiki/Storage_Area_Network.