..


Sponsede Lenker

Datakomprimering i SQL Server

Artikkel skrevet av Vincenzo Gaglio
Side 3 av 3

For å aktivere en komprimering type en eksisterende tabell må bruke ALTER TABLE kommandoen med REBUILD alternativet slik for eksempel






 ALTER TABLE Sales.SalesOrderDetail

 





 REBUILD MED (DATA_COMPRESSION = ROW)



Dette skriptet gjør at rad-nivå kompresjon på Sales.SalesOrderDetail bordet. Slik aktiverer du komprimering på et bord kan du også gå i Data Compression Wizard etter beregning av estimater. For hvis vi går fra side Velg Compression Type Neste vi tilgang til siden ved å klikke Velg en utenhet, der du kan velge om du vil opprette et skript, utføre operasjonen straks eller planlagt som en jobb

Å ha disse verktøyene tilgjengelig for å gjøre det første trinnet er å bestemme hvilke objekter å bruke disse funksjonene. SQL Server er meget fleksibel fra dette synspunkt, fordi det tillater deg å bruke en blanding av forskjellige teknikker på ulike databaseobjekter. For eksempel kan du søke rad-nivå komprimering til noen tabeller på side-nivå til andre tabeller, og gjelder ikke verken til resten av tabellene, komprimering, eller bare gjelder for enkelte indekser, og så videre. De to faktorene som skal veilede valget av hvilke objekter som skal gjelde komprimering er i hovedsak to: estimering av plassbesparende og lasting søknaden.

Angående det første punktet bør bemerkes at mengden av plass spart ved å komprimere et bord avhenger av dataene den inneholder. Faktisk er noen data komprimeres betraktelig, mens andre ikke.

(Artikkelen fortsetter nedenfor ...)

Tabellene som komprimering skal brukes bør ha følgende egenskaper:

  • Kolonner med numeriske datatyper eller fast lengde, hvor mange verdier ikke krever all bytes tildelte (f.eks heltall verdier med lave verdier)
  • Kolonner i mange rader inneholde NULL verdi
  • Betydelige mengder data eller gjentatt gjentatte prefikser

Tabellene som du ikke liker mange av komprimering er de med følgende funksjoner:

  • Kolonner med fast lengde datatyper der de fleste av verdiene krever at alle bytes avsatt for at bestemte typer data
  • Data ikke gjentas veldig
  • Gjentatte data med prefikser engangskostnader
  • FILESTREAM datatype

Med hensyn til anvendelsen lasten må sies at sidene er komprimert tabletter, selv når de blir lest inn i minnet. Dataene gjelder (og ikke hele siden) er dekomprimeres bare hvis de tjener for en slags drift, delta, som en del av filter svar på en spørring, eller de blir oppdatert av et program. Så det er en dekomprimeres til minne om den komprimerte siden.

Unzip data krever en last til CPU og lasten må vurderes nøye (selv om den andre siden komprimering reduserer antall input og output). CPU belastning av komprimering på sidenivå kan bli større enn raden nivå. For å gjøre de rette valgene om bruk eller ikke komprimering bør huske på alle disse aspektene.

I samme kategori ...
E-Learning
MS Access Course MS Access Course
Lær hvordan å opprette og administrere databaser enkelt og raskt. Rabatt -10% frem til 06/01/2012.
Kurs MySQL Kurs MySQL
Forvaltning av open-source database. -15% Rabatt frem til 06/01/2012.
Kurs Database og SQL Kurs Database og SQL
Opprette og administrere relasjonsdatabaser. -15% Rabatt frem til 06/01/2012.
Sponsede Lenker