Avatar billede aggemamme Nybegynder
23. januar 2003 - 22:51 Der er 9 kommentarer og
2 løsninger

MySQL: Meget data i tabel

Hej,

Hvis man har en tabel med over 30 felter med information om elever på en/flere skole(r), og der kommer over 15000 elever, kan MySQL så benyttes? Eller er det for tungt?

Hvilke foranstaltninger kan tages i brug for at undgå, at det bliver sløvt? Har nogen haft erfaringer med brug af MySQL med megen data?

Vil det evt. være bedre at dele det op i flere tabeller, en med ofte brugt information (elevens navn, brugernavn osv) og en anden med sjældnere brugt information (adresse og alle de andre informationer?)

Jeg vil også værdsætte, hvis nogen har et godt link til sider med information om emnet - hvis det er for stort at beskrive i et svar her på eksperten.

På forhånd tak,
Christian
Avatar billede alrua Nybegynder
23. januar 2003 - 22:54 #1
tror sagtens du kan bruge mysql uden nogen fiksfakserier :)

Almindelig info kan du sagtens gemme i samme tabel, men hvis der skal stå meget tekst (dvs. felter af typen 'text', 'bool' el. lign) så skal du nok have dem i en tabel for sig :)

For at illustrere hvor meget MySQL kan trække kan du jo se på det her forum:
http://pirate.planetarion.com/

Der er næsten 100.000 indlæg og det kører fint! :D

-Alrua
Avatar billede aggemamme Nybegynder
23. januar 2003 - 22:57 #2
OK. Det er hovedsagligt varchar af længden 10-255, - der er ingen "tunge" felter.

"bool" - er det ikke en boolean, altså kun sand eller falsk? I så fald kan den da ikke være så tung :-)
Avatar billede pbudk Nybegynder
23. januar 2003 - 22:58 #3
så vidt jeg husker kører eksperten også på en mySQL database.

Og her er der over 300.000 spørgsmål, med jeg ved ikke hvor mange kommentarer og svar.

Så hvis bare din database er konstrueret godtnok burde mySQL slet ikke give problemer.
Avatar billede jets Nybegynder
23. januar 2003 - 22:59 #4
15000 records i en tabel er peanuts! Hvad angår ydelse er det blot vigtigt at optimere/oprette indexes (check dine queries).
Avatar billede aggemamme Nybegynder
23. januar 2003 - 23:00 #5
OK - hvor kan jeg læse mere om at optimere/oprette indexes? Eller er det en så lille og nem ting, at det kan forklares i et svar?
Avatar billede pbudk Nybegynder
23. januar 2003 - 23:01 #6
Avatar billede jets Nybegynder
23. januar 2003 - 23:05 #7
En start:

http://www.mysql.com/doc/en/Table_and_index.html

Som udgangspunkt ligger dataene i et såkalt clustered index, sorteret fysisk i databasefilen. Du kan lave ekstra indexes, hvis du forespørger med en "where clause" på andet end primary key. Det optimerer søgehastigheden og dermed databaseydelsen. Men det bruger plads. Noget for noget :-) Hvis du sidder og skal igang med et større projekt vil jeg anbefale dig at sætte dig lidt ind emnet under alle omstændigheder.
Avatar billede alrua Nybegynder
23. januar 2003 - 23:07 #8
hmm...det var 'blob' jeg tænkte på, ikke 'bool' :D
Avatar billede aggemamme Nybegynder
23. januar 2003 - 23:08 #9
OK - tak for hjælpen.

Det er rart at vide, at MySQL er i stand til at behandle langt større mængder data end de 15000 poster.
I må lige smide nogle svar, så vil jeg gladeligt fordele point :-)
Avatar billede jets Nybegynder
23. januar 2003 - 23:11 #10
Held og lykke med projektet :-)
Avatar billede aggemamme Nybegynder
24. januar 2003 - 08:07 #11
Tak, jets :-)

Er der ikke flere af jer der vil have point? Fx pbudk eller nogen? :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester