Avatar billede ruma1974 Nybegynder
04. februar 2009 - 12:17 Der er 11 kommentarer og
1 løsning

Fordel og ulemper ved store tabler

Hej,

Jeg har 120000 "rows" og for "row" har jeg ca 10000 varchar(16).

Mit spørgsmål er hvad er fordel ulemper ved en stor MyISAM table sammmenlignet med at lave 10000 seperate tabler.

I fremtiden får jeg nye varchar(16) søjler. Antal "rows" er konstant.

Mit primitive syn på sagen er at det er hurtigere at oprette seperate tabler end en stor table men administrativt er det lettere at have en stor table.

Er der en god bog hvor jeg kan læse mere om database design.

Mvh,

Rune
Avatar billede ladyhawke Novice
04. februar 2009 - 12:30 #1
Du kan i hvert fald læse en hel del om det her:

http://databases.about.com/od/specificproducts/Database_Design.htm
Avatar billede ruma1974 Nybegynder
04. februar 2009 - 13:06 #2
Mange tak - det ser spænende ud. Jeg holder Spørgsmålet åbent for at se om der kommer nogle ekstra bud.
Avatar billede ladyhawke Novice
04. februar 2009 - 13:53 #3
Det vil jo ofte være et kompromis og det afhænger meget af hvilke data du skal opbevare og hvordan/hvor hurtigt de udvikler sig...

Jeg lægger et svar, hvis du kan bruge mit link til noget :o)
Avatar billede ruma1974 Nybegynder
04. februar 2009 - 19:54 #4
Ja, læg endelig et svar. Det er nok bedste at lave nogle små test for se hvad der er mest praktisk. Dette tager naturligvis lidt tid men er nok i sidst ende hurtigere end læse en masse teori.
Avatar billede ladyhawke Novice
05. februar 2009 - 12:35 #5
Er nu ganske godt at kende teorien, i hvert fald et basalt overblik, der ligger mange års erfaringer bag disse og du få ikke samme erfaringsgrundlag, ved at lave 50 tests på et udvalgt data sæt
Avatar billede ruma1974 Nybegynder
05. februar 2009 - 15:48 #6
Jeg har genopfrisket min viden om normalisering v.hj.a. dinne links. Jeg fortolker normaliserings reglerne sådan at der ikke er noget i vejen med min store table så længe jeg ikke har tomme felter og mine værdier i søjlerne kun afhænger a primary key.
Avatar billede ruma1974 Nybegynder
05. februar 2009 - 15:48 #7
af primary key
Avatar billede ladyhawke Novice
05. februar 2009 - 15:54 #8
Nu kender jeg ikke dine data, men det skal nok passe. Det er bare rart at vide hvad man gør, når man laver de nødvendige kompromiser :o)
Avatar billede arne_v Ekspert
05. februar 2009 - 16:57 #9
Spoergsmaalet om N tabeller med M felter versus 1 tabel med M+1 felter (hvor det ekstra felt indeholde information som ellers var i valget af tabel) er ikke et normaliserings/denormaliserings problem - der er ikke redundant information i nogen af modellerne.

Jeg er dog helt klart for en enkelt tabel. Fordi:
- simplere applikations logik
- nemmere database administration
- fornuftige indexes boer kunne give fornuftig performance

Mere specifikt for din problem stilling vil jeg nok foreslaa:

rownum INT, PK
colno INT, PK
data VARCHAR(16)
Avatar billede ruma1974 Nybegynder
05. februar 2009 - 21:19 #10
Super Arne - denne model løser mit problem selv hvis jeg har tomme felter. Hvis i lægger et svar får i points.
Avatar billede arne_v Ekspert
05. februar 2009 - 22:11 #11
Og du skal ikke aendre tabel struktur, naar du faar flere kolonner.
Avatar billede arne_v Ekspert
05. februar 2009 - 22:11 #12
og et svar
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