Q:
Hva gjør defragmentering for SQL-systemer?
EN:Kontinuerlig vedlikehold og overvåking av databaser er de viktigste elementene som må vurderes for å kjøre et SQL-system jevnt. Når en database blir opprettet og befolket, plasseres dataene i utgangspunktet på et sammenhengende fysisk sted (hvis tilstrekkelig fysisk plass er tilgjengelig). I dette tilfellet vil den logiske bestillingen og fysiske bestillingen av data sannsynligvis være like, og det øker ytelsen.
Når dataene endres, slettes eller oppdateres, oppdateres også relevante indekser automatisk for å gjenspeile disse endringene. Som et resultat blir indekser fragmentert og informasjonen spredt over lagringsplassen. Det endrer den fysiske bestillingen av data (ettersom den mister sammenhengende tildeling) og hentingen blir tidkrevende, noe som resulterer i treg databaseytelse.
Løsningen på dette problemet er å utføre defragmentering med jevne mellomrom. Defragmentering gjenoppbygger eller omorganiserer indeksene faktisk for å matche den logiske rekkefølgen av data med den fysiske bestillingen. Før du utfører en defragmenteringsoperasjon, bør alle indeksene analyseres riktig. Analyseresultatene avgjør om det kreves en omorganisering eller ombygging.
De to hovedoperasjonene som utføres av defragmenteringsprosessen er:
- Omorganisering av indeks - Omorganisering av indeks utføres når fragmenteringen er på et lavt nivå og ytelsen ikke påvirkes alvorlig. Denne prosessen gjør faktisk den fysiske omleggingen av sider på bladnivå for å matche den logiske rekkefølgen. Det oppretter ingen nye sider; den omordner bare eksisterende sider. Omorganisering kan utføres mens systemet er online uten å blokkere normal databaseoperasjon.
- Ombygging av indeks - Ombyggingsprosessen til indeksen utføres når fragmenteringen er på et dypere nivå og ytelsen er for treg. I denne prosessen blir den opprinnelige indeksen droppet og en ny ny indeks bygget. Så den fysiske og logiske bestillingen settes tilbake til de opprinnelige posisjonene, og ytelsen forbedrer mangfoldet. Ombygging kan også opprette nye sider etter behov, og de kan utføres i offline eller online modus.
Derfor bør defragmentering være en del av vedlikeholdsprosessen for SQL Server og må tas på alvor. En ordentlig spørringsanalyseplan må bygges og følges. Basert på spørringsanalyseproduksjonen må ombygging eller omorganisering av indekser gjøres. Kort sagt, er defragmentering viktig for ytelsesforbedring av SQL-systemer.