SSIS-handleiding voor beginners: Archistructuur, Pakketten & Componenten

⚡ Slimme samenvatting

SQL Server Integration Services (SSIS) is een onderdeel van Microsoft SQL Server gebruikt voor het bouwen van oplossingen voor data-integratie en workflow, en het uitvoeren van extracETL (Extract, Transformation, and Loading) wordt gebruikt om gegevens tussen verschillende bronnen en bestemmingen te verplaatsen en te zuiveren.

  • 🔄 ETL-engine: SSIS extracts-gegevens uit bronnen zoals SQL Server, Excel, Oracle, en DB2 transformeert en laadt het vervolgens in een bestemming.
  • ???? Controlestroom: Control Flow is het brein van een pakket; het ordent containers en taken op basis van prioriteitsbeperkingen.
  • ❤️ Informatiestroom: Data Flow vormt de kern van SSIS en verplaatst rijen door bronnen, transformaties en bestemmingen in het geheugen.
  • ???? Pakketjes: Een pakket groepeert taken die in een bepaalde volgorde worden uitgevoerd en slaat deze op als een .dtsx-bestand in SQL Server of het bestandssysteem.
  • 🧩 Taken: Voorgedefinieerde taken zoals SQL uitvoeren, gegevensstroom, bestandssysteem, FTP en verzenden. Mail worden geconfigureerd door middel van slepen en neerzetten.
  • ⚡ Voordelen: SSIS automatiseert het laden van gegevens, reinigt en standaardiseert gegevens en biedt robuuste fout- en gebeurtenisafhandeling.

SQL Server Integration Services (SSIS): architectuur, pakketten, taken en ETL-workflow

Wat is SSIS?

SQL Server Integration Services (SSIS) is een onderdeel van de Microsoft SQL Server Databasesoftware die gebruikt kan worden om een ​​breed scala aan datamigratietaken uit te voeren. SSIS is snel en flexibel. data opslagplaats hulpmiddel gebruikt voor gegevensextracHet laden, verwerken en transformeren van gegevens, zoals het opschonen, aggregeren en samenvoegen ervan.

Het maakt het gemakkelijk om gegevens van de ene database naar de andere te verplaatsen. SSIS kan dit doen.tracgegevens uit een breed scala aan bronnen, zoals SQL Server-databases en Excel-bestanden, Oracle en DB2-databases, en meer.

SSIS bevat ook grafische tools en wizards voor het uitvoeren van workflowfuncties zoals het verzenden van e-mailberichten, FTP-bewerkingen en het configureren van gegevensbronnen en -bestemmingen.

Waarom gebruiken wij SSIS?

Hieronder volgen de belangrijkste redenen om de SSIS-tool te gebruiken:

  • Met SSIS kunt u gegevens uit verschillende gegevensbronnen samenvoegen.
  • Het automatiseert administratieve functies en het laden van gegevens.
  • Het vult data marts en data warehouses met gegevens.
  • Het helpt je bij het opschonen en standaardiseren van gegevens.
  • Het integreert business intelligence (BI) in een datatransformatieproces.
  • SSIS bevat een grafische gebruikersinterface (GUI) waarmee gebruikers gegevens eenvoudig kunnen transformeren, zonder dat ze grote programma's hoeven te schrijven.
  • Het kan miljoenen rijen van de ene gegevensbron naar de andere laden in slechts enkele minuten.
  • Het identificeert, registreert en verwerkt datawijzigingen.
  • Het coördineert het onderhoud, de verwerking en de analyse van gegevens.
  • SSIS maakt de behoefte aan ervaren programmeurs overbodig.
  • SSIS biedt robuuste fout- en gebeurtenisafhandeling.

Geschiedenis van SSIS

Vóór SSIS werd SQL Server Data Transformation Services (DTS) gebruikt, dat onderdeel was van SQL Server 7 en 2000. De onderstaande tabel traces hoe elke SQL Server-release de tool heeft beïnvloed:

Versie Detail
SQL Server 2005 De Microsoft Het team besloot DTS te vernieuwen. In plaats van DTS te updaten, besloten ze het product echter Integration Services (SSIS) te noemen.
SQL Server 2008 Er zijn veel prestatieverbeteringen aangebracht in SSIS. Er werden ook nieuwe bronnen geïntroduceerd.
SQL Server 2012 Het was de grootste release voor SSIS. Met deze versie werd het projectimplementatiemodel geïntroduceerd. Hiermee kunnen complete projecten, inclusief hun pakketten, in één keer op een server worden geïmplementeerd in plaats van afzonderlijke pakketten.
SQL Server 2014 In deze versie zijn er niet veel wijzigingen aangebracht voor SSIS. Wel zijn er nieuwe bronnen en transformaties toegevoegd, die via aparte downloads worden uitgevoerd. CodePlex of het SQL Server Feature Pack.
SQL Server 2016 De mogelijkheid tot incrementele pakketimplementatie werd toegevoegd, waardoor afzonderlijke pakketten naar een bestaand project konden worden gepusht. De SSISDB-catalogus kreeg ondersteuning voor Always On-beschikbaarheidsgroepen, aangepaste logniveaus en kolomnamen voor fouten. Aanvullende cloud- en big data-bronnen werden toegevoegd via de Azure Functiepakket.
SQL Server 2017 Scale Out werd geïntroduceerd, waarmee de uitvoering van pakketten wordt verdeeld over meerdere werkmachines die worden beheerd vanuit één master. SSIS kon voor het eerst ook op Linux draaien en pakketten konden worden geïmplementeerd op SSISDB. Azure SQL-database en uitgevoerd op de Azure-SSIS Integration Runtime in Azure Datafabriek.
SQL Server 2019 Een stille release gericht op het verwerken van bestanden in de cloud. De functies Flexible File Task en Flexible File Source/Destination maakten het eenvoudiger om met bestanden in de cloud te werken. Azure opslag, inclusief Avro-, ORC- en Parquet-formaten (deze vereisen een Java runtime).
SQL Server 2022 In principe geen nieuwe SSIS-functies. De engine is ongewijzigd overgenomen, terwijl... MicrosoftDe investeringen in data-integratie van zijn bedrijf verschoven naar Azure Data Factory en later, Microsoft Kleding stof.
SQL Server 2025 Uitgebracht op Microsoft Ignite in november 2025. De belangrijkste toevoeging is een ADO.NET-verbindingsbeheerder gebouwd op de moderne technologie. Microsoft.Data.SqlClient-provider, met TLS 1.3 en Microsoft Entra ID-authenticatie. Deze release verwijdert of verklaart ook een groot aantal onderdelen verouderd: de Attunity CDC-componenten, de Hadoop-taken, de SSIS Package Store, de verouderde Integration Services Service en de 32-bits uitvoeringsmodus.

Opvallende kenmerken van SSIS

Hieronder vindt u enkele belangrijke SSIS-functies:

  • Studio-omgevingen
  • Relevante data-integratiefuncties
  • Effectieve implementatiesnelheid
  • Nauwe integratie met de andere Microsoft SQL-familie
  • Datamining querytransformatie
  • Fuzzy Lookup en Groepping transformaties
  • Term Extractransformaties van tion en Term Lookup
  • Componenten voor snellere dataverbindingen, zoals verbindingen met SAP or Oracle

SSIS Architectuur

Het onderstaande diagram laat zien hoe de belangrijkste SSIS-componenten in elkaar passen, van Control Flow tot Parameters:

Architectuurdiagram van SSIS: Besturingsstroom, Gegevensstroom, Gebeurtenisafhandelaar, Pakketverkenner en Parameters

Hieronder volgen de componenten van de SSIS-architectuur:

  • Control Flow (slaat containers en taken op)
  • Gegevensstroom (bron, bestemming, transformaties)
  • Gebeurtenisafhandelaar (verzenden van berichten, e-mails)
  • Pakketverkenner (biedt een overzicht van alles in het pakket)
  • Parameters (gebruikersinteractie)

Laten we elk onderdeel in detail bekijken:

1. Controlestroom

Control Flow is het brein van een SSIS-pakket. Het helpt je de uitvoeringsvolgorde van alle componenten te bepalen. De componenten bevatten containers en taken, die worden beheerd door prioriteitsbeperkingen.

2. Prioriteitsbeperkingen

Prioriteitsbeperkingen zijn pakketcomponenten die ervoor zorgen dat taken in een vooraf gedefinieerde volgorde worden uitgevoerd. Ze definiëren ook de workflow van het gehele SSIS-pakket. Een prioriteitsbeperking regelt de uitvoering van twee gekoppelde taken door de doeltaak uit te voeren op basis van het resultaat van de eerdere taak: bedrijfsregels die zijn gedefinieerd met behulp van speciale expressies.

3. Taak

Een 'taak' is een individuele werkeenheid. Het is vergelijkbaar met een methode of functie in een programmeertaal. In SSIS gebruik je echter geen code. In plaats daarvan configureer je taken door ze te slepen en neer te zetten op het ontwerpoppervlak.

4. containers

Een container is een eenheid voor groepen.ping Het bundelt taken tot werkeenheden. Naast het bieden van visuele consistentie, stelt het je ook in staat om variabelen en gebeurtenisafhandelaars te declareren die binnen het bereik van die specifieke container moeten vallen.

De drie typen containers in SSIS zijn:

  • Sequentiecontainer
  • For Loop Container
  • Foreach Loop-container

Sequentiecontainer: Hiermee kunt u deeltaken per groep organiseren.ping en stelt je in staat transacties toe te passen of logboekregistratie aan de container toe te wijzen.

Voor luscontainer: Biedt dezelfde functionaliteit als de Sequence Container, met als verschil dat je de taken ook meerdere keren kunt uitvoeren. Dit is echter gebaseerd op een evaluatievoorwaarde, zoals bijvoorbeeld een lege string.ping van 1 naar 100.

Voor elke luscontainer: maakt ook toiletgebruik mogelijkpingHet verschil is dat in plaats van een voorwaardelijke expressie te gebruiken, ...ping Dit wordt gedaan over een verzameling objecten, zoals bestanden in een map.

5. Gegevensstroom

Het belangrijkste gebruik van de SSIS-tool is om te exporterentracDe gegevens worden in het geheugen van de server geladen, getransformeerd en naar een andere bestemming geschreven. Als Control Flow het brein is, dan is Data Flow het hart van SSIS.

6. SSIS-pakketten

Een ander essentieel onderdeel van SSIS is het concept van een pakket. Dit is een verzameling taken die in een bepaalde volgorde worden uitgevoerd. Hierbij helpen prioriteitsbeperkingen bij het bepalen van de volgorde waarin de taken worden uitgevoerd.

Een pakket kan bestanden opslaan op een SQL Server, in de msdb- of pakketcatalogusdatabase. Het kan worden opgeslagen als een .dtsx-bestand, een gestructureerd bestand dat sterk lijkt op de manier waarop .rdl-bestanden zich verhouden tot SQL Server. RapportageservicesDe onderstaande afbeelding toont een SSIS-pakket dat is opgeslagen als een .dtsx-bestand:

Het SSIS-pakket is opgeslagen als een .dtsx-bestand op SQL Server of het bestandssysteem.

7. parameters

Parameters gedragen zich grotendeels hetzelfde als variabelen, met een paar belangrijke uitzonderingen. Een parameter kan eenvoudig buiten het pakket worden ingesteld. Het kan worden aangewezen als een waarde die moet worden doorgegeven om het pakket te starten.

Typen SSIS-taken

In de SSIS-tool kunt u een taak toevoegen aan de besturingsstroom. Er zijn verschillende soorten taken die diverse werkzaamheden uitvoeren. Enkele belangrijke SSIS-taken worden hieronder vermeld:

Opdrachtnaam Beschrijving
Voer SQL-taak uit Zoals de naam al doet vermoeden, voert het een SQL-query uit op een relationele database.
Gegevensstroomtaak Deze taak kan gegevens uit een of meer bronnen lezen, de gegevens in het geheugen transformeren en ze naar een of meer bestemmingen schrijven.
Analyse Services-verwerkingstaak Gebruik deze taak om objecten van een tabellair model of een SSAS-kubus te verwerken.
Voer de pakkettaak uit Je kunt deze SSIS-taak gebruiken om andere pakketten vanuit hetzelfde project uit te voeren.
Voer procestaak uit Met behulp van deze taak kunt u opdrachtregelparameters specificeren.
Bestandssysteemtaak Het voert bewerkingen uit in het bestandssysteem, zoals het verplaatsen, hernoemen en verwijderen van bestanden en het aanmaken van mappen.
FTP-taak Hiermee kunt u basis FTP-functionaliteiten uitvoeren.
Scripttaak Dit is een lege taak. Je kunt .NET-code schrijven die elke gewenste taak uitvoert.
Verstuur Mail Taak Je kunt een e-mail sturen om gebruikers te laten weten dat je pakket klaar is of dat er een fout is opgetreden.
Bulkinvoegtaak Je kunt gegevens in een tabel laden met behulp van de bulk-insert-opdracht.
Scripttaak Voert een set uit VB.NET of C#-code binnen een Visual Studio milieu.
Webservicetaak Het voert een methode uit op een webservice.
WMI Event Watcher-taak Met deze taak kan het SSIS-pakket wachten op en reageren op bepaalde WMI-gebeurtenissen.
XML-taak Met deze taak kunt u XML-bestanden samenvoegen, splitsen of opnieuw formatteren.

Andere belangrijke ETL-tools

SSIS is een van de vele extract-transform-load-platforms. Andere belangrijke ETL-tools zijn onder meer:

  • SAP Gegevensdiensten
  • SAS-gegevensbeheer
  • Oracle Magazijnbouwer (OWB)
  • PowerCenter Informatica
  • IBM InfoSphere-informatieserver
  • Elixir-repertoire voor data-ETL
  • Sagent-gegevensstroom

Voordelen van het gebruik van SSIS

De SSIS-tool biedt de volgende voordelen:

  • Brede documentatie en ondersteuning
  • Gemak en snelheid van implementatie
  • Nauwe integratie met SQL Server en Visual Studio.
  • Gestandaardiseerde data-integratie
  • Biedt realtime, op berichten gebaseerde mogelijkheden
  • Ondersteuning voor een distributiemodel
  • Hiermee kunt u het netwerk als knelpunt voor het invoegen van gegevens door SSIS in SQL Server verwijderen.
  • Hiermee kunt u SQL Server als bestemming gebruiken in plaats van OLE DB om de gegevens sneller te laden.

Nadelen van SSIS

Enkele nadelen van het gebruik van de SSIS-tool zijn als volgt:

  • Het leidt soms tot problemen in niet-Windows omgevingen.
  • Onduidelijke visie en strategie.
  • SSIS biedt geen ondersteuning voor alternatieve methoden voor gegevensintegratie.
  • Problematische integratie met sommige andere producten.

Voorbeeld van SSIS-best practices

Door een paar goede praktijken toe te passen, blijven SSIS-pakketten snel en onderhoudbaar:

  • SSIS is een in-memory pipeline, dus het is belangrijk ervoor te zorgen dat alle transformaties in het geheugen plaatsvinden.
  • Probeer het aantal geregistreerde bewerkingen te minimaliseren.
  • Plan voor capaciteit door inzicht te krijgen in het gebruik van resources.
  • Optimaliseer de SQL-lookup-transformatie, de gegevensbron en de bestemming.
  • Plan het correct in en zorg voor een goede distributie.

Veelgestelde vragen

ETL staat voor Extract, Transformeren, Laden. SSIS extracts-gegevens uit bronnen zoals SQL Server, Excel of OracleHet transformeert de gegevens in het geheugen door ze op te schonen en samen te voegen, en laadt het resultaat vervolgens in een bestemmingsdatabase of -bestand.

SSIS is een on-premises ETL-tool die samen met SQL Server wordt geïnstalleerd en gegevens in het geheugen transformeert. Azure Data Factory is een cloudgebaseerde data-integratieservice die pipelines orkestreert en zich richt op ELT (Extended Language Desktop). Bestaande SSIS-pakketten kunnen er ook in worden uitgevoerd. Azure via de SSIS Integration Runtime.

Een .dtsx-bestand is het XML-bestand waarin een SSIS-pakket wordt opgeslagen. Het bevat de pakkettaken, de besturingsstroom, de gegevensstroom en de verbindingen, en kan worden geïmplementeerd op SQL Server, de msdb-database of het bestandssysteem.

SSIS-pakketten worden gebouwd in SQL Server Data Tools (SSDT), een uitbreiding van Visual StudioHet biedt een drag-and-drop-ontwerper voor controlestromen en gegevensstromen, waardoor de meeste taken geen handgeschreven code vereisen.

Ja. SSIS wordt nog steeds meegeleverd met moderne SQL Server-releases en blijft een veelgebruikte ETL-tool voor on-premises omgevingen. Teams kunnen bestaande pakketten ook in de cloud uitvoeren via de Azure- SSIS Integration Runtime, zodat de vaardigheid relevant blijft.

Alle drie zijn SQL Server-services. SSIS verzorgt data-integratie en ETL. SSRS SSAS genereert rapporten en levert OLAP-kubussen en -analyses. Ze worden vaak samen gebruikt in een Microsoft business intelligence stack.

AI en machine learning helpen ETL-pipelines om automatisch problemen met de datakwaliteit te detecteren en suggesties te doen voor de route van bron naar bestemming.pings, fuzzy matching en het markeren van afwijkingen. In SSIS voegen teams deze toe via scripttaken of door externe AI-services aan te roepen tijdens de gegevensstroom.

Ja. GitHub-copiloot Je kunt de VB.NET- of C#-code schrijven binnen een SSIS Script Task, plus SQL voor Execute SQL Tasks. RevBekijk elke suggestie voordat je deze in je pakket uitvoert.

Vat dit bericht samen met: