Sven Rautenberg: Userprofile wie in Datenbank abbilden?

Beitrag lesen

Moin!

Bei einer Tabelle die so aufgebaut ist:
userid option1 option2 option3...usw.

Dort würden bei 200 Usern ein Angabe von durchschnittlich 10 Angaben, 1000 Felder leer sein. Und bei 1 Millionen Usern? 10 Millionen!

Ich tendiere dazu, diese Angaben in ca. 4 Kategorien unterzuteilen und dann 4 Tabellen zu machen.

Vier Tabellen mit genausovielen Spalten, wie die eine Tabelle? Was spart das denn?

Vernünftiger wäre aus Speicherplatzsicht, genau eine Tabelle mit 3 Spalten zu haben: User-ID, Angaben-ID und Wert. Die Angaben-ID identifiziert, was der User da eingetragen hat. Wenn ein User nix einträgt, taucht er in der Tabelle gar nicht auf.

Wenn tatsächlich sehr unterschiedliche Werte, auch hinsichtlich der Datenmenge, eingetragen werden sollen, dann sollte man dies durch die Nutzung von zwei Tabellen, eine für kurze Werte und eine für sehr große, hinkriegen.

Auf der anderen Seite: Alles, was Speicherplatz spart, verbraucht mehr Zeit beim Zusammensammeln der Informationen, weil der Zugriff und das aufdröseln aufwendiger ist.

- Sven Rautenberg