login  Naam:   Wachtwoord: 
Registreer je!
 Forum

database model advies nodig

Offline butters - 23/10/2007 11:48
Avatar van buttersNieuw lid hallo,

ik ben bezig met een site die om te beginnen 500 items zal omvatten, verdeeld over een vast aantal categorien, en welke constant groeiende is. Vergelijk het met een torrent index 

Waar ik nu mee zit is het volgende: ik heb een tabel, `items`, en als ik daar iets van een bepaalde category uit wil hebben SELECT ik gewoon WHERE `cat` ='1'. Echter, als ik er straks een paar duizend items in heb staan.... Zou het dan beter zijn een tabel te maken per category? Ik heb 10 categorien, en daar blijft het eerst ook bij. Ik heb het vermoeden dat het namelijk sneller zal werken als ik een select * from `cat1` doe ipv select * from `cat` where id='1' (uiteraard gebruik ik geen * maar kolommen ;) )

graag een advies 

14 antwoorden

Gesponsorde links
Offline meagain - 23/10/2007 12:08 (laatste wijziging 23/10/2007 12:13)
Avatar van meagain Nieuw lid je zal al een futuristische stopwatch moeten gebruiken om tussen de twee aangehaalde queries een tijdsverschil te kunnen meten ...

Citaat:
Rens edit:
Volgens de regels spreken we hier AN en geen MSN taal...
Offline butters - 23/10/2007 12:12
Avatar van butters Nieuw lid ow? zal het zo minimaal zijn dan? Ik dacht dat dit wel verschil zou maken bij een database met 10.000 items over verschillende categorien?
Offline ikkedikke - 23/10/2007 17:39
Avatar van ikkedikke PHP expert Je moet een tabel met categorieen hebben. 1 kolom daarin is het id. bij ieder item geef je een catID mee.
Hiermee kan je trouwens heel handig gebruik maken van subqueries.
Offline butters - 23/10/2007 17:51
Avatar van butters Nieuw lid zo heb ik het nu ook al en wat voor subqueries doel je precies op dan?
Offline TotempaaltJ - 23/10/2007 17:54 (laatste wijziging 23/10/2007 17:54)
Avatar van TotempaaltJ PHP interesse Ik denk zelf dat het niet uitmaakt; Uiteindelijk heb je evenveel artikelen, misschien is 'gewoon' where cat=1 ietsje sneller omdat je minder tabellen hebt... Al maakt het volgens mij niet zo heel veel uit...

Rens schreef:
Citaat:
Volgens de regels spreken we hier AN en geen MSN taal...

Oh... Ik dacht ABN?
Onee, niks: 1, 2...
Sorry, moest me er even mee bemoeien!
Offline ikkedikke - 23/10/2007 18:53
Avatar van ikkedikke PHP expert iets als het volgende:

INSERT INTO `artikelen` (catID,titel) VALUES ((SELECT id FROM cats WHERE `triviaal`=\''.$_POST['categorie'].'\'),'titel')

Zo hoef je voor het id van de categorie niks meer op te zoeken.
Omgekeerd met het selecteren:
SELECT *,(SELECT `triviaal` FROM cats WHERE cats.id = artikelen.catID) as cat_triviaal FROM artikelen
Offline ranco - 23/10/2007 18:55
Avatar van ranco PHP gevorderde Meerdere tabellen maken voor artikelen is niet nodig. Pas wanneer honderdduizenden, tot miljoenen artikelen vermeld staan is het nuttig. Of je moet zeer veel verzoeken uitvoeren op een database om echt verschil te merken.
Offline butters - 23/10/2007 23:18
Avatar van butters Nieuw lid nouja, die tabel is wel het hart van de website zegmaar... Dus daar wordt wel alles in opgezocht/toegevoegd.
Maargoed, als ik dit allemaal goed lees maakt het dus niet uit of ik aparte tabellen gebruik of een WHERE cat ='4' toevoeg 
Offline marten - 23/10/2007 23:30 (laatste wijziging 23/10/2007 23:33)
Avatar van marten Beheerder
Citaat:
5. Taalgebruik:

Schrijf je berichten in het Algemeen Nederlands. Gebruik leestekens waar nodig, geen zelf uitgevonden afkortingen en geen MSN-taal. Hou er rekening mee dat hier Nederlandstalige mensen uit verschillende streken bijeenkomen, en zo ook verschillende dialecten. Het ABN biedt hier dus weeral een ideale middenweg, hou je hier dan ook aan.


Bigboss je ontvangt een waarschuwing voor je volkomen nutteloos onderzoek in dit topic.
Offline ranco - 24/10/2007 00:10 (laatste wijziging 24/10/2007 00:10)
Avatar van ranco PHP gevorderde Kom op jongens, laten we elkaar lekker met z'n alle gaan afzeiken. Ik verwacht op zijn minst van de admins dat ze professionele houding aannemen. Wanneer iemand iets aanvecht, al dan niet nutteloos of wel, hoeft geen botte reactie verwacht te worden.

*Ben benieuwd wanneer dit bericht door een admin wordt weggehaald*
Offline marten - 24/10/2007 08:34
Avatar van marten Beheerder Ik reageer niet kwaad, ik geef alleen maar aan dat het in de regels staat en je gewoon ABN of AN moet praten hier. Nu weer ontopic.
Offline xSc - 24/10/2007 08:41
Avatar van xSc Onbekend vast aantal categorien, en welke constant groeiende is

We leven niet in de middeleeuwen.

Wat is het nu: een vast aantal of een aantal dat groeit?
Offline butters - 24/10/2007 09:57
Avatar van butters Nieuw lid volgens mij had ik duidelijke staan dat het aantal cats vast staat en het aantal items groeiende is...
Offline ranco - 24/10/2007 10:48
Avatar van ranco PHP gevorderde Nogmaals: Wanneer je extreem veel database verkeer gaat krijgen, of extreem veel items gaat krijgen, dan is het verstandig om ze in meerdere tabellen op te slaan.
Onder extreem veel verkeer versta ik: Meer dan 1.000 query's per minuut. En extreem veel items: meer dan honderdduizend. Is dit niet het geval, dan kan alles in 1 tabel.  
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.184s