Asset Management: Welche ist die bessere Art und Weise Benutzer erzeugte Dateien auf einem Webserver zu organisieren?

StackOverflow https://stackoverflow.com/questions/4093177

  •  28-09-2019
  •  | 
  •  

Frage

Wir sind dabei, ein System zu bauen, die Benutzer mehrere Bilder und Videos auf unsere Server hochladen kann.

Das Team arbeite ich mit entschlossen haben, alle Vermögenswerte speichern die eindeutige Kennung des Benutzers, die zu einem Benutzer in einem Ordner mit dem Namen verwenden. Dieser Ordner wiederum Ordner auf dem Dateiserver einen Unterordner unserer wichtigsten Vermögenswerte sein.

Die Dateistruktur sie vorgeschlagen haben, ist wie folgt:

[asset_root]/userid1/assets1  
[asset_root]/userid1/assets2  

[asset_root]/userid2/assets1  
[asset_root]/userid2/assets2  

etc.

Wir erwarten Tausende haben oder möglicherweise eine Million + Benutzer in der Lebensdauer dieses Systems.

Ich dachte immer, dass es keine gute Idee war, viele Unterordner in einem einzigen Ort zu haben und schlug ein Jahr / Monat / Tag Ansatz wie folgt:

[asset_root]/2010/11/04/userid1/assets1  
[asset_root]/2010/11/04/userid1/assets2  

[asset_root]/2010/11/04/userid2/assets1  
[asset_root]/2010/11/04/userid2/assets2  

etc.

Wer weiß, welche der oben genannten Ansätze besser für diese vielen Vermögen geeignet wäre? Gibt es eine bessere Art, wie Bilder / Videos auf einem Server zu organisieren?

Das System in Frage wird ein Windows IIS 7.5 mit einem SAN sein.

Vielen Dank im Voraus.

War es hilfreich?

Lösung

In der Regel sind Sie richtig, dass viele Dateisysteme eine Obergrenze für die Anzahl der Dateien und Ordner verhängen, die in einem Ordner befindet. Wenn Sie schlagen diese Grenze mit der Anzahl der Benutzer, die Sie haben, Ihre in Schwierigkeiten.

Im Allgemeinen würde ich einfach ein benutzen Uuid für jedes Bild, mit einer gewissen Dimension der Partitionierung. z.B. Ein Hash von ABCDEFGH würde sich wie [asset_root] / ABC / DEFGH beenden. gibt Ihnen ein höheres Maß an Sicherheit über die Anzahl der Dateien einen Hash mit dem Sie in jedem Ordner und verhindert, dass mit zu Sorge am Ende wird etwa, zum Beispiel, nicht zu wissen, welcher Monat ein Bild, das Sie in gespeichert benötigen.

Andere Tipps

Ich bin Ihr Dateisystem NTFS ist vorausgesetzt? Wenn dem so ist, können Sie eine Grenze von 4,294,967,295 Dateien auf dem Datenträger haben - die Grenze von Dateien in einem Ordner ist die gleiche. Wenn Sie in der Größenordnung von Millionen von Nutzern haben, sollten Sie in Ordnung sein, wenn Sie nur einen Ordner pro Benutzer statt mehrerer vielleicht zu prüfen, wie Ihr Beispiel zeigt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top