Vergleichen von Datensätzen einer Quelle mit Datensätzen einer anderen Quelle

In dieser Prozedur wird beschrieben, wie ein „Interflow Match“-Schritt verwendet wird, um Datensätze in einer Quelle zu identifizieren, die Datensätzen in einer anderen Quelle entsprechen. Die erste Quelle enthält verdächtige Datensätze und die zweite Quelle enthält Kandidatendatensätze. Der Datenfluss vergleicht nur Datensätze einer Quelle mit Datensätzen einer anderen Quelle. Es versucht nicht, Datensätze aus derselben Quelle miteinander zu vergleichen. Der Datenfluss gruppiert Datensätze in Sammlungen mit übereinstimmenden Datensätzen und schreibt diese Sammlungen in eine Ausgabedatei.

  1. Erstellen Sie im Enterprise Designer einen neuen Datenfluss.
  2. Ziehen Sie zwei Quellschritte auf die Arbeitsfläche. Konfigurieren Sie eine von ihnen so, dass auf die Quelle der verdächtigen Datensätze verwiesen wird, und konfigurieren Sie die andere so, dass auf die Quelle der Kandidatendatensätze verwiesen wird.

    Anweisungen zum Konfigurieren von Quellschritten finden Sie im Datenfluss-Designer-Handbuch.

  3. Ziehen Sie einen „Match Key Generator“-Schritt auf die Arbeitsfläche und verbinden Sie ihn mit einem der Quellschritte.

    Wenn Sie beispielsweise einen „Read from File“-Quellschritt verwenden, sieht Ihr Datenfluss jetzt folgendermaßen aus:

    Match Key Generator erstellt einen nicht eindeutigen Schlüssel für jeden Datensatz, der dann von Vergleichsschritten verwendet werden kann, um Gruppen potenzieller Datensatzdubletten zu identifizieren. Vergleichsschlüssel erleichtern den Vergleichsprozess, da sie Ihnen erlauben, Datensätze nach Vergleichsschlüssel zu gruppieren und dann nur Datensätze innerhalb dieser Gruppen zu vergleichen.

    Anmerkung: Sie fügen später einen zweiten „Match Key Generator“-Schritt hinzu. Fürs Erste benötigen Sie nur einen Schritt auf der Arbeitsfläche.
  4. Doppelklicken Sie auf den „Match Key Generator“-Schritt.
  5. Klicken Sie auf Hinzufügen.
  6. Definieren Sie die Regel, die zur Generierung eines Vergleichsschlüssels für jeden Datensatz verwendet werden soll.
    Tabelle 1. Match Key Generator-Optionen

    Name der Option

    Beschreibung/gültige Werte

    Algorithmus

    Gibt den Algorithmus an, der verwendet werden soll, um den Vergleichsschlüssel zu generieren. Zur Auswahl stehen:

    Consonant
    Gibt die angegebenen Felder mit entfernten Konsonanten zurück.
    Double Metaphone
    Gibt einen auf einer phonetischen Darstellung ihrer Zeichen basierenden Code zurück. „Double Metaphone“ ist eine verbesserte Version des Algorithmus „Metaphone“ und versucht, viele der in unterschiedlichen Sprachen vorkommenden Unregelmäßigkeiten zu berücksichtigen.
    Köln
    Indiziert Namen nach Klang, so wie sie auf Deutsch ausgesprochen werden. Ermöglicht die Codierung von Namen mit derselben Aussprache in derselben Darstellung, sodass sie trotz kleiner Unterschiede bei der Schreibwiese verglichen werden können. Das Ergebnis ist immer eine Folge von Zahlen; Sonderzeichen und Leerzeichen werden ignoriert. Diese Option wurde entwickelt, um auf Einschränkungen von Soundex zu reagieren.
    MD5
    Ein Message Digest-Algorithmus, der einen 128-Bit-Hashwert erzeugt. Dieser Algorithmus wird im Allgemeinen verwendet, um die Datenintegrität zu überprüfen.
    Metaphone
    Gibt einen per Metaphone codierten Schlüssel ausgewählter Felder zurück. Metaphone ist ein Algorithmus, um Wörter anhand ihrer englischen Aussprache zu codieren.
    Metaphone (Spanisch)
    Gibt einen per Metaphone codierten Schlüssel ausgewählter Felder für die spanische Sprache zurück. Dieser Metaphone-Algorithmus codiert Wörter anhand ihrer spanischen Aussprache.
    Metaphone 3
    Übertrifft die Algorithmen „Metaphone“ und „Double Metaphone“ mit genaueren Einstellungen für Konsonanten und inneren Vokalen, was Ihnen ermöglicht, Wörter oder Namen auf phonetischer Basis mehr oder weniger eng mit Suchbegriffen abgeglichen zu erzeugen. Metaphone 3 erhöht die Genauigkeit der phonetischen Codierung auf 98 %. Diese Option wurde entwickelt, um auf Einschränkungen von Soundex zu reagieren.
    NYSIIS
    Phonetischer Codealgorithmus, der eine ungefähr übereinstimmende Aussprache mit der exakten Schreibweise vergleicht und Wörter indiziert, deren Aussprache ähnlich ist. Bestandteil des New York State Identification and Intelligence System. Angenommen, Sie suchen die Daten einer Person in einer Personendatenbank. Sie meinen, dass der Name der Person wie „John Smith“ klingt, er wird aber „Jon Smyth“ geschrieben. Würden Sie eine Suche durchführen, in der nach einer genauen Übereinstimmung mit „John Smith“ gesucht wird, würden keine Ergebnisse zurückgegeben. Wenn Sie jedoch die Datenbank mit dem Algorithmus NYSIIS indizieren und eine erneute Suche mit dem Algorithmus NYSIIS durchführen, wird die richtige Übereinstimmung zurückgegeben, weil vom Algorithmus sowohl „John Smith“ als auch „Jon Smyth“ als „JAN SNATH“ indiziert werden.
    Phonix
    Vorverarbeitet Namenszeichenfolgen, indem mehr als 100 Transformationsregeln auf einzelne Zeichen oder auf Zeichenfolgen angewendet werden. 19 dieser Regeln werden nur angewendet, wenn das bzw. die Zeichen am Anfang der Zeichenfolge stehen, während 12 der Regeln nur angewendet werden, wenn sie in der Mitte der Zeichenfolge stehen. 28 der Regeln werden nur angewendet, wenn sie am Ende der Zeichenfolge stehen. Die transformierte Namenszeichenfolge wird als Code codiert, der aus einem Anfangsbuchstaben gefolgt von drei Stellen besteht (Nullen und doppelt vorhandene Zahlen werden entfernt). Diese Option wurde entwickelt, um auf Einschränkungen von Soundex zu reagieren; sie ist komplexer und deshalb langsamer als Soundex.
    Soundex
    Gibt einen Soundex-Code ausgewählter Felder zurück. Soundex erzeugt einen auf der englischen Aussprache eines Wortes basierenden Code mit fester Länge.
    Teilzeichenfolge
    Gibt einen angegebenen Teil des ausgewählten Feldes zurück.

    Feldname

    Gibt das Feld an, auf das Sie den ausgewählten Algorithmus anwenden möchten, um den Vergleichsschlüssel zu generieren. Wenn Sie beispielsweise ein Feld mit Namen „LastName“ auswählen und den Soundex-Algorithmus wählen, würde der Soundex-Algorithmus auf die Daten im Feld „LastName“ angewendet, um einen Vergleichsschlüssel zu erzeugen.

    Startposition

    Gibt die Startposition innerhalb des angegebenen Feldes an. Nicht alle Algorithmen erlauben Ihnen, eine Startposition anzugeben.

    Länge

    Gibt die Länge der Zeichen an, die ab der Startposition eingeschlossen werden sollen. Nicht alle Algorithmen erlauben Ihnen, eine Länge anzugeben.

    Sonderzeichen entfernen

    Entfernt alle nicht numerischen und nicht alphabetischen Zeichen wie Bindestriche, Leerzeichen und andere Sonderzeichen aus einem Eingabefeld.

    Eingabe sortieren

    Sortiert alle Zeichen in einem Eingabefeld oder alle Begriffe in einem Eingabefeld in alphabetischer Reihenfolge.

    Zeichen
    Sortiert die Zeichenwerte aus einem Eingabefeld vor dem Erstellen einer eindeutigen ID.
    Begriffe
    Sortiert jeden Begriffswert aus einem Eingabefeld vor dem Erstellen einer eindeutigen ID.
  7. Klicken Sie auf OK, wenn Sie mit dem Definieren der Regel fertig sind.
  8. Klicken Sie mit der rechten Maustaste auf den „Match Key Generator“-Schritt auf der Arbeitsfläche, und wählen Sie Schritt kopieren aus.
  9. Klicken Sie mit der rechten Maustaste in einen leeren Bereich der Arbeitsfläche, und wählen Sie Einfügen aus.
  10. Verbinden Sie die Kopie von „Match Key Generator“ mit dem anderen Quellschritt.

    Bei Verwendung eines „Read from File“-Eingabeschrittes etwa würde Ihr Datenfluss jetzt folgendermaßen aussehen:

    Der Datenfluss enthält nun zwei „Match Key Generator“-Schritte, die für jede Quelle mit exakt den gleichen Regeln Vergleichsschlüssel erzeugen. Die identische Konfiguration der „Match Key Generator“-Schritte ist wesentlich dafür, dass dieser Datenfluss ordnungsgemäß funktioniert.

  11. Ziehen Sie einen „Interflow Match“-Schritt auf die Arbeitsfläche und verbinden Sie die einzelnen „Match Key Generator“-Schritte mit ihm.

    Bei Verwendung eines „Read from File“-Eingabeschrittes etwa würde Ihr Datenfluss jetzt folgendermaßen aussehen:

  12. Doppelklicken Sie auf den „Interflow Match“-Schritt.
  13. Wählen Sie im Feld Vergleichsregel laden eine der vordefinierten Vergleichsregeln aus, die Sie entweder unverändert verwenden oder nach Bedarf ändern können. Wenn Sie eine neue Vergleichsregel erstellen möchten, ohne eine der vordefinierten Vergleichsregeln als Startpunkt zu verwenden, klicken Sie auf Neu. Im Datenfluss darf lediglich eine benutzerdefinierte Regel enthalten sein.
    Anmerkung: Das Feature „Datenflussoptionen“ im Enterprise Designer ermöglicht es, die Vergleichsregel für die Konfiguration zur Laufzeit verfügbar zu machen.
  14. Wählen Sie im Feld Gruppieren nach den Eintrag MatchKey aus.

    Datensätze mit demselben Vergleichsschlüssel werden dann zusammen gruppiert. Die Vergleichsregel wird auf Datensätze innerhalb einer Gruppe angewendet, um herauszufinden, ob Dubletten vorhanden sind. Der Vergleichsschlüssel für jeden Datensatz wird von den „Generate Match Key“-Schritten generiert, die Sie weiter oben konfiguriert haben.

  15. Weitere Informationen zum Ändern der anderen Optionen finden Sie unter Erstellen einer Vergleichsregel.
  16. Ziehen Sie einen Datenladeschritt auf die Arbeitsfläche und verbinden Sie ihn mit dem „Interflow Match“-Schritt.

    Bei Verwendung eines „Write to File“-Datenladeschrittes würde Ihr Datenfluss so aussehen:

  17. Doppelklicken Sie auf den Datenladeschritt und konfigurieren Sie ihn.

    Informationen zum Konfigurieren von Datenladeschritten finden Sie im Datenfluss-Designer-Handbuch.

Sie haben jetzt einen Datenfluss, der Datensätze aus zwei Datenquellen miteinander vergleicht.

Beispiel für den Vergleich von Datensätzen aus mehreren Quellen

Als Werbesendungsunternehmen möchten Sie Personen identifizieren, die sich in einer „Do-Not-Mail“-Liste befinden, um keine Werbesendung an sie zu senden. Sie verfügen über eine Liste von Empfängern in einer Datei und eine Liste von Personen, die keine Werbesendung in einer anderen Datei (eine Unterdrückungsdatei) erhalten möchten.

Im folgenden Datenfluss wird eine Lösung für dieses Geschäftsszenario bereitgestellt:

Der „Read from File“-Schritt liest Daten aus Ihrer Mailiste, und der „Read from File 2“-Schritt liest Daten aus der Unterdrückungsliste. Die beiden „Match Key Generator“-Schritte sind identisch konfiguriert, sodass sie einen Vergleichsschlüssel erzeugen, der von „Interflow Match“ verwendet werden kann, um Gruppen potenzieller Übereinstimmungen zu bilden. „Interflow Match“ identifiziert Datensätze in der Mailingliste, die sich ebenfalls in der Unterdrückungsdatei befinden, und markiert diese Datensätze als Dubletten. Conditional Router sendet eindeutige Datensätze – d. h. die Datensätze, die nicht in der Unterdrückungsliste gefunden wurden – an „Write to File“, damit diese in eine Datei geschrieben werden. Der „Conditional Router“-Schritt sendet alle anderen Datensätze an „Write to Null“. Dort werden sie gelöscht.