2016-07-30 4 views
-1

alleWie erstellt man eine Datenbank für eine große Menge an Dateien?

Ich baue ein Foto Forum Website wie 500px, traf ich einige Probleme beim Versuch, die Datenbank für diese Bilder zu konstruieren. Muss ich für jedes Foto, das der Benutzer aktualisiert hat, eine neue Tabelle erstellen, in der die Foto-ID, Foto-Likes, Foto-Beschreibung, Foto-Kommentare, Foto-Update-Zeit usw. enthalten sind? Würde es meinen Server explodieren lassen, um zu viele Tabellen in mysql zu erstellen? Oder, was ist die beste Praxis, um alle diese Informationen in der Datenbank außer Bild selbst zu speichern (ich würde sie in einem Verzeichnis speichern)? Vielen Dank!

+0

Dies ist Off-Topic für StackOverflow: Es gibt keine "richtige Antwort" auf diese Frage; nur Meinungen. Dies ist auch sehr breit, da es so viele Möglichkeiten gibt, eine Datenbank zu modellieren, so viele Datenbanktypen (Schlüssel/Wert, Spaltenfamilie, relational, Dokument, Graph), usw. Basierend auf Ihrer Frage, denke ich Es wäre klug, wenn Sie sich ein wenig mit relationaler Datenbankmodellierung beschäftigen (da Sie sich bereits auf eine relationale Datenbank konzentrieren), um die Verwendung von Tabellen besser zu verstehen. –

Antwort

0

Sie benötigen nur eine Tabelle photos. Und für jedes Foto sollten Sie einen neuen Datensatz zu dieser Tabelle hinzufügen. Ich würde vorschlagen, dass Sie mehr Theorie zum Datenbankdesign lesen. Dann wird es keinen Grund geben, solche Fragen zu stellen.

Edit: Für Kommentare sollten Sie eine andere Tabelle mit Feldern erstellen: id, user_id, photo_id, comment, created_at usw.

0

Warum wollen Sie für jeden Benutzer eine neue Tabelle erstellen? Wenn Sie eine Datenbanktabelle mit dem richtigen Index haben, sollten Sie in Ordnung sein, und wenn die Tabelle im Laufe der Zeit größer wird, können Sie sie einfach auf mehrere Server verteilen.

Verwandte Themen