Was gibt es Neues bei den SQL Server Integration Services (SSIS) 2016?

Die SQL Server Integration Services (SSIS) sind ein sehr beliebtes Werkzeug für die Datenintegration im SQL Server Umfeld. Durch den grafischen Editor und die leichte Einarbeitung hat SSIS seit der Einführung mit SQL Server 2005 sehr viele Anhänger gefunden. In den SQL Server bis zur Version 2012 wurden zahlreiche Erweiterungen und neue Features integriert – seither war es (relativ) ruhig im SSIS Kontext. Mit SQL Server 2016 kommen aber wieder einige Neuerungen auf uns SSIS-Entwickler zu.

In der SQLPass Summit 2015 Session von SSIS-Productmanager Jimmy Wong wurden diese Erweiterungen vorgestellt und ich möchte in diesem Blogpost einige davon kurz vorstellen:

  • Eines der Highlights für mich persönlich ist das “incremental package deployment” Szenario welches nun (endlich) mit SSIS 2016 umgesetzt wurde. Mit SQL Server 2012 wurde der Integration Services Katalogs eingeführt mit dem ein neues Konzept – die projektorientierte Entwicklung (und das projektorientierte Deployment) – eingeführt wurde. Mit diesem Konzept konnten die SSIS-Pakete eines SSIS Projektes nur als ganzes veröffentlicht werden. Gerade in zeitkritischen (Hotfix) Situationen entstanden durch diesen Ansatz Probleme da teilweise nicht korrekte Versionen von SSIS Paketen veröffentlicht wurden. Mit SSIS 2016 können nun einzelne SSIS Pakete veröffentlich werden. Dabei ist es egal ob dies als Teil eines bestehenden SSIS Projektes oder in ein neues SSIS Projekt geschieht. Die ersten Tests dieser Funktionalität sind sehr erfolgversprechend und werden sicherlich die Arbeit mit SSIS erheblich erleichtern.

image  image

  • Vorlagen – Ein Konzept welches schon lange von der Community gefordert wurde findet nun Einzug in SSIS2016. Als erster Schritt wurden die ControlFlow Templates umgesetzt. Leider verspricht das Konzept nicht ganz das was der Name vermuten lassen würde:
    • Die ControlFlow Templates ermöglichen es nur einzelne Teile eines ControlFlows als Template zu definieren. Kein gesamtes Paket als Template! Somit würde sich eher ein Name wie ControlFlowPart anbieten. 
    • Ein Template darf maximal ein Containerelement auf oberster Ebene haben (also entweder z.B. 1 SQL Task oder 1 SequenceContainer).
    • Templates sind primär projektgebunden (d.h. die Templatedateien werden als Teil eines SSIS Projektes abgespeichert). Es besteht zwar die Möglichkeit externe Templatedateien in Projekte einzubinden, jedoch hat dieser Ansatz in der aktuellen Umsetzung noch einige Fallstricke (Stichwort: Umbenennen der Templatedatei)
    • Der Templateansatz ist aktuell als Designerfeature umgesetzt. Eine Aktualisierung von Templateteilen geschieht nur, wenn das betroffene SSIS Paket im Designer geöffnet wird. Bei Continuous Integration Szenarien ist es aktuell nicht möglich eine automatisierte Aktualisierung aller betroffenen Pakete durchzuführen.
    • Connectionmanager in Templates erhalten bei der Ausführung in einem SSIS Paket einen anderen Namen (es wird (template) vorangestellt). Dieses Phänomen kann zu Problemen bei Skripttasks führen!
    • Fazit: Die erste Umsetzung der SSIS Templates ist leider nur eine Version 1 – es kann gehofft werden dass auf die zahlreichen Rückmeldungen aus der Community gehört wird und bis zur finalen Version von SQL Server 2016 noch einige Änderungen inkludiert werden.

image_thumb3 image_thumb13

  • Für Hochverfügbarkeitsszenarien wird nun auch ein (offizieller) Always-On Support  für die SSISDB von Microsoft angeboten. Ein Rechtsklick auf den SSIS Katalog startet den Konfigurationsassistenten.

image

  • Für ein einfacheres Debugging und die Fehlersuche in Datenflußkomponenten gibt es die Spalte ErrorColumnName. Ein gezielter Hinweis auf die wahre Fehlerherkunft!
  • Die Protokollierung der Ausführung von Paketen im SSIS Katalog war bis vor kurzem auf die vier Standardloglevels begrenzt. Mit SSIS 2016 können nun benutzerdefinierte Log-Levels erstellt werden. So steht z.B. einem Log-Level ErrorOnly nichts mehr im Wege!

image

  • Mit SSIS 2012 wurden eigene Datenbankrollen für die SSISDB eingeführt. Die Rolle ssis_admin ist – wie der Name schon sagt mit Administrationsrechten für die SSISDB-Objekte ausgestattet. Für einen “einfachen” Reportingbenutzer zum Lesen der Ausführungsdaten sind diese Rechte nicht notwendig. Die beiden neuen SSISDB Datenbankrollen (ssis_logreader und ssis_monitor) schlagen genau in diese Kerbe: mit der logreader Rolle ist ein Lesen der Ausführungsprotokolle und ein Ausführen der SSIS Reports möglich; die Rolle ssis_monitor wurde im Kontext der Always-On Unterstützung eingeführt.

image

  • Für die Performance der Ausführung wurde an zwei Schrauben im Kontext der Datenbuffer gedreht – mit der Option AutoAdjustBufferSize erlaubt man nun der SSIS Engine eine Optimierung der Datenbuffer. Ebenso wurde die maximale Größe für Datenbuffer auf 2GB-1 erhöht.

image

  • Im Bereich der Anbindung an Datenquellen und –senken gibt es einige Neuerung bei SSIS2016. Der Schwerpunkt liegt sich im Bereich Anbindung an Azure Services wie z.B. HDInsight, Hadoop aber auch auf OnPremise Datenquellen (wie z.B. eine native Excel 2013 Datenquelle). Weiters wird nun die Version 4 von OData unterstützt.

image

  • Für die SSIS Zukunft nach SQL Server 2016 RTM wurde eine neue SSIS Designerversion angekündigt (Codewort: “OneDesigner”). Mit diesem Werkzeug wird es nun endlich möglich sein unterschiedliche Versionen von SSIS-Paketen zu bearbeiten –> keine Parallelinstallationen von BIDS oder SSDT-BI für unterschiedliche SQL Server Versionen mehr.
    • Mittlerweile bemüht sich Microsoft die Verwirrungen bei der Werkzeugbenennung ein wenig einzudämmen. So war der SSIS Designer unter den Namen BIDS (BusinessIntelligence Development Studio) bzw. in neueren Versionen unter SSDT-BI (SQL Server Data Tools für BusinessIntelligence) bekannt. Um die Verwirrung noch größer zu machen gab es ein weiteres Tool namens SSDT (SQL Server Data Tools) welches nichts mit SSIS/BusinessIntelligence Entwicklung zu tun hat.
    • Seit Oktober 2015 gibt es nun ein einheitliches Namensschema und eine Zusammenführung dieser Tools – Unter dem Werkzeugnamen SSDT werden nun die SQL Server Data Tools sowie die BusinessIntelligence Projekte (SSAS, SSIS, SSRS) zum Download und zur Installation angeboten.

image

Viel Spaß beim Testen der neuen Funktionalität!

Weiterführende Links:

Advertisements

About wolfgang

Data Platform enthusiast
This entry was posted in Business Intelligence, ControlFlow Templates, SQL Server, SQL Server 2016, SSIS and tagged . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s