Har lite frågor angående indexering...
1. Har ca 20 tabeller som det redan finns information i. Kan jag använda indexering nu för att få det att gå snabbare, eller använder man bara indexering när man skapar en tabell?
2. Om jag använder indexering för mycket får det då en motsatt effekt?
3. Kommer sidan att gå märkbart snabbare om jag använder indexering?
4. Läste att man skulle använda indexering på dom här kolumnerna:
Kolumner som man ofta ställer villkor på.
Kolumner som man joinar på.
Kolumner som man använder i order by.
Om det är så det ska vara, så känns det som att jag kommer att behöva indexera varje kolumn i databasen.
5. På min sida skapar jag en databas connection längst upp på varje sida och stänger den längst ner. Är de det bästa sättet att göra eller finns det något smidigare sätt?
Tacksam för alla svar!
LarsGMedlem sedan dec. 200012 464 inlägg
Kan jag använda indexering nu för att få det att gå snabbare
Ja
eller använder man bara indexering när man skapar en tabell?
Nej
Om jag använder indexering för mycket får det då en motsatt effekt?
Jo, i viss mån.
Kommer sidan att gå märkbart snabbare om jag använder indexering?
Kanske, beror på vilka datamängder du har, hur din datamodell ser ut och vilken typ av frågor du ställer. Om du har en onormaliserad datamodell så kommer index inte att hjälpa.
Kolumner som man ofta ställer villkor på.
Ja oftast, beror på datafördelning och liknande
Kolumner som man joinar på.
Absolut.
Kolumner som ingår i nycklar och andra constraints indexeras ofta automatiskt av databashanteraren.
Skiljer sig mellan olika DBMS.
Kolumner som man använder i order by.
Kanske, beror på hur stora resultatmängder man får.
Man får testa sig fram. De flesta DBMS har något stöd för att se hur ett index påverkar en fråga. (explain) Det kan även finnas mer sofistikerade analysverktyg.