Hjem Databaser Hvad gør defragmentering for sql-systemer?

Hvad gør defragmentering for sql-systemer?

Anonim

Q:

Hvad gør defragmentering for SQL-systemer?

EN:

Kontinuerlig vedligeholdelse og overvågning af databaser er de vigtigste elementer, der skal overvejes for at køre et SQL-system glat. Når en database oprettes og udfyldes, placeres dataene oprindeligt i en sammenhængende fysisk placering (hvis der er tilstrækkelig sammenhængende fysisk plads til rådighed). Så i dette tilfælde vil den logiske rækkefølge og fysiske bestilling af data sandsynligvis være ens, og det øger ydelsen.

Når dataene ændres, slettes eller opdateres, opdateres relevante indekser også automatisk for at afspejle disse ændringer. Som et resultat bliver indekser fragmenteret, og informationen spredt over lagerpladsen. Det ændrer den fysiske rækkefølge af data (da de mister sammenhængende allokering) og hentningen bliver tidskrævende, hvilket resulterer i langsom databaseydelse.

Løsningen på dette problem er at udføre defragmentering med jævne mellemrum. Defragmentering genopbygger eller reorganiserer indekserne faktisk for at matche den logiske rækkefølge af data med den fysiske rækkefølge. Før alle defragmenteringsoperationer udføres, skal alle indekser analyseres korrekt. Analyseresultaterne bestemmer, om en omorganisering eller genopbygning er påkrævet.

De to hovedoperationer, der udføres ved defragmenteringsprocessen, er:

  • Omorganisering af indeks - Omorganisering af indeks udføres, når fragmenteringen er på et lavt niveau, og ydelsen ikke påvirkes alvorligt. Denne proces udfører faktisk den fysiske omlægning af sider på bladniveau for at matche den logiske rækkefølge. Det opretter ikke nye sider; det omlægger kun de eksisterende sider. Omorganisering kan udføres, mens systemet er online uden at blokere for normale databasefunktioner.
  • Ombygning af indeks - Genopbygning af indekset udføres, når fragmenteringen er på et dybere niveau, og ydeevnen er for langsom. I denne proces falder det originale indeks, og der opbygges et nyt nyt indeks. Så den fysiske og logiske rækkefølge sættes tilbage til de originale positioner, og ydelsen forbedrer manifolden. Genopbygning kan også oprette nye sider efter behov, og det kan udføres i offline eller online-tilstand.

Derfor bør defragmentering være en del af SQL Server-vedligeholdelsesprocessen og skal tages alvorligt. En ordentlig forespørgselsanalyseplan skal bygges og følges. Baseret på forespørgselsanalysens output skal genopbygning eller omorganisering af indekser udføres. Kort sagt er defragmentering vigtig for forbedring af ydeevne af SQL-systemer.

Hvad gør defragmentering for sql-systemer?