anders72
Goto Top

Datenbankaufbau Onlinecommunity

Hallo zusammen,

ich frage mich zurzeit, wie ich die Datenbank aufbauen soll, die später zu einer Onlinecommunity mit vielen, d.h. > 100.000 Nutzern, passen soll. Mein Hauptproblem besteht dabei darin, dass ich eine entsprechend performante Lösung brauche, um beispielsweise ein Kennzeichensystem (oder Freundesystem) in der Datenbank abzubilden.

Angenommen jeder Nutzer hat x Freunde. Wir ordne ich die Information, welche Freunde zu wem gehören dem jeweiligen Datensatz am besten zu?

Mir ist eine Lösung bekannt, in der in einer Hilfstabelle zu jedem Datensatz entsprechend viele Dubletten angelegt werden, bei denen jeweils in einem Feld die ID eines Freundes gespeichert wird. D.h.:

Haupttabelle:
ID:500

Nebentabelle:
ID:500 - Freund:ID33
ID:500 - Freund:ID27
ID:500 - Freund:ID53

usw.

Mir erscheint diese Lösung bei einer großen Nutzeranzahl und damit verbundenen Datenbankzugriffen aber als sehr schlecht bzw. sehr rechenintensiv. Kennt hier jemand evtl. eine bessere Lösung oder hat jemand Erfahrungen in dem Bereich gemacht?

Bin für jede Hilfestellung sehr dankbar!

Content-Key: 62245

Url: https://administrator.de/contentid/62245

Printed on: April 24, 2024 at 02:04 o'clock

Member: MadMax
MadMax Jun 27, 2007 at 11:17:33 (UTC)
Goto Top
Hallo Anders72,

das wirst Du kaum anders hinbekommen, das ist eine ganz normale n:m-Beziehung, die mit eben dieser Beziehungstabelle gelöst wird. Wobei allerdings keine Dubletten da sind, von denen Du schreibst, sondern in der Tabelle sind genau die beiden ID-Felder. Mehr Felder kommen in die Tabelle eigentlich nur, wenn Du der Beziehung selber irgendwelche Attribute zuweisen willst, z.B. welcher Art die Beziehung ist o.ä.

Gruß, Mad Max
Member: Anders72
Anders72 Jun 27, 2007 at 17:37:20 (UTC)
Goto Top
Ja, mit Dubletten meinte ich in dem Fall nur das mehrfache Vorkommen einer ID..

Vielen Dank face-smile
Member: Desperado
Desperado Jun 29, 2007 at 17:45:51 (UTC)
Goto Top
hi, ohne wahre kenntisse eine db für > 100.000 user anzulegen finde ich... riskant? face-smile zur performance zählen auch dringendst dinge wie: select-statements, pks, inidzies etc... performante theoretische strukturen sind grundvorausetzung, aber kein garant...

greetz, desperado