Ich persönlich empfehle Bilder in der Datenbank zu speichern. Natürlich hat es sowohl Vor- als auch Nachteile.
Vorteile der Speicherung von BLOB-Daten in der Datenbank:
- Es ist einfacher, die BLOB-Daten mit den verbleibenden Elementen in der Zeile zu synchronisieren.
- BLOB-Daten werden mit der Datenbank gesichert. Ein einziges Speichersystem kann die Verwaltung vereinfachen.
- Auf BLOB-Daten kann über die XML-Unterstützung in MySQL zugegriffen werden, die eine Base-64-codierte Darstellung der Daten im XML-Stream zurückgeben kann.
- MySQL Full Text Search (FTS)-Operationen können für Spalten durchgeführt werden, die Daten mit Zeichen fester oder variabler Länge (einschließlich Unicode) enthalten. Sie können FTS-Vorgänge auch für formatierte textbasierte Daten ausführen, die in Bildfeldern enthalten sind, z. B. Microsoft Word- oder Microsoft Excel-Dokumente.
Nachteile des Speicherns von BLOB-Daten in der Datenbank:
Überlegen Sie sorgfältig, welche Ressourcen besser im Dateisystem statt in einer Datenbank gespeichert werden sollten. Gute Beispiele sind Bilder, die typischerweise über HTTP HREF referenziert werden. Das liegt daran:
- Das Abrufen eines Bildes aus einer Datenbank verursacht im Vergleich zur Verwendung des Dateisystems einen erheblichen Overhead.
- Festplattenspeicherung in Datenbank-SANs ist in der Regel teurer als die Speicherung auf Festplatten, die in Webserverfarmen verwendet werden.