Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 19085|Svar: 2

[Källa] SQL Server skapar ett index

[Kopiera länk]
Publicerad på 2019-09-20 09:31:08 | | |
Begreppet indexering

Syftet med att etablera ett index är att förbättra databassystemets prestanda, snabba upp datans frågehastighet och minska systemets svarstid.
Vad är ett index: Ett index i en databas liknar en innehållsförteckning för en bok, där du snabbt kan hitta den information du vill ha utan att läsa hela boken.
I en databas använder ett databasprogram index för att snabbt söka data i en tabell utan att behöva skanna hela tabellen.
Innehållsförteckningen i en bok är en lista över ord och sidnumren där de finns, och indexet i databasen är en lista över värden i en tabell och var varje värde lagras.
För- och nackdelar med indexering: Det mesta av overheaden för frågeexekvering är I/O, och ett av huvudmålen med att använda index för att förbättra prestandan är att undvika fullständig tabellskanning, eftersom fullständig tabellskanning behöver läsa varje datasida i tabellen från disken, och om det finns ett index som pekar på ett datavärde behöver frågan bara läsas några gånger till disken.
Därför kan rimlig användning av index påskynda datasökningen. Index förbättrar dock inte alltid systemets prestanda, indexerade tabeller behöver ta upp mer lagringsutrymme i databasen, och samma kommando för att ändra och ta bort data tar längre tid att köra och underhålla indexet.
Därför måste vi använda indexet rimligt och uppdatera det i tid för att ta bort det suboptimala indexet.

Klassificering av index

Indexet liknar innehållsförteckningen framför den kinesiska ordboken, och du kan snabbt hitta det ord du vill hitta enligt pinyin eller versaler.
UNIK: Indexvärdet för varje rad är unikt (en unik begränsning skapas och systemet skapar automatiskt ett unikt index).
Primärnyckelindex: Den primärnyckelkolumn som anges när tabellen skapas skapar automatiskt ett primärnyckelindex och har unika egenskaper.
KLUSTRADE: Klustrade index är likvärdiga med att använda en ordboks pinyin-uppslag, eftersom det klustrade indexet lagrar poster som är fysiskt kontinuerliga, det vill säga att pinyin a måste följas av b.
ICKE-klustrade: ICKE-klustrade index motsvarar att använda ordboksradikaler för att slå upp, icke-klustrade index är logiskt kontinuerliga och fysisk lagring är inte sammanhängande.
Ett klustrat index kan bara ha en tabell i en tabell, medan ett icke-klustrat index kan ha mer än en tabell i en tabell.

Vilka fält som behöver indexeras

1. Tabellens primära och främmande nycklar måste ha ett index
2. Tabeller med mer än 300 data bör ha ett index
3. Tabeller som ofta kopplas till andra tabeller bör indexeras på de sammanhängande fälten
4. Fält som ofta förekommer i Where-klausulen, särskilt de i stora tabeller, bör indexeras
5. Fält som ofta sorteras eller grupperas (dvs. utför GROUP BY eller ORDER BY-operationer) bör indexeras
6. Indexet bör byggas på mycket selektiva fält
7. Indexet bör byggas på små fält, för stora textfält eller till och med ultralånga fält, bygg inte index och använd heltal som nyckelvärden som möjligt, eftersom heltal har snabbast åtkomsthastighet
8. Etableringen av sammansatta index måste analyseras noggrant; Försök överväga att använda enkelfältindex istället
9. Tabeller som ofta utför datamanipulation bör inte indexeras för mycket
10. Ta bort värdelösa index för att undvika negativ påverkan på exekveringsplanen

Nackdelen med för många index

1. Lagringsutrymmet kommer att bli större, och varje index måste lagras i utrymmet
2. Om det finns många icke-klustrade index, kommer alla icke-klustrade index att ändras därefter när det klustrade indexet ändras därefter
3. För många index leder till en ökning av antalet kombinationer som behöver utvärderas i optimeringsprocessen, vilket ökar frågetiden
4. Varje index har statistisk information, och ju fler index, desto mer statistisk information, vilket ökar frågetiden
5. Uppdateringsöverhead, när en data ändras och många kolumner ändras kan det leda till att flera index ändras, vilket resulterar i att uppdatering, borttagning och insättning blir långsammare








Föregående:Tonårsstarkt ackompanjemang MV-video
Nästa:C# hämtar den aktuella systemdiskbokstaven, systemkatalogen, skrivbordet, etc
 Hyresvärd| Publicerad på 2020-12-27 11:56:05 |
SKAPA INDEX PersonIndex ON Tabellnamn (Fältnamn)

SLÄPPINDEX PersonIndex PÅ tabellnamn
 Hyresvärd| Publicerad på 2021-02-24 15:16:27 |
När Itsvse-tabellen Testfältet inte har ett index, läggs det till

Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com