Store portal databaser?

Tags:    databaser

Hej

Jeg søger lidt information om bl.a. store portalers databaser. Hvordan bygges de op? Feks. musik.tdc.dk, som ligger inde med 1,8 millioner søgbare musikfiler.

Jeg tænker generelt i skalerbare størrelser hvordan sådan noget er bygget op. Mine egne kundskaber ligger inden for PHP og MySQL, men går ud fra det er noget lidt mere avanceret end det..

Det er et lidt kryptisk spørgsmål, men hvis der er nogen der ved hvor jeg evt. kan læse/lære mere ville jeg være taknemmelig :)

MVH



4 svar postet i denne tråd vises herunder
4 indlæg har modtaget i alt 8 karma
Sorter efter stemmer Sorter efter dato
For det første så tror jeg at de lægger inde med nogle halvkraftige servere til at handle det.

Og det andet så bruger de nok også en form for Cluster, da TDC nok vil have så høj oppetid på en service som deres music shop.

Du kan evt. prøve at søge på google efter Database Cluster eller datawarehouse



1.8 søgbare musikfiler er i princippet ikke så meget. Det der afgører om det tager lang tid at søge i det, er de relationer der eventuelt skal inddrages i søgningen.

Først handler det om at bygge en fornuftig datamodel, dit datawarehouse/database skal have en fornuftig opbygning ikke mindst med henblik på indexes, de er alpha og Omega for at en søgning fungerer. Herefter skal din SQL optimeres til at skære resultater fra så hurtigt som muligt. Det vil sige at hvis du har flere joine osv. så start med at den inderste join, fjerner så mange resultater som muligt. På den måde får du i løbet af din eksekvering af SQL et mindre resultatsæt at arbejde på. Ser ikke umiddelbart en grund til at bruge en cluster til at gemme 2 mio rækker på, med mindre det er af andre grunde end at opnå en oppetid på over 99%...



Jeg vil sige det sådan at jeg har set SQL Server databaser (.mdf) i 10-GB klassen og den er ikke nødvendigvis tungere at danse med bare fordi den er stor. Kan ikke sige det bedre end Brian Hvarregaard. En godt struktureret database-modellering er alpha omega når vi kommer op i de størrelser også nogle gode servere.

Har du lært/hørt om datawarehouse og god database-modellering?



Indlæg senest redigeret d. 06.03.2008 22:23 af Bruger #2243
Database partitionering kan også bruges til større databaser.

MySQL indrømmer dog selv at de ikke har fået implementeret optimeringer ved partitionerede databaser ordenligt endnu, men det er højt på listen over ønskede features.

http://dev.mysql.com/doc/refman/5.1/en/partitioning-overview.html

Partitionering er i essensen at dele enorme tabeller op på flere fysiske lokationer, fx forskellige disks. Det kan hjælpe ved brug af where søgninger, idet databasen i bund og grund kun er nødt til at søge i en del tabellen.

Men det hjælper på diskens fysiske søgetid at sprede tabeller over flere diske, selvom man umiddelbart skulle tro det. Se ovenstående link for lidt mere info om pro's ved partitionering.

Ud over det kan dette link forklare en del mere om emnet: http://forums.mysql.com/list.php?106



Indlæg senest redigeret d. 13.07.2008 16:34 af Bruger #12571
t