Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 23544|Svar: 2

[Kilde] SQL Server ydeevneoptimeret indeksfragmentering

[Kopier link]
Opslået på 27/12/2020 22.32.27 | | | |
Oversigt over indeksfragmentering

Hvad er indeksfragmentering, og hvorfor jeg bør fokusere på det:
Fragmentering opstår, når den logiske rækkefølge i indekset (baseret på nøgleværdien i indekset) ikke matcher den fysiske rækkefølge på indekssiderne i indekssiderne i indekset på de sider, som indekset indeholder.
Når der udføres en indsættelse, opdatering eller sletning på de underliggende data, ændrer databasemotoren automatisk indekset. For eksempel kan tilføjelse af rækker til en tabel forårsage split-rækker, der gemmer eksisterende sider i indekset for at gøre plads til indsættelse af nye nøgler. Over tid kan disse ændringer få information i indekset spredt i databasen (som indeholder fragmenter). Fragmentering opstår, når den logiske rækkefølge (baseret på nøgleværdi) i de sider, som indekset indeholder, ikke stemmer overens med den fysiske rækkefølge i datafilen.
Et stort antal fragmenterede indekser kan sænke forespørgselsydelsen, fordi yderligere I/O er nødvendig for at finde de data, indekset peger på. Mere I/O kan gøre applikationen langsom til at reagere, især når der er scanningsoperationer involveret.
Tjek for fragmentering af databaseindeks

Kommando:



Der er to måder at defragmentere på: reorganiser og genskab indekser; genopbygning af indekser refererer til at slette gamle indekser og genopbygge nye indekser i en transaktion, hvilket genvinder harddiskpladsen fra det oprindelige indeks og tildeler ny lagringsplads til at skabe en indeksstruktur. Reorganisering af indekser refererer til ikke at allokere ny lagerplads, omorganisere bladnoderne i indeksstrukturen på baggrund af det oprindelige rum, så den logiske og fysiske rækkefølge af datasiderne er konsistente, og frigøre overskydende plads i indekset.

Brug funktionen sys.dm_db_index_physical_stats til at opdage graden af fragmentering, felt avg_fragmentation_in_percent procentdelen af de logiske fragmenter, der returneres, generelt anbefaler Microsoft en tærskel på 30%:

avg_fragmentation_in_percent >5% og <=30%: ALTER INDEX REORGANISERER;
avg_fragmentation_in_percent >30%: ALTER INDEX GENOPBYGNING;

avg_fragmentation_in_percent: Indeksfragmenteringsprocent, hvis fragmenteringen er mindre end 10%~20%, er fragmentering sandsynligvis ikke et problem,Hvis indeksfragmenteringen er på 20%~40%, kan fragmentering være et problem, men indeksopløsning kan elimineres ved indeksreorganisering, og storskala fragmentering (når fragmenteringen er større end 40%) kan kræve indeksrekonstruktion.


Forespørg fragmenteringsinformationen for alle indekser i en given tabel



Tabelindeksering


Genopbyg indekset for alle tabeller i hele databasen



Ressourcer:Hyperlink-login er synlig.




Tidligere:Anmodningsformatet genkendes ikke, fordi URL'en uventet slutter med "/itsvse".
Næste:ORM-frameworket Dapper er nemt at bruge
Opslået på 22/09/2021 13.11.22 |
Godt,
 Udlejer| Opslået på 18/11/2025 14.35.31 |
Hvad er sp_updatestats?

Det er en systemlagret procedure, der er en del af SQL Server-systemet.
Den gennemgår alle brugertabeller i den aktuelle database og genberegner og opdaterer statistikkerne for kolonner og indekser, hvis data er ændret siden den sidste statistiske opdatering.
Kommando:
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com