sehr viele (Bild-)Dateien in einem Ordner / Bilddatenbank

psych0dad

New Member
Hallo!

Ich bin nicht sicher, ob das hier das richtige Unterforum dafür ist...aber ich habe folgendes Problem, was man kaum durch google- und Foren-Suchen lösen kann, was aber sicherlich schon einige gehabt haben: auf unserem Webserver haben wir alle unsere Produktbilder liegen und das Problem ist, dass diese Bild-Ordner jetzt langsam zu groß werden, denn man kann ja nicht 50.000 Dateien in einem Ordner ablegen - und genau das ist das Problem.
Wie machen das große Firmen wie ebay oder google-pics?
Im Moment denke ich daran, etwas zu programmieren, dass immer neue Unterordner erzeugt werden, wenn ein Ordner zu groß wird und die Bilder dann dort hinein verschoben werden.

Ich habe mich auch schon mit dem Thema Datenbank und Bilder beschäftigt, aber irgendwo hab ich gelesen, dass das auch nicht gut sein soll, dafür eine DB zu nehmen. Aber irgendwie muss es ja gehen, bei anderen klappts ja auch.


PS.: Das gleiche Problem sehe ich mit unserer mysql-Datenbank kommen, wo pro Tabelle 3 Dateien gespeichert werden - der Daten-Ordner wird auch immer größer und ich weiß nicht, ob das schlimm ist oder nicht.


Vielen Dank im Voraus!
 
Hallo,

Ein Verzeichniss wird sicher nicht "meckern" dass zuviele Dateien in einem einzelnen Verzeichniss liegen. Ob 50 oder 50 000 Dateien dort liegen dürfte das Dateisystem kaum interessieren. Eine anderer Aspekt ist natürlich die Übersicht.

Ich nehme mal an, dass google, ebay und andere größe Webauftritte die viele Bilder zu verwalten haben die Verzeichnisse nach einem bestimmten Muster sortiert haben. Zum Beispiel ist denkbar alle Dateien die mit "a" anfangen in einen Ordner namens /img/a abzulegen alle mit "b" in /img/b usw. Alternativ kann man sie bestimmt auch nach Datum sortieren und so weiter. Der Algorythmus bleibt dir überlassen.
Das Unterteilen in Verzeichnisse ist in sofern auch ganz sinnvoll als wenn man an die Grenze stößt wo die Festplattenkapazität erreicht ist. Dann ist beispielsweise /img/x nicht ein neues Verzeichniss sondern eine zweite dorthin gemountete Festplatte.

Ich hoffe das konnte dir ein wenig weiterhelfen
 
das Problem ist, dass diese Bild-Ordner jetzt langsam zu groß werden, denn man kann ja nicht 50.000 Dateien in einem Ordner ablegen - und genau das ist das Problem.

Nun ich kenne mich eher mit der Technik, denn damit was einschlaegige Branchen ueblicherweise mit sowas machen, aber mir ist das Problem nicht wirklich transparent.
Zig'Tausend Dateien in einem Ordner ist doch erstmal kein Problem, also ich kann das Problemlos. ;)
Denkbar waeren Performanceprobleme in Abhaengigkeit davon, was damit gemacht wird und auch da kann man evtl. dran drehen, wenn man wuesste was da getan wird. :confused:
Lass mich nicht weiter raten.

Ciao,
Mercy.
 
Sie dir mal die Bilddatenbank SuSIDE an: SuSIDE - Bilddatenbank
Da kannst du deine Bilder komfortabel verwalten. Die Bilder sind über das Internet überall verfügbar und doch per Benutzer-Passwort geschützt.
Eine ausgefeilte Suche und erweiterte Suchfunktionen helfen auch bei großen Bildbeständen das gewünschte Bild zu finden.

Eine Demoversion gibts unter SUSIDE.net - ONLINE DEMO

LG franzi
 
Erstmal vielen Dank für die Antworten. Dann werde ich das mit den automatischen Unterordnern machen.

Ob 50 oder 50 000 Dateien dort liegen dürfte das Dateisystem kaum interessieren.

Zig'Tausend Dateien in einem Ordner ist doch erstmal kein Problem, also ich kann das Problemlos.

Und das war es halt, was ich genau wissen wollten, denn ich war mir da nicht so sicher. Ein Problem was zum Beispiel auftaucht ist, wenn man mit UltraVNC in den Ordner reingeht und der versucht, alle Dateiinformationen zu laden, das kann dann schonmal sehr lange dauern.
Ich dachte halt nur, dass es auch andere Anwendungen betrifft.

Sie dir mal die Bilddatenbank SuSIDE an

Danke, aber die Bilder liegen auf unserem Server und das muss auch so bleiben. Auslagern kommt i.M. nicht in Frage - zumal es bei unserer Größe 480€ im Monat bei Euch kosten würde.
 
...
auf unserem Webserver haben wir alle unsere Produktbilder liegen ...
Wie machen das große Firmen wie ebay oder google-pics?
...

Nun da es um einen "Webserver" geht hast Du wohl mit dem "VNC" den am wenigsten kritischen Anwendungsfall genannt.
Das VNC-Beispiel ist doch eher die Klasse Administration/Wartungsarbeiten und vergleichbar mit dem Browsen im Dateisystem des lokalen Systems mit grafischem Desktop.
Dazu waere zu erwaehnen, dass man eine Auflistung der Dateien und ihrer Attribute schneller bekommt, wenn man sie an der shell / Kommandozeile erstellen laesst da die grafische Aufbereitung entfaellt (Vergleichbar mit Internetseiten die in 0,nichts zum Browser uebertragen sind welcher dann aber 0,8 Sekunden braucht um das Ganze zu visualisieren).
Noch schneller geht es, wenn man das Ganze dann nicht gleich an der Konsole ausgeben laesst sondern die Ausgabe in eine Datei umleitet und sich die dann ansieht wenn sie fertig ist (weil die staendige Veraenderung des Konsoleninhalts waehrend der Auflistung nicht unwesentlich Zeit verschlingt, die Datei ist i.d.R. schneller erstellt).
Das ist auch am ehesten an dem dran, was ein Programm (z.B. im Webserver) an Verarbeitung treibt wenn es eine Auflitung aller Dateien des Verzeichnisses holt, das ist wesentlich weniger als bei einem Explorer / Konqueror anfaellt.

Technisch gibt es (bei Unix-fs, Du hast doch einen *nix Server?) fuer die Anzahl Dateien tatsaechlich eine Grenze jedoch nicht fuer ein einzelnes Verzeichnis (Ausnahme-> Es ist ein mountpoint), sondern fuer ein Dateisystem auf einem Medium. Dort gibt es jeweils eine beschraenkte Anzahl von inodes welche auch die maximale Anzahl dort verwaltbarer Dateien begrenzt (siehe Inode - Wikipedia).

Wie das mit den kritischeren Anwendungsfaellen im Betrieb des Webservers aussieht muss man sich im Einzelfall ansehen allerdings werden wohl eher selten grosse Verarbeitungen gleich auf alle Dateien eines Verzeichnisses ausgefuehrt und wie beschrieben, die eigentliche "Auflistung" aller Dateien geht eigentlich ganz flink.

Ciao,
Mercy.
 
OK, vielen Dank für die Antwort. Dann brauch ich mir ja keine Sorgen machen. Ich dachte halt nur, dass irgendwann, wenn ein Ordner zu groß wird, nur noch sehr langsam auf die Dateien darin zugegriffen werden kann. Bin froh zu hören, dass es nicht so ist.

Du hast doch einen *nix Server?

Nein, wir haben immer noch einen Windows-Server, obwohl wir das schon seit Jahren umstellen wollen. Nur hab ich leider keine Ahnung von Linux/Unix. Ich hab zwar schon hier im lokalem Netzwerk mysql auf einem Linux-Rechner laufen (um endlich mal mit der Umstellung anzufangen), aber in Produktion kann man damit nicht gehen, weil ich zu viele Sachen bei Linux nicht weiß (was man z.B. macht, wenn mal was abstürtzt oder sich nicht mehr starten lässt usw...)


also, danke nochmal
 
Back
Top