Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 23544|Atsakyti: 2

[Šaltinis] SQL serverio našumui optimizuotas indekso fragmentavimas

[Kopijuoti nuorodą]
Paskelbta 2020-12-27 22:32:27 | | | |
Indekso fragmentacijos apžvalga

Kas yra indekso fragmentacija ir kodėl turėčiau į ją sutelkti dėmesį:
Fragmentacija egzistuoja, kai loginė tvarka indekse (remiantis indekso rakto reikšme) nesutampa su indekso puslapių, indekso puslapių, esančių indekse, fizinės tvarkos.
Kai su pagrindiniais duomenimis įterpiama, atnaujinama arba naikinama operacija, duomenų bazės modulis automatiškai modifikuoja indeksą. Pavyzdžiui, įtraukus eilutes į lentelę, padalintos eilutės gali saugoti esamus puslapius rodyklėje, kad atsirastų vietos naujiems raktams įterpti. Laikui bėgant dėl šių modifikacijų rodyklėje esanti informacija gali būti išsklaidyta duomenų bazėje (kurioje yra fragmentų). Fragmentacija įvyksta, kai loginė tvarka (pagal rakto reikšmę) puslapiuose, kuriuose yra indeksas, neatitinka fizinės tvarkos duomenų faile.
Didelis fragmentuotų indeksų skaičius gali sulėtinti užklausos našumą, nes norint rasti duomenis, į kuriuos nurodo indeksas, reikia papildomų įvesties / išvesties. Dėl daugiau įvesties / išvesties programa gali lėtai reaguoti, ypač kai atliekamos nuskaitymo operacijos.
Tikrinti, ar nėra duomenų bazės indekso fragmentacijos

Komanda:



Yra du defragmentavimo būdai: pertvarkyti ir atkurti indeksus, indeksų atkūrimas reiškia senų indeksų ištrynimą ir naujų indeksų atkūrimą operacijoje, kuri atgauna pradinio indekso vietą standžiajame diske ir paskiria naują saugyklos vietą indekso struktūrai sukurti. Indeksų pertvarkymas reiškia naujos saugyklos vietos nepaskirstymą, indekso struktūros lapų mazgų pertvarkymą pagal pradinę erdvę, kad duomenų puslapių loginė ir fizinė tvarka būtų nuosekli, ir perteklinės vietos indekse atlaisvinimą.

Naudokite funkciją sys.dm_db_index_physical_stats, kad nustatytumėte fragmentacijos laipsnį, lauką avg_fragmentation_in_percent grąžintų loginių fragmentų procentą, apskritai "Microsoft" rekomenduoja 30% slenkstį:

avg_fragmentation_in_percent >5% ir <=30%: KEISTI INDEKSĄ PERTVARKYTI;
avg_fragmentation_in_percent >30%: PAKEISTI INDEKSO ATSTATYMĄ;

avg_fragmentation_in_percent: Indekso fragmentacijos procentas, jei fragmentacija yra mažesnė nei 10% ~ 20%, fragmentacija greičiausiai nebus problema,Jei indekso fragmentacija yra 20% ~ 40%, fragmentacija gali būti problema, tačiau indekso skiriamąją gebą galima pašalinti reorganizuojant indeksą, o dėl didelio masto fragmentacijos (kai fragmentacija yra didesnė nei 40 %) gali tekti rekonstruoti indeksą.


Visų nurodytos lentelės indeksų fragmentacijos informacijos užklausa



Lentelės perindeksavimas


Iš naujo sukurkite visų visos duomenų bazės lentelių indeksą



Išteklių:Hipersaito prisijungimas matomas.




Ankstesnis:Užklausos formatas neatpažįstamas, nes URL netikėtai baigiasi "/itsvse".
Kitą:ORM sistemą Dapper paprasta naudoti
Paskelbta 2021-09-22 13:11:22 |
Geras dalykas,
 Savininkas| Paskelbta 2025-11-18 14:35:31 |
Kas yra sp_updatestats?

Tai sistemoje saugoma procedūra, kuri yra SQL serverio sistemos dalis.
Jis peržiūri visas dabartinės duomenų bazės vartotojų lenteles ir perskaičiuoja bei atnaujina stulpelių ir indeksų, kurių duomenys pasikeitė nuo paskutinio statistinio atnaujinimo, statistiką.
Komanda:
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com