Meiner Meinung nach wäre das Thema grundsätzlich besser im Datenbanken-Unterforum aufgehoben, da es keinen großen Unterschied macht, ob man via PHP, .NET oder C aus einer Datenbank liest - Viel wichtiger wäre eine passende Engine, wie zB die MyISAM-Engine in MySQL-Datenbanken, die sehr hohe Performanz hat beim Lesen von Datensätzen. Des Weiteren sollte darauf geachtet werden, dass auf 32bit Systemen eine (unkomprimierte) Datenbank aus rein technischen Gründen nicht mehr als 4 Gigabyte an Datenvolumen handhaben kann (Bitte um Korrektur, falls die Größenangabe inkorrekt ist), auf 64bit Systemen können dann doch aber schon mehrere Terabyte-große Daten abgespeichert werden.
Vielleicht solltest du jedoch auch nochmal einen Blick darauf werfen, wie die meisten Datenbankapplikationen arbeiten: Die meisten, mir geläufigen Systeme speichern alle Datensätze in einen bestimmten, oft abgeriegelten Teil der Festplatte und lesen diese entweder direkt von dieser oder im performanteren aber auch "instabileren" Fall aus einem Zwischenspeicher, wie zB dem Arbeitsspeicher. Also macht es aus dieser Sicht wenig Sinn, Daten in eine Datenbank zu speichern, da sie auch nur im Filesystem landen (und dort aber als einzelne Datei nicht in den Zuständigkeitsbereich des Filesystems fallen). Lediglich die Methodik, mit der die Datenbank arbeitet, könnte eventuell zu Performance-Pluspunkten führen, die der Festplattengeschwindigkeit überlegen sind. Dennoch spricht ein weiterer Punkt gegen die Speicherung: Die "Clustergröße" der Datenbankfelder ist bei weitem nicht so flexibel wie die eines Filesystems, obwohl das auch immer eine Sache der Organisation ist. So kann es passieren, dass eine 1kB große Datei in der DB ein paar kB Kapazität "verschwendet", wo mit einer Clustergröße von 1024 Byte auf der HDD kein "Verlust" entstünde.
Ein wohl vor allem für mich relevanter Nachteil ist bei einer datenbankbasierenden Filesystem-Alternative, ist die schlechte Handhabbarkeit, und die stetigen und eventuell unnötigen Zugriffe. Bei jeder Operation an und mit einem Datensatz muss dieser schließlich erstmal komplett durch die Datenbankstrukturen verarbeitet werden, was den ureigenen Funktionen des Filesystems höchstwahrscheinlich nicht das Wasser in Sachen Last und Effizienz reichen kann.
Die Frage,die mich interessiert ist, warum du Daten in eine Datenbank speichern möchtest? Grundsätzlich steigt die Rechenlast und -zeit mit der Größe der zu verarbeitenden Datensätze auch an, und gleicht jeden Vorteil in Sachen Zugriffseffizienz aus, den ein Datenbanksystem haben könnte.
Das soll jedoch nicht heißen, dass Datensätze in einer Datenbank nicht komfortabler zu bearbeiten wären als einzelne Dateien im Filesystem, zumal die Fragmentierung der HDD im Falle einer Datenbank wohl gegen Null geht, da es ein abgeschlossenes System ist. Jedoch bilden die zusätzlichen Zugriffs- und Evaluierungsprozeduren eine große Mehrlast.
Nun nochmal zur Sache: Datenausgabe mit PHP oder anderen Programmier- / Scriptsprachen: Zwar ist zB PHP sehr schnell, was die Verarbeitung von Ein- und Ausgabesignalen angeht, jedoch bedarf es bei einigen MB bis GB dann doch schon Sekunden bis Minuten oder gar Stunden, bis alle Daten verarbeitet wurden, wenn nicht der Server vorher schlappmachte, weil der zur Verfügung stehende Arbeitsspeicher einfach "exhausted" ist oder die CPU sich totgearbeitet hat
Also sollte schon gut überlegt sein, ob nicht die Dateizugriffe etwas undynamischer gemacht werden könnten oder anderweitig organsiert werden können um die dynamisch generierte Last auf die Grundfunktionen des Webservers abrollen zu können - Der Zugriff auf Dateien im Filesystem direkt und statisch (direct passthrough) generiert bei weitem weniger Last als eine dynamische Lösung (input, handle, read, handle, output), bei der erst in den Arbeitsspeicher geschrieben wird oder in einen anderen Buffer.