SQL Server Integration Services ( SSIS ) tillate brukere å overføre ulike typer data fra ulike og uforenlige databasesystemer spredt rundt et nettverk. SSIS forvalter data oversettelser , data tabellen populasjoner , og database tilkoblingsmuligheter for brukeren . SSIS håndterer data i tabeller og kolonner under dataoverføring , og dermed tillater brukeren å automatisere data manipulasjon og konvertering. Som med databaser , transaksjoner i en SSIS dataoverføring følge visse regler for å garantere dataintegritet . Disse kalles isolasjon nivåer. Les uengasjert
Den første og mest ubeskyttet isolasjon nivå er " Les uengasjert " nivå . På dette nivået , er ingen data som gjøres tilgjengelig i løpet av en transaksjon " låst ", eller beskyttet mot utsiden manipulasjon. En transaksjon på Les uengasjert nivå gir ingen garantier for integriteten til data som er involvert . Siden Les uengasjert transaksjonen ikke låse data den bruker , kan en annen transaksjon endre disse dataene , mens den første transaksjonen fremdeles krever det i sin opprinnelige form .
Les Forpliktet
< p > på "Les Engasjert " nivå , begrenser en transaksjon tilgang til dataene den tiden krever. Transaksjoner merket som Les Forpliktet bare lese informasjon etter "låse " de data bort fra andre transaksjoner. Denne " lock" hindrer en annen transaksjon fra å endre data . Dette sikrer at data ikke vil endre mens den opprinnelige transaksjonen utfører andre operations.Once den opprinnelige transaksjonen avsluttes med data , frigjør det da låsen , slik at andre transaksjoner for å arbeide med dataene .
Gjentakende lesing
" Gjentakende lesing " isolasjon nivå serverer en lignende funksjon til Les Committed nivå , med en ekstra funksjon . Dette nivået tvinger transaksjoner for å låse data for helheten av transaksjonen , og for å åpne låsen etter at transaksjonen er fullført . Ferdige transaksjoner er utpekt som " engasjert ", som betyr at transaksjonen ferdig riktig og begått sine endringer til databasen. Aborterte transaksjoner er referert til som " rullet tilbake ", som betyr at transaksjonen ikke ferdig og dermed kansellert alle endringer. Dette sikrer et høyere nivå av dataintegritet , fordi den opprinnelige transaksjonen må enten fullføre helt eller angre alle endringer før du slipper sin lås.
Serializeable
" serializeable " transaksjoner er den desidert strengeste isolasjonsnivåer , og den mest beskyttende. Låsene anskaffet for dette nivået force transaksjoner å oppføre seg på en seriell måte. Dette betyr at diskrete transaksjoner ikke kan foregå samtidig . Dette resulterer i et tap av programmatical multitasking å garantere databeskyttelse. På dette nivået kan to transaksjoner ikke endre de samme dataene fordi to transaksjoner ikke kan skje samtidig . Dette nivået sikrer at to transaksjoner ikke vil endre data som brukes av den andre, men på grunn av dette , kan du ikke ha nytte av flere transaksjoner skjer på samme tid .