Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Datenbankaufbau Onlinecommunity

Frage Entwicklung Datenbanken

Mitglied: Anders72

Anders72 (Level 1) - Jetzt verbinden

25.06.2007, aktualisiert 29.06.2007, 3046 Aufrufe, 3 Kommentare

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!
Mitglied: MadMax
27.06.2007 um 13:17 Uhr
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
Bitte warten ..
Mitglied: Anders72
27.06.2007 um 19:37 Uhr
Ja, mit Dubletten meinte ich in dem Fall nur das mehrfache Vorkommen einer ID..

Vielen Dank
Bitte warten ..
Mitglied: Desperado
29.06.2007 um 19:45 Uhr
hi, ohne wahre kenntisse eine db für > 100.000 user anzulegen finde ich... riskant? zur performance zählen auch dringendst dinge wie: select-statements, pks, inidzies etc... performante theoretische strukturen sind grundvorausetzung, aber kein garant...

greetz, desperado
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...