Olen tekemässä omaa sisällönhallintasysteemiä PHP + MySQL -yhdistelmällä. Ideana on, että jokainen artikkeli kuuluu johonkin kategoriaan. Jokaisella kategorialla on peruskenttien (otsikko, teksti, julkaisu...) lisäksi omat extra-kenttänsä.
Miten tietokannan rakenne kannattaisi toteuttaa? Ajattelin sellaista, että olisi taulu extrat, jossa olisi kategorian id ja extrakentän nimi. Artikkelia kirjoitettaessa sitten tallennettaisiin näiden extrakenttien tiedot toiseen tauluun, jossa olisi extran id, jutun id ja extra-kentän sisältö.
Mietin vain, tuleeko kantaan liikaa rivejä, jos joillakin kategorioilla voi olla n. 15 extra-kenttää tai onko artikkelin tietojen hakeminen liian hidasta, kun on noin monta taulua josta hakea.
Onko rivejä tulossa aloittelijan mielestä paljon (> 10000) vai kohtalaisesti (1 000 000) vai paljon (> 1 000 000 000) riviä? Ilman mitään optimointia sanoisin perus tietokannan selviävän sinun julkkaristasi aivan mainiosti, vaikka kannan rakenne olisi huono. Millaista tietoa noihin extrakenttiin on tulossa?
Kenttiin on tulossa pääasiassa pelkkää tekstiä. Ehkä tuo rivien määrä ei ole tosiaan se pääongelma, enemmän mietinkin tuota nopeutta.
Aihe on jo aika vanha, joten et voi enää vastata siihen.