Hallo LUG,
bei meinem Problem geht es um Bilder auf Webseiten. Es gibt Leute die speichern diese in eine Datenbank. Hat jemand Erfahrungen, ab bzw. bis wann es sich lohnt Bilder in eine Datenbank zu speichern und wann lieber auf dem normalen Dateisystem (Zugriffszahlen, Anzahl Bilder ...)? Oder kennt jemand gute Literatur (im Internet) wo man sich darüber schlau machen kann. Bei Tante Google habe ich bis jetzt nichts gefunden, was meine Neugierte befriedigt und Bedenken zerstört. Ich glaube nicht, dass es performant ist jedes mal mehrere Blobs aus der DB zu lesen. Oder ist es von DBMS zu DBMS unterschiedlich? Was ist die Persönliche Meinung dazu? Datenbank oder Filesystem?
Vielen Dank und schönes Wochenende,
Falk
am Sat, dem 09.06.2007, um 10:05:32 +0200 mailte falk.doering@fadoe.de folgendes:
Hallo LUG,
bei meinem Problem geht es um Bilder auf Webseiten. Es gibt Leute die speichern diese in eine Datenbank. Hat jemand Erfahrungen, ab bzw. bis wann es sich lohnt Bilder in eine Datenbank zu speichern und wann lieber auf dem normalen Dateisystem (Zugriffszahlen, Anzahl Bilder ...)? Oder kennt jemand gute Literatur (im Internet) wo man sich darüber schlau machen kann. Bei Tante Google habe ich bis jetzt nichts gefunden, was meine Neugierte befriedigt und Bedenken zerstört. Ich glaube nicht, dass es performant ist jedes mal mehrere Blobs aus der DB zu lesen. Oder ist es von DBMS zu DBMS unterschiedlich? Was ist die Persönliche Meinung dazu? Datenbank oder Filesystem?
Die häufigste Antwort auf diese Frage ist, daß man Bilder nur dann in der DB speichert, wenn man die Vorteile einer DB wie RI, Transaktionssicherheit und ein vollständiges Backup incl. der BLOBs braucht.
Andreas
Wenn es sich um eine ziemlich grosse Anzahl von Bildern handelt, wird das Handling auf dem Dateisystem ziemlich langsam. Ein ls auf einem Directory mit 100000 Dateien kann locker 10 Minuten dauern. Ausserdem gibt es ziemlich performante DBMS wie MySQL (MyISAM Tabellen). Die letzte Aussage ist allerdings zu relativieren, wenn man komplexe SQL Queries betrachtet. Fairerweise sollte man allerdings auch feststellen, dass ein Dateisystem quasi nur eine Query mit einem Primaerschluessel (dem Dateinamen) zulaesst. Und dabei ist MySQL wirklich extrem schnell. Der Zugriff auf einen einzelnen Blob mit 50kbyte sollte in der Groessenordnung von 10ms dauern (bei MySQL).
Gruss
Frank
am Sat, dem 09.06.2007, um 14:39:57 +0200 mailte Frank Gerlach folgendes:
Wenn es sich um eine ziemlich grosse Anzahl von Bildern handelt, wird das Handling auf dem Dateisystem ziemlich langsam. Ein ls auf einem Directory mit 100000 Dateien kann locker 10 Minuten dauern.
Depends. Das ist in etwa gleichwertig mit einem select * from table; ohne where-condition, was in einem full-table-scan endet und auch dauert. Außerdem kann man im Filesystem mit Unterverzeichnissen arbeiten. Letztendlich speichert man den Pfad zur Datei in der DB, was eine Suche im Filesystem unnötig macht. (wenn man sich entscheidet, die Grafik im FS zu speichern)
Ausserdem gibt es ziemlich performante DBMS wie MySQL (MyISAM Tabellen). Die letzte Aussage ist allerdings zu relativieren, wenn man
Genau. MySQL mit MyISAM ist nur deshalb schnell, weil es auf jegliche Form von Datenkonsistenz verzichtet. Dafür braucht man einklich keine DB.
Andreas
falk.doering@fadoe.de falk.doering@fadoe.de (Sa 09 Jun 2007 10:05:32 CEST):
Hallo LUG,
bei meinem Problem geht es um Bilder auf Webseiten. Es gibt Leute die speichern diese in eine Datenbank. Hat jemand Erfahrungen, ab bzw. bis
...
DB zu lesen. Oder ist es von DBMS zu DBMS unterschiedlich? Was ist die Persönliche Meinung dazu? Datenbank oder Filesystem?
Ich packe die gerne in eine Datenbank, dann hat man alles an einer Stelle. Probleme hatte ich damit bisher noch keine (Größe bzw. Menge). Aktuelle Zahlen müßte ich suchen.
Parallel dazu habe ich mitunter im Filesystem soetwas wie einen Cache.
Im Filesystem ist mir mitunter wegen der Berechtigungen zu popelig. Was aber nicht heißt, daß es nicht geht. Viele Bilder in einem Verzeichnis (wie hier in einer anderen Mail unterstellt) muß man nicht haben. Man kann sich ja eine geschickte Verzeichnisstruktur ausdenken, die die Bilder gleichmäßig verteilt. Beim direkten Zugriff auf ein Bild gibt es dann kein Problem.
Hallo,
vielen Dank für die Antworten. Sie haben mir etwas weiter geholfen. Ich kenne jetzt Vor- und Nachteile und kann mir auch ein Bild machen, welche Lösung für mein Problem am besten sein wird.
Tschau,
Falk
lug-dd@mailman.schlittermann.de