SSIS-veiledning for nybegynnere: Hva er, Architecture, Pakker
Hva er SSIS?
SQL Server Integration Service (SSIS) er en komponent av Microsoft SQL Server databaseprogramvare som kan brukes til å utføre et bredt spekter av datamigreringsoppgaver. SSIS er et raskt og fleksibelt datavarehusverktøy som brukes til datautvinning, lasting og transformasjon som rengjøring, aggregering, sammenslåing av data, etc.
Det gjør det enkelt å flytte data fra en database til en annen. SSIS kan trekke ut data fra en lang rekke kilder som SQL Server-databaser, Excel-filer, Oracle og DB2-databaser osv.
SSIS inkluderer også grafiske verktøy og veivisere for å utføre arbeidsflytfunksjoner som å sende e-postmeldinger, FTP-operasjoner, datakilder og destinasjoner.
Hvorfor bruker vi SSIS?
Her er hovedgrunnene til å bruke SSIS-verktøyet:
- SSIS-verktøyet hjelper deg å slå sammen data fra ulike datalagre
- Automatiserer administrative funksjoner og datainnlasting
- Fyller ut datamarkeder og datavarehus
- Hjelper deg med å rense og standardisere data
- Bygge BI inn i en datatransformasjonsprosess
- Automatisering av administrative funksjoner og datainnlasting
- SIS inneholder en GUI som hjelper brukere å transformere data enkelt i stedet for å skrive store programmer
- Den kan laste inn millioner av rader fra én datakilde til en annen på svært få minutter
- Identifisere, fange opp og behandle dataendringer
- Koordinering av vedlikehold, behandling eller analyse av data
- SSIS eliminerer behovet for hardcore programmerere
- SSIS tilbyr robust feil- og hendelseshåndtering
Historien om SSIS
Før SSIS ble SQL Server, Data Transformation Services (DTS) brukt, som var en del av SQL Server 7 og 2000
Versjon | Detalj |
---|---|
SQL Server 2005 | Ocuco Microsoft teamet bestemte seg for å fornye DTS. Men i stedet for å oppdatere DTS, bestemte de seg for å navngi produktet Integration Services (SSIS). |
2008 SQL-serverversjon | Mange ytelsesforbedringer ble gjort til SSIS. Nye kilder ble også introdusert. |
SQL Server 2012 | Det var den største utgivelsen for SSIS. Med denne versjonen ble konseptet med prosjektimplementeringsmodellen introdusert. Det tillater hele prosjekter, og pakkene deres distribueres til en server, i stedet for spesifikke pakker. |
SQL Server 2014 | I denne versjonen er det ikke gjort mange endringer for SSIS. Men nye kilder eller transformasjoner ble lagt til som ble gjort ved separate nedlastinger gjennom CodePlex eller SQL Server Feature Pack. |
I SQL Server 2016 | Versjonen lar deg distribuere hele prosjekter, i stedet for individuelle pakker. Det er flere kilder, spesielt sky, og store datakilder og få endringer ble gjort i katalogen. |
SSIS fremtredende funksjoner
Her er noen viktige SSIS grunnleggende funksjoner:
- Studiomiljøer
- Relevante dataintegreringsfunksjoner
- Effektiv implementeringshastighet
- Tett integrasjon med andre Microsoft SQL familie
- Data Mining Query Transformasjon
- Uklare oppslag og grupperingstransformasjoner
- Term Extraksjon og Term Lookup Transformasjoner
- Høyhastighets datatilkoblingskomponenter som tilkobling til SAP or Oracle
SSIS Architecture
Følgende er komponenter i SSIS-arkitektur:
- Kontrollflyt (lagrer containere og oppgaver)
- Dataflyt (kilde, destinasjon, transformasjoner)
- Hendelsesbehandler (sending av meldinger, e-poster)
- Pakkeutforsker (tilbyr én enkelt visning for alle i pakken)
- Parametere (brukerinteraksjon)
La oss forstå hver komponent i detalj:
1. Kontroller flyt
Kontrollflyt er hjernen til SSIS-pakken. Det hjelper deg med å ordne rekkefølgen for utførelse for alle komponentene. Komponentene inneholder beholdere og oppgaver som administreres av prioritetsbegrensninger.
2. Forrangsbegrensninger
Precedence constrain er pakkekomponenter som leder oppgaver til å utføre i en forhåndsdefinert rekkefølge. Den definerer også arbeidsflyten til hele SSIS-pakken. Den kontrollerer utførelsen av de to koblede oppgavene ved å utføre destinasjonsoppgavene basert på resultatet av den tidligere oppgaven - forretningsregler som er definert ved hjelp av spesielle uttrykk.
3. Oppgave
En "Task" er en individuell arbeidsenhet. Det er det samme som en metode/funksjon som brukes i et programmeringsspråk. I SSIS bruker du imidlertid ikke kodemetoder. I stedet vil du bruke dra og slipp-teknikk for å designe overflater og konfigurere dem.
4. Beholdere
Containeren er enheter for å gruppere oppgaver sammen til arbeidsenheter. Bortsett fra å tilby visuell konsistens, lar den deg også deklarere variabler og hendelsesbehandlere som bør være innenfor rammen av den spesifikke beholderen.
Fire typer containere i SSIS er:
- En sekvensbeholder
- A For Loop Container
- Foreach Loop Container
Sekvensbeholder: lar deg organisere underordnede oppgaver ved å gruppere dem, og lar deg bruke transaksjoner eller tilordne logging til beholderen.
For løkkebeholder:Gir samme funksjonalitet som sekvensbeholderen, bortsett fra at den også lar deg kjøre oppgavene flere ganger. Den er imidlertid basert på en evalueringsbetingelse, som en looping fra 1 til 100.
For hver sløyfebeholder: Den tillater også looping. Men forskjellen at i stedet for å bruke et betingelsesuttrykk, sløyfe gjøres over et sett med objekter, liker filer i en mappe.
5. Dataflyt
Hovedbruken av SSIS-verktøyet er å trekke ut data inn i serverens minne, transformere det og skrive det til en annen destinasjon. Hvis Control Flow er hjernen, er Data Flow hjertet av SSIS
6. SSIS-pakker
En annen kjernekomponent i SSIS er ideen om en pakke. Det er en samling av oppgaver som utføres på en ryddig måte. Her hjelper presidentbegrensninger med å administrere rekkefølgen oppgaven skal utføres i.
En pakke kan hjelpe deg med å lagre filer på en SQL Server, i msdb- eller pakkekatalogdatabasen. Den kan lagres som en .dtsx-fil, som er en strukturert fil som ligner veldig på .rdl-filer som er til Reporting Services.
7. parametere
Parametere oppfører seg omtrent som en variabel, men med noen få hovedunntak. Den kan enkelt settes utenfor pakken. Det kan angis som verdier som må sendes inn for at pakken skal starte.
SSIS-oppgavetyper
I SSIS-verktøyet kan du legge til en oppgave for å kontrollere flyten. Det finnes ulike typer oppgaver som utfører ulike typer arbeid.
Noen viktige SSIS-oppgaver er nevnt nedenfor:
Oppgavenavn | Descriptioner |
---|---|
Utfør SQL-oppgave | Som navnet antyder, vil den kjøre en SQL-setning mot en relasjonsdatabase. |
Dataflytoppgave | Denne oppgaven kan lese data fra én eller flere kilder. Transformer dataene når de er i minnet og skriv dem ut mot en eller flere destinasjoner. |
Analysetjenester Behandlingsoppgave | Bruk denne oppgaven til å behandle objekter av en tabellmodell eller som en SSAS-kube. |
Utfør pakkeoppgave | Bruk kan bruke denne SSIS-oppgaven til å kjøre andre pakker fra samme prosjekt. |
Utfør prosessoppgave | Ved hjelp av denne oppgaven kan du spesifisere kommandolinjeparametere. |
Filsystemoppgave | Den utfører manipulasjoner i filsystemet. Som å flytte, gi nytt navn, slette filer og lage kataloger. |
FTP-oppgaver | Den lar deg utføre grunnleggende FTP-funksjoner. |
Skriptoppgave | Dette er en tom oppgave. Du kan skrive NET-kode som utfører enhver oppgave; du ønsker å prestere. |
sent Mail Oppgave | Du kan sende en e-post for å varsle brukere om at pakken din er ferdig, eller at det oppstår en feil. |
Masseinnsettingsoppgave | Bruk kan laster data inn i en tabell ved å bruke kommandoen bulk insert. |
Skriptoppgave | Kjører et sett med VB.NET eller C#-koding i et Visual Studio-miljø. |
Netttjenesteoppgave | Den utfører en metode på en webtjeneste. |
WMI Event Watcher-oppgave | Denne oppgaven lar SSIS-pakken vente på og svare på visse WMI-hendelser. |
XML-oppgave | Denne oppgaven hjelper deg med å slå sammen, dele eller formatere en hvilken som helst XML-fil. |
Andre viktige ETL-verktøy
- SAP Datatjenester
- SAS Data Management
- Oracle Lagerbygger (OWB)
- PowerCenter Informatica
- IBM Infosphere informasjonsserver
- Elixir Repertoar for Data ETL
- Sargent dataflyt
Fordeler og ulemper ved å bruke SSIS
SSIS-verktøyet tilbyr følgende fordeler:
- Bred dokumentasjon og støtte
- Enkel og hurtig implementering
- Tett integrasjon med SQL Server og visuelt studio
- Standardisert dataintegrasjon
- Tilbyr sanntids, meldingsbaserte muligheter
- Støtte for distribusjonsmodell
- Hjelper deg å fjerne nettverk som en flaskehals for innsetting av data av SSIS i SQL
- SISS lar deg bruke SQL Server-destinasjonen i stedet for OLE DB for å laste dataene raskere
Ulemper med SSIS
Noen ulemper ved å bruke SSIS-verktøy er som følger:
- Noen ganger skaper problemer i ikke-Windows-miljøer
- Uklar visjon og strategi
- SSIS mangler støtte for alternative dataintegreringsstiler
- Problematisk integrasjon med andre produkter
Eksempel på SSIS beste praksis
- SSIS er en pipeline i minnet. Derfor er det viktig å sørge for at alle transformasjoner skjer i minnet
- Prøv å minimere loggede operasjoner
- Planlegg for kapasitet ved å forstå ressursutnyttelse
- Optimaliser SQL-oppslagstransformasjonen, datakilden og destinasjonen
- Planlegg og distribuer det riktig
Sammendrag
- Den fullstendige formen for SSIS er SQL Server Integration Services
- SSIS-verktøyet hjelper deg å slå sammen data fra ulike datalagre
- Viktige versjoner av SQL Server Integration Service er 2005, 2008, 2012, 2014 og 216
- Studiomiljøer, relevante dataintegreringsfunksjoner og effektiv implementeringshastighet er noen viktige funksjoner i SSIS
- Kontrollflyt, dataflyt, hendelsesbehandler, pakkeutforsker og parametere er viktige SSIS-arkitekturkomponenter
- Utfør SQL-oppgave, Dataflyt-oppgave, Analysis Services Processing Task, Utfør pakkeoppgave, Utfør prosessoppgave, filsystemoppgave, FTP-oppgaver, Send Mail Oppgave, Web Service Task er noen viktige
- Bred dokumentasjon og støtte
- Den største ulempen med SSIS er at den mangler støtte for alternative dataintegreringsstiler
- SAP Datatjenester, SAS Data Management, Oracle Varehusbygger (OWB), PowerCenter Informatica, IBM Infosphere informasjonsserver
- SSIS er en pipeline i minnet. Derfor er det viktig å sørge for at alle transformasjoner skjer i minnet