Entwickler-Ecke
Datenbanken - User-Tabellen-Design
Martok - Mi 30.01.08 18:37
Titel: User-Tabellen-Design
Hallo!
Ich bin grade etwas ins grübeln gekommen. Ich habe eine Tabelle mit allen angemeldeten Spielern. Da stehen zum Beispiel Anmeldeinformationen drin, aber auch Statistiken und später noch Optionen.
Ist das sinvoll, alle diese Sachen in der Haupttabelle rumgeistern zu lassen? Oder ist es sinnvoll, Optionen, Statistiken usw. in eigene Tabellen auszulagern?
Wenn man für diese Entscheidung noch mehr Infos braucht... sagts mir ;)
mfg
Sebastian
ub60 - Mi 30.01.08 19:06
Titel: Re: User-Tabellen-Design
Martok hat folgendes geschrieben: |
| Wenn man für diese Entscheidung noch mehr Infos braucht... |
Man braucht!
Such doch mal nach Normalform einer Datenbank bzw. Redundanz, da solltest Du genügend Hinweise bekommen.
ub60
Martok - Mi 30.01.08 19:41
Hm, eigentlich ist doch das nicht das eigentliche Problem. Mal ein Beispiel:
Quelltext
1: 2: 3:
| (alles zusammen) users: ID|NAME|PASS|LAST_LOGIN|LAST_ACTION|SKILL_* (4 mal)|SHOW_ONLINE_STATUS(+weitere Optionen) |
oder
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| (maximal aufgetrieselt) users: ID|NAME|PASS|LAST_LOGIN
last_action: UID|LAST_ACTION
skills: UID|SKILL_* (4 mal)
options: UID|SHOW_ONLINE_STATUS(+weitere Optionen) |
Redundant ist da ja nie was. Das Problem ist ja nur eins der Verteilung der Daten. Und hier gehts mir eher um die Geschwindigkeit, da bestimmte Sachen selten gelesen, andere selten geschrieben und die last_action z.B. jedes mal geschrieben und gelesen wird.
Wobei man mit geschickt verteilten Indices auch was erreichen dürfte oder?
ub60 - Mi 30.01.08 22:31
Wenn Du keine redundanten Daten hast, sollte eine große Tabelle eigentlich kein Problem sein. Ein Geschwindigkeitsvorteil sollte bei kleineren Tabellen auch nicht auftreten, da man ja (über SELECT) auswählen kann, welche Daten man übers Netz transportieren möchte. Die Indizes zum Sortieren und zum Zugriff funktionieren bei Tabellen mit vielen und mit wenigen Feldern gleich schnell.
ub60
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!