Microsoft SQL Server Integration Services

Erstellen von Datenintegrations- und Datentransformationslösungen auf Unternehmensebene
 
Bernd Jungbluth (Autor)
 
Microsoft Press Deutschland
1. Auflage | erschienen am 23. Februar 2011 | 776 Seiten
 
E-Book | ePUB ohne DRM | Systemvoraussetzungen
E-Book | PDF ohne DRM | Systemvoraussetzungen
978-3-86645-356-2 (ISBN)
 
Microsoft SQL Server Integration Services (SSIS) wird im Bereich Business Intelligence zum Konsolidieren und Integrieren von Daten aus den unterschiedlichsten Datenquellen verwendet, um so eine konsistente Datengrundlage für Analysen und Auswertungen im Unternehmen zu liefern. Dieses Buch stellt Ihnen die Komponenten und Funktionen von SSIS vor. Alle Ablaufsteuerungselemente und Datenflusskomponenten werden detailliert beschrieben. Sie lernen die Einsatzmöglichkeiten und Konfiguration der Komponenten kennen, deren Eigenschaften und auch deren Eigenheiten - ergänzt um Praxistipps, Hinweise und Beispiele. Zusätzlich erfahren Sie, wie Sie Verbindungs-Manager, Variablen und Ausdrücke in Paketen verwenden und was dabei zu beachten ist. Ein Praxisbeispiel komplettiert die Vorstellung, es zeigt die Entwicklung eines SSIS-Projekts sowie dessen Bereitstellung und Betrieb. Hier lernen Sie auch Prüfpunkte, Paketprotokollierung und Paketkonfiguration kennen. Die Beschreibungen und Beispiele basieren auf den Versionen SSIS 2008 und SSIS 2008 R2. Mit diesem Buch steht Ihnen ein umfassendes Nachschlagewerk mit hilfreichen Informationen zur Verfügung, das Sie bei Entwicklung, Bereitstellung und Betrieb Ihrer SSIS-Projekte effizient unterstützt.
Deutsch
11,47 MB
978-3-86645-356-2 (9783866453562)
3866453566 (3866453566)
weitere Ausgaben werden ermittelt

Das Paket


Für die Entwicklung eines Pakets steht Ihnen mit dem SSIS-Designer eine Entwicklungsumgebung innerhalb von Business Intelligence Development Studio zur Verfügung. Dort wird das Paket als DTSX-Datei erstellt und auch als solches im Projektordner gespeichert. Nach Abschluss der Entwicklung wird diese DTSX-Datei bereitgestellt – oder um es etwas altmodischer auszudrücken: auf dem Zielsystem installiert. Dabei kann die DTSX-Datei im Dateisystem des Zielsystems oder binär in der MSDB-Datenbank einer SQL Server-Instanz gespeichert werden. In beiden Fällen handelt es sich hierbei um eine XML-Datei. Die Beschreibung des Inhalts wie auch die der Struktur und Hierarchie eines Pakets ist also nichts Weiteres als XML.

Die Struktur eines Pakets


Ein Paket ist nicht nur die ausführbare Datei in SSIS, es besteht aus ausführbaren Dateien – den bereits genannten Ablaufsteuerungselementen, mitsamt den Containern und den Ereignishandlern. Diese Struktur ergibt sich aus der Definition einer ausführbaren Datei: Diese beinhaltet ein oder mehrere Ablaufsteuerungselemente und kann eigene Paketvariablen enthalten sowie bei der Paketausführung Ereignisse auslösen, für die wiederum Ereignishandler zur Verfügung stehen.

In SSIS wird eine ausführbare Datei in der Struktur eines Containers verwaltet. An dieser Stelle sollte man den Begriff Container nicht mit den drei Containern Sequenzcontainer, ForEach-Schleifencontainer und For-Schleifencontainer verwechseln, die in einer Ablaufsteuerung wie Ablaufsteuerungselemente verwendet werden – so wie der Sequenzcontainer namens »Datenimport« in Abbildung 1.2. Obwohl diese drei auch gerne als Container bezeichnet werden, sind sie jedoch nur weitere ausführbare Dateien, welche ebenfalls die Struktur eines Containers verwenden.

Die Definition eines Containers entspricht der einer ausführbaren Datei: Container enthalten ein oder mehrere Ablaufsteuerungselemente und in Containern können eigene Paketvariablen definiert sowie Ereignishandler aktiviert werden.

Diese Definition trifft auch auf das Paket selbst zu. Ein Paket enthält in seiner Ablaufsteuerung ein oder mehrere Ablaufsteuerungselemente und kann Paketvariablen sowie Ereignishandler verwenden. Dabei ist die Ablaufsteuerung der Start- und Endpunkt des Pakets. Mit dem ersten darin enthaltenen Ablaufsteuerungselement beginnt der Ablauf und mit dem letzten endet er. Um einen solchen sequenziellen Ablauf zu erhalten, werden die einzelnen Ablaufsteuerungselemente über so genannte Rangfolgeneinschränkungen miteinander verbunden. Die Ablaufsteuerung stellt also den Ausgangspunkt eines Pakets dar – und ist somit gleich dem Paket. Von daher ist das Paket respektive dessen Ablaufsteuerung auch der erste Container. Dieser Container beinhaltet mehrere weitere Container: die Ablaufsteuerungselemente mitsamt dem Sequenzcontainer und den Schleifencontainern sowie die Ereignishandler.

Sequenz- und Schleifencontainer werden wie Ablaufsteuerungselemente in einer Ablaufsteuerung verwendet. Dabei können diese wiederum ein oder mehrere Ablaufsteuerungselemente wie auch eigene Paketvariablen und Ereignishandler enthalten. Sie verwenden – wie bereits erwähnt – ebenfalls die Struktur eines Containers. Während die beiden Schleifencontainer ForEach-Schleifencontainer und For-Schleifencontainer die darin enthaltenen Ablaufsteuerungselemente so oft ausführen, bis die Bedingung der Schleife erfüllt ist, dient der Sequenzcontainer lediglich zur Zusammenfassung mehrerer Ablaufsteuerungselemente zu einer Einheit, welche nur ein einziges Mal ausgeführt wird. Auf diese Art ist es möglich, mehrere kleinere Teilaufgaben – also einzelne Ablaufsteuerungselemente verbunden mit Rangfolgeneinschränkungen – zu einer Gesamtaufgabe zusammenzufassen und diese als Einheit in der Ablaufsteuerung einzubinden. Die Sequenz- und Schleifencontainer werden in Kapitel 8 detaillierter beschrieben.

In Abbildung 1.2 sehen Sie den „Sequenzcontainer“ »Datenimport«, der die Teilaufgaben »Daten in Zieltabelle löschen« und »Daten importieren« als Gesamtaufgabe in der Ablaufsteuerung einbindet. Dabei werden mit dem Ablaufsteuerungselement »Daten in Zieltabelle löschen« zunächst die Daten der Zieltabelle gelöscht, die mit dem zweiten Ablaufsteuerungselement »Daten importieren« mit aktuellen Daten neu gefüllt wird.

Abbildung 1.2 Die Ablaufsteuerung eines Pakets

Auch bei Ablaufsteuerungselementen handelt es sich um ausführbare Dateien, obwohl sie nicht ganz der Definition eines Containers entsprechen. Denn diese können nicht mehrere, sondern nur ein Ablaufsteuerungselement enthalten – nämlich sich selbst. Trotzdem verwenden die Ablaufsteuerungselemente ebenfalls die Struktur eines Containers, wenn auch die eines besonderen: die des TaskHost-Containers.

Der TaskHost-Container ist von der Struktur her identisch mit der des Containers, aber auf die Ausführung von nur einem – dem eigenen – Ablaufsteuerungselement begrenzt. Die restliche Definition eines Containers wird auch hier erfüllt: Ein Ablaufsteuerungselement kann sowohl eigene Paketvariablen wie auch Ereignishandler enthalten.

Für die Behandlung der Ereignisse, welche durch eine ausführbare Datei ausgelöst werden können, stellt der Container die Aktivierung von Ereignishandlern zur Verfügung. Auch diese Ereignishandler sind nichts Weiteres als Container. Die Ereignisbehandlung – beispielsweise für die Fehlerbehandlung im Ereignis OnError – wird ebenfalls in einer Ablaufsteuerung mit einem oder mehreren Ablaufsteuerungselementen realisiert. Auch die Verwendung eigener Paketvariablen wie auch die Aktivierung von Ereignishandlern innerhalb der Ereignisbehandlung ist möglich. Durch diese Verschachtelung der einzelnen Container ineinander ergibt sich eine Pakethierarchie.

Die Pakethierarchie


Die Hierarchie beginnt mit dem Paket respektive dessen Ablaufsteuerung. Dies ist die oberste Ebene, in der Ablaufsteuerungselemente enthalten sind. Die Ablaufsteuerungselemente stellen bereits die zweite Ebene dar. Ebenfalls auf der zweiten Ebene eines Pakets befinden sich die Ereignishandler der Ablaufsteuerung des Pakets. Die Ereignishandler der in der Ablaufsteuerung des Pakets befindlichen Ablaufsteuerungselemente bilden bereits die dritte Ebene. Innerhalb eines Ereignishandlers wiederum werden Ablaufsteuerungselemente für die Ereignisbehandlung eingesetzt. Diese Ablaufsteuerungselemente sind die vierte Ebene des Pakets. Die jeweiligen Ablaufsteuerungselemente eines Ereignishandlers haben wiederum eigene Ereignishandler wie auch der jeweilige Ereignishandler selbst. Diese Ereignishandler können Sie nun ebenfalls aktivieren und somit zur nächsten Ebene vordringen und so weiter und so fort.

Das Paket ist also ein Container, der weitere Container beinhaltet – die Ablaufsteuerungselemente mit Sequenz- und Schleifencontainern wie auch die Container der Ereignishandler. Jeder dieser Container kann wiederum weitere Container – Ablaufsteuerungselemente und Ereignishandler – enthalten, die die nächsten Ebenen wieder in eigenen Containern beinhalten. Um bei dieser Verschachtelung noch einen Überblick zu behalten, bietet der SSIS-Designer eine Übersicht im Paket-Explorer an. Dort sehen Sie in einer Baumstruktur die Verschachtelung dieser einzelnen Container. Abbildung 1.3 zeigt eine solche Verschachtelung auf der Basis einer Ausgabe des Paket-Explorers.

Eng verbunden mit der Hierarchie eines Pakets ist auch der Gültigkeitsbereich der Paketvariablen. Ein Container vererbt seine Eigenschaften und Paketvariablen an die darin enthaltenen Container. In jedem Container können eigene Paketvariablen definiert werden. Diese sind jedoch nur in dem Container gültig, in dem sie definiert wurden, sowie in allen weiteren Containern, die dieser enthält. Da das Paket der erste Container ist, sind dort definierte Paketvariablen in allen weiteren Containern und somit im gesamten Paket verfügbar. Eine Paketvariable, die beispielsweise im Ereignishandler OnError des Pakets definiert wird, ist nur dort und in den darin enthaltenen Containern gültig. Diese Paketvariable ist weder in der Ablaufsteuerung des Pakets oder in den dort enthaltenen Ablaufsteuerungselementen noch in den anderen Ereignishandlern des Pakets bekannt. Mehr zu Paketvariablen und deren Gültigkeitsbereichen erfahren Sie in Kapitel 4.

Die Pakethierarchie hat auch Auswirkungen auf die Ausführung der Ereignishandler. Diese stehen nicht nur in jeder Ebene zur Verfügung, sondern können beim Eintreten des Ereignisses auch über die einzelnen Ebenen hinweg ausgeführt werden. Dabei schließen sich die Ereignishandler auf den verschiedenen Ebenen nicht aus. Vielmehr werden die Ereignishandler nacheinander ausgeführt – von der untersten zur obersten Ebene. Somit kann beispielsweise auf Paketebene im Ereignis OnTaskFailed eine globale Fehlerbehandlung und an einem Ablaufsteuerungselement für dasselbe Ereignis eine spezielle Fehlerbehandlung erstellt werden. Löst nun das Ablaufsteuerungselement einen Fehler aus, wird zunächst der am Ablaufsteuerungselement aktivierte Ereignishandler ausgeführt und anschließend der...

Dateiformat: EPUB
Kopierschutz: ohne DRM (Digital Rights Management)

Systemvoraussetzungen:

Computer (Windows; MacOS X; Linux): Verwenden Sie eine Lese-Software, die das Dateiformat EPUB verarbeiten kann: z.B. Adobe Digital Editions oder FBReader - beide kostenlos (siehe E-Book Hilfe).

Tablet/Smartphone (Android; iOS): Installieren Sie bereits vor dem Download die kostenlose App Adobe Digital Editions (siehe E-Book Hilfe).

E-Book-Reader: Bookeen, Kobo, Pocketbook, Sony, Tolino u.v.a.m. (nicht Kindle)

Das Dateiformat EPUB ist sehr gut für Romane und Sachbücher geeignet - also für "glatten" Text ohne komplexes Layout. Bei E-Readern oder Smartphones passt sich der Zeilen- und Seitenumbruch automatisch den kleinen Displays an. Ein Kopierschutz bzw. Digital Rights Management wird bei diesem E-Book nicht eingesetzt.

Weitere Informationen finden Sie in unserer E-Book Hilfe.


Dateiformat: PDF
Kopierschutz: ohne DRM (Digital Rights Management)

Systemvoraussetzungen:

Computer (Windows; MacOS X; Linux): Verwenden Sie zum Lesen die kostenlose Software Adobe Reader, Adobe Digital Editions oder einen anderen PDF-Viewer Ihrer Wahl (siehe E-Book Hilfe).

Tablet/Smartphone (Android; iOS): Installieren Sie die kostenlose App Adobe Digital Editions oder eine andere Lese-App für E-Books (siehe E-Book Hilfe).

E-Book-Reader: Bookeen, Kobo, Pocketbook, Sony, Tolino u.v.a.m. (nur bedingt: Kindle)

Das Dateiformat PDF zeigt auf jeder Hardware eine Buchseite stets identisch an. Daher ist eine PDF auch für ein komplexes Layout geeignet, wie es bei Lehr- und Fachbüchern verwendet wird (Bilder, Tabellen, Spalten, Fußnoten). Bei kleinen Displays von E-Readern oder Smartphones sind PDF leider eher nervig, weil zu viel Scrollen notwendig ist. Ein Kopierschutz bzw. Digital Rights Management wird bei diesem E-Book nicht eingesetzt.

Weitere Informationen finden Sie in unserer E-Book Hilfe.


Download (sofort verfügbar)

26,99 €
inkl. 19% MwSt.
Download / Einzel-Lizenz
ePUB ohne DRM
siehe Systemvoraussetzungen
PDF ohne DRM
siehe Systemvoraussetzungen
Hinweis: Die Auswahl des von Ihnen gewünschten Dateiformats und des Kopierschutzes erfolgt erst im System des E-Book Anbieters
E-Book bestellen