Unterordner im Dateisystem

  • App
    WoltLab Suite Gallery

    Hallo Woltlab-Team,

    mein Provider teilte mir mit, dass ab ca. 5.000 Dateien pro Ordner, die Performance des Servers rapide abnimmt. Diese Erfahrung konnte ich auch selbst schon machen. Und wer dies auf seinem Heimcomputer einmal ausprobiert hat, weiß, dass der Zurgriff bei einer solchen Anzahl an Dateien im Ordner nicht mehr schnell vonstatten geht. Auch das nächtliche Backup verzögert sich so deutlich.

    Leider speichert die Community Gallery alle Fotos in einen Ordner, bzw. Thumbails seperat. Daher wäre es sehr wünschenswert, wenn ab 5.000 Detaien ein neuer Unterordner angelegt wird, in dem die nächsten 5.000 Fotos gespeichert werden, usw.

    Bei einem eigenen Projekt habe ich das Problem Folgendermaßen gelöst:

    • In der Datenbank wird pro Foto der Ordner (1, 2, 3, etc.) vermerkt (was ja sowieso notwendig würde)
    • Beim Hochladen eines neuen Fotos wird dann mit SELECT COUNT(), GROUP BY OrdnerID, ORDER BY OrdnerID DESC und getFirstRow() die Anzahl der Grafiken im neuesten Ordners gezählt...
    • ...und bei Bedarf ein neuer Unterordner angelegt.


    Die Thumbails speichere ich übrigens im selben Ordner, d.h. bei 4 Thumbails und natürlich der Originaldatei wird nach 1.000 Datenbankeinträgen ein neuer Unterordner angelegt. Damit habe ich sehr gute Erfahrungen gemacht.
    Ich hoffe, dies ist eine gute Anregung für die Community Gallery. Ich finde sie sogar als sehr empfehlenswert, gerade durch meine Erfahrungen mit großen Dateimengen.

    Viele beste Grüße! :)

    Less

  • Wir werden mit Burning Board 4 für die Galerie das selbe System wie für die Dateianhänge nutzen, dort wird für jedes Element eine Prüfsumme gebildet (etwa "cee6e0910aa507d23489976c627e56486546c61a") und auf Basis der ersten beide Zeichen in Unterordnern gespeichert. Ein Bild mit der gerade genannten Prüfsumme würde dann unterhalb von wcf/images/photos/c/e/ liegen (die Thumbnails liegen in einem eigenen Ordner mit selber Struktur). Rechnerisch bedeutet das, dass du im Schnitt 1,28 Millionen Bilder brauchst bevor du 5.000 Bilder pro Ordner hast.

    Alexander Ebert
    Senior Developer WoltLab® GmbH

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!