In einem Beitrag zum Thema Datenqualität habe ich schon einmal auf einzelne Produkte meines Arbeitgebers datenfabrik GmbH & Co. KG verwiesen.
Auf der diesjährigen European PASS Conference 2009 waren wir mit unseren Produkte wieder als Aussteller vertreten und haben uns über großen Zulauf und viele Diskussionen zum Thema SSIS gefreut. Die von uns entwickelte Komponente datenfabrik.merge stieß dabei auch bei vielen Besuchern die keine großen Berührungspunkte mit dem Thema Datenqualität haben, auf großes Interesse.
Dies möchte ich einmal zum Anlass nehmen, um ein bisschen ausführlicher über diese Komponente zu schreiben.
datenfabrik.merge ist eine Datenflusskomponente, dies es ermöglicht aus mehreren Datensätzen die über eine beliebige Spalte gruppiert werden können, einen einzelnen (neuen) Datensatz zu erstellen. Dabei können bestehende Spalten 1:1 übernommen, mit vollständigen, nicht leeren Inhalten aufgefüllt oder durch verschiedene Aggregate und andere Funktionen neu berechnet werden.
Eine Gruppe von Datensätzen ergibt sich aus der verpflichtenden vorherigen Sortierung der Daten. Werden die Daten Beispielsweise nach einer Postleitzahl sortiert, so ist ein Gruppe von Datensätzen durch die gleichen Postleitzahlen gegeben.
Um neue Spalten in den Ausgabestrom zu führen, stehen unter anderem folgende Funktionen zur Verfügung:
-
STANDARD – Nimmt den ersten Wert innerhalb der Gruppierung der gewählten Spalte.
-
AVG – Berechnet den Durchschnitt der gewählte Spalte für die aktuelle Gruppierung.
-
COUNT – Zählt die Anzahl der Werte für die gewählte Spalte innerhalb der Gruppierung.
-
COUNT DISTINCT – Zählt die Anzahl der eindeutigen Werte für die gewählte Spalte innerhalb der Gruppierung.
-
MAX – Gibt das Maximum der gewählten Spalte für die Gruppierung zurück.
-
NOT NULL – Gibt den ersten nicht NULL Wert der gewählten Spalte innerhalb der Gruppierung zurück.
-
SUM – Gibt die Summe aller Werte der gewählten Spalte für die aktuelle Gruppierung zurück.
Insgesamt bietet datenfabrik.merge derzeit 21 verschiedene Funktionen an. Für einige Funktionen wie z.B. STANDARD oder NOT NULL kann die Sortierung innerhalb der Gruppierung sehr relevant sein. Hierfür bietet datenfabrik.merge die Möglichkeit für die Gruppe innerhalb der Komponenten noch einmal eine Standard Sortierung anzulegen. Zusätzlich können die Daten innerhalb einer Gruppe auch für eine Funktion über eine speziellen Sortierung verfügen.
Um entsprechende Regeln einmalig zu definieren und Unternehmensweit zu verwenden, bietet datenfabrik.merge die Möglichkeit alle Einstellungen als XML Datei zu speichern und in anderen Paketen wieder zu verwenden.