Der Flowgraph bietet erweiterte Knoten für die folgenden Anwendungsfälle:
Sie haben gelernt, wie Sie einen Datensatz mithilfe eines Fallknotens in verschiedene Datensätze aufteilen. Aber wie flachen Sie ein Datenset basierend auf seinem Inhalt über mehrere Spalten hinweg ab? Wenn eine Spalte beispielsweise den Länderwert enthält, fügen wir jedes Land in eine eigene Spalte ein. Wie Sie sehen, können wir dies mit einem Pivot-Knoten tun.
Sie haben gelernt, wie Sie ein Attribut wie eine Telefonnummer abrufen und es einem Verkaufsdatensatz mit der entsprechenden Person hinzufügen. Wenn diese Person jedoch mehrere Telefonnummern hat, legt ein Join eine Kopie des Transaktionsdatensatzes mit dieser Person für jede Telefonnummer an. Angenommen, Sie benötigen nur die erste Telefonnummer, ein Lookup-Knoten ist das, was Sie benötigen. Mit einer Kombination aus einem Lookup-Knoten und einem Pivot-Knoten können Sie alle Telefonnummern erfassen.
Wenn sich ein Datensatz in einem Quellsystem ändert, möchten Sie in der Regel das Datenziel mit der Änderung aktualisieren. Sie können den vorhandenen Datensatz mit der neueren Version überschreiben, aber Sie können auch entscheiden, den vorhandenen Datensatz beizubehalten, ihn als "alt" zu kennzeichnen und den neuen Datensatz daneben zu laden. Auf diese Weise behalten Sie die alten Datensätze und stellen den neuen Datensatz dem Unternehmen zur Verfügung. Verwenden Sie dazu einen Knoten für die Historienerhaltung. Mit diesem speziellen Knoten können wir den alten und neuen Datensätzen automatisch Informationen zur zeitlichen Gültigkeit hinzufügen.
In der folgenden Tabelle sind alle Flowgraph-Knoten im Abschnitt Erweitert aufgeführt.
Erweiterte Knotentypen
| Knotentyp | Groß-/Kleinschreibung |
|---|---|
Historienerhaltung | Ermöglicht die Pflege älterer Versionen von Zeilen, wenn eine Änderung auftritt, indem neue Zeilen in einem Ziel generiert werden. |
Lookup | Ruft einen oder mehrere Spaltenwerte aus einer Lookup-Tabelle ab, die einer von Ihnen definierten Lookup-Bedingung entsprechen. |
Vorgang zuordnen | Sortiert Eingabedaten und ordnet Ausgabedaten zu. |
Pivot | Erstellt eine Zeile mit Daten aus vorhandenen Zeilen. |
Entpivotieren | Erstellt eine neue Zeile für jeden Wert in einer Spalte, die als Pivotspalte gekennzeichnet ist. |
Tabellenvergleich | Vergleicht zwei Tabellen und erzeugt die Differenz zwischen ihnen als Datenset mit Zeilen, die als INSERT, UPDATE oder DELETE gekennzeichnet sind. |
Sehen wir uns zwei wichtige Beispiele genauer an: den Lookup-Knoten und den Pivot-Knoten.
Angenommen, Sie benötigen eine Adresse oder Telefonnummer einer Person und haben ein Adressbuch mit allen Adressen und Nummern. Sie möchten die häufigste Adresse oder diejenige Adresse, die am besten zum Verkaufsdatum passt. Dann sollten Sie den Lookup-Knoten verwenden.
Was ist ein Lookup? Ein Lookup ist fast ein Join. Sie definieren Abgleichskriterien und fügen die entsprechenden Werte aus einer anderen Spalte hinzu, aber sie weist einige Unterschiede auf:
- Die Lookup-Tabelle sollte sich beim Laden der Daten der Hauptsätze nicht dynamisch ändern. Daher kann die Lookup-Transformation in Echtzeit verarbeitet werden.
- Sie können Lookup-Tabellenspalten angeben und Wertepaare sortieren, um eine Sortierung aufzurufen, die eine einzelne Lookup-Tabellenzeile auswählt, wenn mehrere Zeilen zurückgegeben werden.
- Konfigurieren Sie Standardwerte in Form von Konstanten, die ausgegeben werden sollen, wenn keine Lookup-Tabellenzeilen zurückgegeben werden.

Der Lookup gibt nur ein Ergebnis pro People_Id zurück.
Wenn Sie jedoch zwei Ergebnisse wünschen, verwenden Sie eine Kombination aus einem Join und einem Pivot-Knoten, vorausgesetzt, der Kontaktzähler beginnt immer mit 1. Auf der linken Seite der folgenden Tabelle finden Sie das Ergebnis eines Joins. Auf der rechten Seite wird das Ergebnis des Pivot-Knotens mit dem gewünschten Ergebnis angezeigt.

Wie funktioniert es? Sehen wir uns das Pivot-Knoten-Prinzip in einem anderen Beispiel mit Maßnahmen an.

Dieses Beispiel wird von der folgenden Benutzungsoberfläche erstellt:

Machen wir uns Schritt für Schritt mit dieser Vorgehensweise vertraut.



