Ik ben bezig met de opbouw van een database(+site) ;-), waar waarschijnlijk veel users op komen. Elke gebruiker heeft de mogelijkheid om verscillende media op zijn account te plaatsen, zoals foto's en filmpjes, gastenboek en een 'dagboek'. Heeft iemand tips hoe ik dit het beste kan aanpakken. Ik zelf zat er aan te denken om voor elke gebruiker verschillende tabellen aan te maken, bv. 'user2341fotos', 'user2341film' enz...
Een database is juist gemaakt voor veel records, als jij ervoor kiest om de data te splitsen over meerdere identieke tabellen zal dit alleen averechts werken, de boel wordt trager doordat je allerlei joins zal willen maken.
Een gemiddelde multi-dimensinal dbms doet ongeveer 10.000 recrds per seconden doorzoeken. Maarja, dat is een data warehouse... die zijn niet echt optimaal voor OLTP-achtige querys. Jij zal gewoon een een normale (relationele) database gebruiken, maar zelfs dan moet het totaal geen probleem zijn als je gewoon netjes normaliseerd.
Ben ook toevallig aan het denken over zo'n syteem.
Ik dacht ook dat het beter zou zijn om iedereen een eigen tabel te geven omdat je die dan kan aanpassen aan elke gebuiker zijn/haar persoonlijke hoeveelheid data. Als er je bv een gebruiker hebt die 5 filmpjes online wil zetten, dan kan je daar vijf kolommen voor voorzien, maar als er dan een user is die 100 filmpjes online wil zetten dan moet je al een tabel met 100 'filmkolommen' voorzien, en dit geldt dan ook voor fotos en dergelijke.
Dat zal dan wel een grote tabel worden, die voor 95 procent van de gebruikers véél te groot zal zijn, de meeste kolommen zullen dan ook leeg blijven, maar toch moet je ze voorzien, want je weet nooit dat er een user is die extra véél filmpjes of fotos online wil zetten.
Is het dan niet gemakkelijker (en dan ook sneller/minder geheugen) om iedereen zijjn eigen tabel te geven waar ze dan zelf kolommen kunne bijvoegen naar hartelust?
Of maakt het niet uit hoeveel lege kolommen je hebt in een tabel voor snelheid in geheugenplaats?