Design Pattern // Protokollierung eines ETL-Prozesses — wie sich Lauf, Komponente und Aktion auswertbar protokollieren lassen

Ein ETL-Prozess endet ohne Exception — aber wurde wirklich alles geladen, was hätte geladen werden müssen? Allein der Umstand, dass ein Prozess nicht abgebrochen ist, sagt noch nichts darüber, ob er auch das getan hat, was von ihm erwartet wurde. Ein les- und auswertbares Protokoll macht den Unterschied zwischen Bauchgefühl und belastbarer Aussage. Dieses Design … Weiterlesen

SSIS vs. SQL: Lesbarkeit und Wartbarkeit — wie viel SQL gehört in ein SSIS-Paket?

Drei Wege, dieselbe ETL-Aufgabe in SSIS abzubilden. Einer braucht 10 Minuten und ist nachvollziehbar. Einer braucht Stunden, 40 Data Flow Tasks und überlebt die nächste Anforderungs-Änderung nicht. Die Frage „wie viel SQL gehört in ein SSIS-Paket?“ entscheidet über Wartbarkeit, Lesbarkeit und Entwicklungs-Tempo — nicht über Tool-Loyalität. Was dich erwartet: Voraussetzung: SQL Server 2017+ und SSIS 2017+ … Weiterlesen

SSIS vs. SQL: Quellcodeverwaltung — warum SP-Diffs lesbar sind und `.dtsx`-Diffs nicht

Zwei Versionen eines SSIS-Pakets diffen — selbst eine triviale Umbenennung erzeugt acht „geänderte Bereiche“ im XML, und der Diff lokalisiert den eigentlichen Edit nicht einmal korrekt. Dieselbe Modifikation in einer Stored Procedure zeigt drei Zeilen Diff, in 30 Sekunden reviewbar. Source-Code-Management ist eine Wartbarkeits-Entscheidung — keine Tool-Frage, sondern eine Artefakt-Format-Frage. Was dich erwartet: Voraussetzung: SQL Server … Weiterlesen

SSIS vs. SQL: Identitätswechsel — wie ein Agent-Job an die Ressourcen kommt, die er braucht

Ein SQL-Server-Agent-Job, der auf einem File Share lesen soll, scheitert mit Login failed — der Service-Account des Agents hat dort keine Berechtigung. Die Lösung ist ein Identitätswechsel (englisch impersonation) zur Laufzeit, im SQL Server Agent über einen Proxy-User. Eine Sackgasse bleibt: reine Transact-SQL Script-Steps unterstützen keinen Identitätswechsel — der Workaround ist, das T-SQL in ein SSIS-Paket als Wrapper zu packen. Was dich … Weiterlesen

SSIS vs. SQL — wann SSIS, wann reines T-SQL, wann beides kombinieren?

SSIS, T-SQL oder eine Kombination beider? Den einen richtigen Weg gibt es nicht. Was es gibt, ist eine Handvoll Entscheidungs-Kriterien, an denen jede konkrete Wahl — Technologie wie Einsatz-Umfang — gemessen werden sollte: Lesbarkeit, Quellcodeverwaltung, Identitätswechsel. Diese Artikel-Serie nimmt sich diese drei Achsen vor und liefert pro Achse ein konkretes Argument. Wer bei der ETL-Tool-Wahl ohne diese Kriterien argumentiert, landet … Weiterlesen

Kommentierung eines komplexen SQL Statements

Überblick Über die Notwendigkeit und den Sinn von Dokumentation besteht weitestgehend Einigkeit, und dennoch fällt diese Aufgabe dem Projektdruck in der Regel als erstes zum Opfer: „Man möge doch in den Quellcode schauen, um zu verstehen, was eine Software oder ein SQL Statement macht.“ Dieser Satz ist oft zu hören. Nicht jeder ist dazu in … Weiterlesen

Namenskonvention für SSIS Tasks

Die Festlegung von Programmierrichtlinien und Namenskonventionen macht nur dann Sinn, wenn sie Gewinn bringend eingesetzt werden können. Voraussetzung hierfür ist, dass die Vorteile klar identifiziert und benannt werden können. Die Lesbarkeit und Wartbarkeit von Code steht im Allgemeinen im Vordergrund. Im Falle von SQL Server Integration Services (SSIS) kommt jedoch noch ein weiterer Aspekt hinzu: … Weiterlesen

Formatierung von SQL Statements (Teil 2) — Statement-Aufbau: SELECT, WHERE, FROM, JOIN

Wer in einem 200-Zeilen-SELECT-Statement nicht erkennen kann, wo die WHERE-Klausel anfängt und wo sie aufhört, hat ein Strukturproblem — kein Inhaltsproblem. Dieser Artikel zeigt das Layout, das auch lange Statements navigierbar hält. → Teil einer Reihe. Dieser Artikel ist Teil 2 und behandelt den Statement-Aufbau (SELECT, WHERE, FROM, JOIN). Die Bezeichner-, Delimiter-, Komma- und Alias-Grundlagen stehen in Teil 1 — Bezeichner, Delimiter, Kommata, … Weiterlesen

Formatierung von SQL Statements (Teil 1) — Bezeichner, Delimiter, Kommata, Aliase

Wer ein schlecht oder gar nicht formatiertes SELECT mit 30 Spalten und einem halben Dutzend Joins einmal hat debuggen müssen, weiß: nicht das SQL kostet den Tag, sondern die Suche danach, was es eigentlich tut. Formatierung von SQL ist keine Geschmacksfrage, sondern ein Wartungs-Werkzeug — und sie beginnt bei einer Namenskonvention. → Teil einer Reihe. Dieser … Weiterlesen

Editor Optionen in SSMS

Dieser Artikel in Englisch… Überblick In aller Regel verwenden Editoren aus den bekannten Entwicklungsumgebungen inklusive SQL Server Management Studio (SSMS) monospaced Schriften: jedes Zeichen beansprucht damit die gleiche Breite im Textfluss. Texte lassen sich unter Verwendung von monospaced Schriften hervorragend einrücken und ausrichten. Ein effizientes Feature für die Ausrichtung und Einrückung von Text-Elementen ist die … Weiterlesen