Sie entfernen Datensatzdubletten am einfachsten, wenn Sie nach einem Vergleichsschritt einen Filter-Schritt zu Ihrem Datenfluss hinzufügen. Der Filter-Schritt entfernt Datensätze aus Sammlungen mit Datensatzdubletten basierend auf den von Ihnen festgelegten Einstellungen.
-
Erstellen Sie im Enterprise Designer einen Datenfluss, der doppelte Datensätze per Vergleich identifiziert.
Der Vergleich ist der erste Schritt der Deduplizierung, weil Sie Datensätze identifizieren müssen, die ähnlich sind, etwa Datensätze mit derselben Kontonummer oder demselben Namen. Die folgenden Themen bieten eine Anleitung zum Erstellen eines Datenflusses, mit dem Datensätze verglichen werden.
- Vergleichen von Datensätzen aus einer einzelnen Quelle
- Vergleichen von Datensätzen einer Quelle mit Datensätzen einer anderen Quelle
- Vergleichen von Datensätzen mit einer Datenbank
Anmerkung: Sie müssen den Datenfluss nur bis zu dem Punkt erstellen, an dem er Daten liest und mithilfe eines „Interflow Match“-, „Intraflow Match“- oder „Transactional Match“-Schrittes einen Vergleich durchführt. Sobald Sie einen Datenfluss bis zu diesem Punkt erstellt haben, fahren Sie mit den folgenden Schritten fort. -
Wenn Sie einen Datenfluss definiert haben, der Daten liest und Datensätze vergleicht, ziehen Sie einen Filter-Schritt auf die Arbeitsfläche und verbinden Sie ihn mit dem Schritt, der den Vergleich durchführt (Interflow Match, Intraflow Match oder Transactional Match).
Wenn Ihr Datenfluss beispielsweise Daten aus einer Datei liest und einen Vergleich mithilfe von Intraflow Match durchführt, würde Ihr Datenfluss nach dem Hinzufügen eines Filter-Schrittes wie folgt aussehen:
- Doppelklicken Sie auf der Arbeitsfläche auf den Filter-Schritt.
- Wählen Sie im Gruppierungsfeld den Eintrag CollectionNumberaus.
- Lassen Sie die Option Anzahl zurückgegebener doppelter Datensätze beschränken ausgewählt und den Wert auf 1 gesetzt. Dies sind die Standardeinstellungen.
-
Entscheiden Sie, ob Sie den ersten Datensatz in jeder Sammlung beibehalten möchten oder ob Sie eine Regel definieren möchten, um festzulegen, welcher Datensatz aus jeder Sammlung beibehalten werden soll. Wenn Sie den ersten Datensatz in jeder Sammlung behalten möchten, überspringen Sie diesen Schritt. Wenn Sie eine Regel definieren möchten, wählen Sie im Regelbaum das Element Regeln aus, und gehen Sie folgendermaßen vor:
-
Klicken Sie auf Regel hinzufügen.
Datensätze in jeder Gruppe werden dahingehend überprüft, ob sie die Regeln erfüllen, die Sie hier definieren. Wenn ein Datensatz die Regel erfüllt, ist er der „überlebende“ Datensatz und die anderen Datensätze in der Gruppe werden verworfen.
-
Definieren Sie eine Regel, um den beizubehaltenden Datensatz aus jeder Gruppe zu identifizieren.
Verwenden Sie die folgenden Optionen, um eine Regel zu definieren:
Option Beschreibung Feldname
Gibt den Namen des Datenflussfeldes an, dessen Wert Sie auswerten möchten, um zu bestimmen, ob der Datensatz gefiltert werden soll.
Typ
Gibt den Datentyp im Feld an. Zur Auswahl stehen:
- Nicht numerisch
- Wählen Sie diese Option aus, wenn das Feld nicht numerische Daten enthält (z. B. string-Daten).
- Numerisch
- Wählen Sie diese Option aus, wenn das Feld numerische Daten enthält (z. B. double, float usw.).
Operator
Gibt den Vergleichstyp an, den Sie zur Auswertung des Feldes verwenden möchten. Zur Auswahl stehen:
- Enthält
- Bestimmt, ob das Feld den angegebenen Wert enthält. Zum Beispiel enthält „Segelboot“ den Wert „boot“.
- Gleich
- Bestimmt, ob das Feld exakt den angegebenen Wert enthält.
- Größer als
- Bestimmt, ob der Feldwert größer als der angegebene Wert ist. Dieser Vorgang kann nur auf numerischen Feldern ausgeführt werden.
- Größer oder gleich
- Bestimmt, ob der Feldwert größer als oder gleich dem angegebenen Wert ist. Dieser Vorgang kann nur auf numerischen Feldern ausgeführt werden.
- Höchste
- Vergleicht den Wert des Feldes für die gesamte Datensatzgruppe und bestimmt, welcher Datensatz den höchsten Wert im Feld aufweist. Wenn die Felder in der Gruppe beispielsweise Werte von 10, 20, 30 und 100 enthalten, würde der Datensatz mit dem Feldwert 100 ausgewählt werden. Dieser Vorgang kann nur auf numerischen Feldern ausgeführt werden. Wenn mehrere Datensätze gleichzeitig den längsten Wert aufweisen, wird ein Datensatz ausgewählt.
- Ist leer
- Bestimmt, ob das Feld keinen Wert enthält.
- Ist nicht leer
- Bestimmt, ob das Feld einen Wert enthält.
- Kleiner als
- Bestimmt, ob der Feldwert kleiner als der angegebene Wert ist. Dieser Vorgang kann nur auf numerischen Feldern ausgeführt werden.
- Kleiner oder gleich
- Bestimmt, ob der Feldwert kleiner als oder gleich dem angegebenen Wert ist. Dieser Vorgang kann nur auf numerischen Feldern ausgeführt werden.
- Längste
- Vergleicht den Wert des Feldes für die gesamte Datensatzgruppe und bestimmt, welcher Datensatz den längsten Wert (in Byte) im Feld aufweist. Wenn die Gruppe beispielsweise die Werte „Mike“ und „Michael“ enthält, wird der Datensatz mit dem Wert „Michael“ ausgewählt. Wenn mehrere Datensätze gleichzeitig den längsten Wert aufweisen, wird ein Datensatz ausgewählt.
- Niedrigste
- Vergleicht den Wert des Feldes für die gesamte Datensatzgruppe und bestimmt, welcher Datensatz den niedrigsten Wert im Feld aufweist. Wenn die Felder in der Gruppe beispielsweise Werte von 10, 20, 30 und 100 enthalten, würde der Datensatz mit dem Feldwert 10 ausgewählt werden. Dieser Vorgang kann nur auf numerischen Feldern ausgeführt werden. Wenn mehrere Datensätze gleichzeitig den längsten Wert aufweisen, wird ein Datensatz ausgewählt.
- Häufigste
- Bestimmt, ob der Feldwert den Wert enthält, der in diesem Feld unter den Datensätzen in der Gruppe am häufigsten auftritt. Wenn zwei oder mehr Werte am häufigsten auftreten, werden keine Aktionen durchgeführt.
- Ungleich
- Bestimmt, ob der Feldwert nicht mit dem angegebenen Wert übereinstimmt.
Werttyp
Gibt den Werttyp an, den Sie mit dem Wert des Feldes vergleichen möchten. Zur Auswahl stehen:
Anmerkung: Diese Option ist nicht verfügbar, wenn Sie den Operator „Höchste“, „Niedrigste“ oder „Längste“ auswählen.- Feld
- Wählen Sie diese Option, wenn Sie den Wert eines anderen Datenflussfeldes mit dem Feld vergleichen möchten.
- Zeichenfolge
- Wählen Sie diese Option, wenn Sie das Feld mit einem spezifischen Wert vergleichen möchten.
Wert Gibt den Wert an, der mit dem Wert des Feldes verglichen werden soll. Wenn Sie im Feld Feldtyp den Eintrag „Feld“ ausgewählt haben, müssen Sie ein Datenflussfeld auswählen. Wenn Sie im Feld Werttyp den Eintrag „Zeichenfolge“ ausgewählt haben, müssen Sie den bei dem Vergleich zu verwendenden Wert eingeben.
Anmerkung: Diese Option ist nicht verfügbar, wenn Sie den Operator „Höchste“, „Niedrigste“ oder „Längste“ auswählen. -
Klicken Sie auf OK.
Sie haben „Filter“ nun mit einer Regel konfiguriert. Sie können bei Bedarf zusätzliche Regeln hinzufügen.
-
Klicken Sie auf Regel hinzufügen.
- Klicken Sie auf OK, um das Fenster Filteroptionen zu schließen.
-
Ziehen Sie einen Datenladeschritt auf die Arbeitsfläche und verbinden Sie ihn mit dem Filter-Schritt.
Wenn Sie beispielsweise einen „Write to File“-Datenladeschritt verwenden, sieht Ihr Datenfluss folgendermaßen aus:
-
Doppelklicken Sie auf den Datenladeschritt und konfigurieren Sie ihn.
Weitere Informationen zum Konfigurieren von Datenladeschritten finden Sie im Datenfluss-Designer-Handbuch.
Sie verfügen nun über einen Datenfluss, der die übereinstimmenden Datensätze identifiziert und alle Datensätze der Dublettengruppe mit Ausnahme von einem Datensatz entfernt. Dies führt zu einer Ausgabedatei, die Daten ohne Dubletten enthält.