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

SSIS Architecture
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.

SSIS-pakker

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

Oppsummer dette innlegget med: