Blockieren in DataStage®
Blockierung ist ein wichtiger Faktor für Übereinstimmungsleistung und -effizienz.
Blockung stellt eine Methode zur Fokussierung des Bereichs der zu untersuchenden Datensatzpaare bereit. Bei Quellen angemessener Größe ist es nicht möglich, alle Datensatzpaare zu vergleichen, da die Anzahl der möglichen Paare das Produkt der Anzahl der Datensätze in jeder Quelle ist. Die Blockierung stellt eine Methode zur Begrenzung der Anzahl der untersuchten Paare bereit.
Blockiert die Quellen in sich gegenseitig ausschließende und erschöpfende Untergruppen, und der Abgleichprozess sucht nur innerhalb eines Subsets nach Übereinstimmungen. Wenn die Subsets so konzipiert sind, dass sie Paare zusammenführen, die eine höhere Wahrscheinlichkeit haben, Übereinstimmungen zu sein, und diejenigen ignorieren, die weniger wahrscheinlich übereinstimmende Paare sind, wird ein erfolgreicher Abgleich für große Datenmengen berechenbar.
Datensätze in einem Block stimmen bereits in einer oder mehreren Blockungsspalten exakt überein. Das Blockieren ist ein wichtiger Schritt für einen effektiven Abgleich in Ihrem Datenbereinigungsprojekt.
Erwägungen zur Sperrung
- Der Rechenaufwand (Prüfung zu vieler Datensätze), der durch die Sperrung entsteht, hilft bei der Lösung
- Das Potenzial, die Rate der falschen Negative zu erhöhen (wenn ein Datensatzpaar, das dieselbe Entität repräsentiert, nicht übereinstimmt), weil die Datensätze nicht zum selben Block gehören
- Wählen Sie Spalten mit zuverlässigen Daten.
- Wählen Sie die Spalten aus, die für die Erreichung Ihres Ziels sinnvoll sind. Wenn Sie eindeutige Kunden identifizieren wollen, ist die Sperrung nach Hausnummer nicht die beste Wahl.
- Die zeichengetrennten Untersuchungsberichte helfen Ihnen bei der Auswahl der Sperrspalten. Aus den Berichten geht hervor, wie oft eine Spalte ausgefüllt wird. Wenn Sie Spalten mit zuverlässigen Daten auswählen, gruppieren Sie wirklich ähnliche Datensätze, da die Datenwerte zuverlässig sind.
- Wählen Sie Spalten mit einer guten Verteilung der Werte.
- Einige Spalten haben nicht viele mögliche Werte. Zum Beispiel macht das Geschlecht als Spaltenwert die Blöcke normalerweise nicht klein genug.
- Manchmal haben Spalten keine gute Verteilung der Werte. Wenn Ihre Daten z. B. nur aus einigen wenigen Staaten oder Provinzen stammen, sind die Staaten oder Provinzen möglicherweise nicht die besten Spalten für die Verwendung.
- Eine Kombination von Säulen könnte vorzuziehen sein.
- Verwenden Sie so viele Spalten, dass die Blockgröße überschaubar bleibt.
Blockade-Analogie
Du hast die Aufgabe, viele frisch gewaschene Socken, die sich in einer Schachtel befinden, zu Paaren zusammenzufügen. Sie könnten eine Socke auswählen und die gesamte Schachtel Socke für Socke durchsuchen, um den Partner der Socke zu finden. Aber höchstwahrscheinlich entscheiden Sie sich für eine effizientere Methode. Sie können Socken nach Merkmalen sortieren oder "sperren". Sie können zunächst nach Farben sortieren. Dann sollten Sie nur weiße Socken mit weißen Socken vergleichen und keine Zeit damit verschwenden, eine weiße Socke mit einer blauen Socke zu vergleichen.
Was wäre, wenn Sie eine rosafarbene Socke gefunden hätten, die ursprünglich möglicherweise weiß war, jetzt aber verfärbt ist? Wegen eines Farbfehlers legst du die rosa Socke nicht zu den weißen Socken in deinem ersten Durchgang der Sockensortierung. Die rosa Socke passt nicht in den Block der weißen Socken. In den folgenden Durchgängen sortieren Sie nach dem Sortieren nach Farben die verbleibenden, nicht gepaarten Socken nach Größe und Form. In einem der folgenden Durchgänge finden Sie vielleicht die wahrscheinlichste Übereinstimmung mit der rosa Socke. Auch das Problem, dass Datensätze nicht die richtige Blockgruppe bilden, lässt sich durch mehrere Durchläufe lösen.
Leitlinien für die Sperrung
- Sperrspalten als Sortierschlüssel verwenden
- Alle Datensätze, die in den Sperrspalten denselben Wert haben, kommen für den Vergleich in der Abgleichphase in Frage.
- Blöcke so klein wie möglich machen
- Ein bis zweihundert Datensätze pro Quelle sind eine gute Größe. Die Effizienz nimmt mit zunehmender Blockgröße ab. Durch das Blockieren werden die Quellen in Teilmengen aufgeteilt, die eine Berechnung ermöglichen. Die Verwendung kleiner Blöcke führt zu einer besseren Systemleistung bei der Verarbeitung von Datensätzen. Um eine wirksame Blockierstrategie zu entwickeln, sollten Sie in jedem Durchgang mehrere Spalten zum Blockieren verwenden.
- Umsetzung einer Blockierungsstrategie, die mit Ihren Zielen übereinstimmt
- Obwohl kleine Blöcke mit mehreren Spalten vorzuziehen sind, kann ein sehr restriktives Blockierungsschema zu viele Blöcke erzeugen. Das Problem bei zu vielen Blöcken ist, dass Datensätze, die potenzielle Ziele für einen Vergleich sind, auf mehrere Blöcke verteilt sind. Wenn die Datensätze in mehreren Blöcken verteilt sind, werden die Datensätze nicht innerhalb des Durchlaufs verglichen, und Ihre Abgleichsergebnisse könnten beeinträchtigt sein.
- Vermeiden Sie Blocküberlauf
- Ein Blocküberlauf tritt auf, wenn während eines Durchlaufs mehr Datensätze in einem bestimmten Block gruppiert werden als die Anzahl, die Sie für die Blocküberlaufgrenze angegeben haben. Wenn ein Blocküberlauf auftritt, werden alle Datensätze des Blocks beim Durchlauf übersprungen.
Sie können die Einstellung des Blocküberlaufs konfigurieren. Die Standardeinstellung für den Blocküberlauf ist 10.000 Datensätze. Bei einem Zwei-Quellen-Abgleichsprozess, dem Many-to-One-Abgleich, ist die Größe des Referenzblocks der einzige Block, der durch die Überlaufeinstellung eingeschränkt wird. Wenn ein Blocküberlauf auftritt, prüfen Sie die Blockierungskriterien. Anstatt den Grenzwert für den Blocküberlauf sofort anzuheben, sollten Sie verstehen, warum der Überlauf auftritt. Bestimmen Sie, ob eine der Sperrspalten viele verschiedene Werte hat (hohe Kardinalität).
Wenn Sie die Blocküberlaufgrenze anheben, ohne zu wissen, dass Sie ein Problem mit Ihren Daten haben, könnten Sie unbeabsichtigt ein Problem mit Ihren Daten oder Ihrer Blockierungsstrategie verbergen. Heben Sie den Blocküberlauf auf, wenn Sie wissen, warum der Blocküberlauf aufgetreten ist, und wenn Sie einen logischen Grund dafür haben.
- Fehlende Werte für Sperrspalten definieren
- Definieren Sie fehlende Werte für Sperrspalten. Blöcke, die Spalten mit fehlenden Werten enthalten, werden beim Abgleich übersprungen. Konvertieren Sie alle generischen Stellvertreter für fehlende Werte (wie UNKNOWN oder 99999) in Nullen. Wenn fehlende Werte nicht in Nullen umgewandelt werden, erkennt der Abgleichsprozess die Werte nicht als fehlend. Infolgedessen kann es zu kostspieligen Blocküberläufen kommen. Wenn beispielsweise eine nationale Identitätsnummer nur in der Hälfte der Datensätze vorhanden ist, aber die fehlenden Werte als Leerzeichen statt als Nullen gemeldet werden, bilden die leeren Zahlen einen großen Block. Der große Block kann zu übermäßigen Berechnungen und einem Blocküberlauf führen.
- Für Quellen mit begrenzten Informationen, verwenden Sie einen umgekehrten Soundex-Code
- Der umgekehrte Soundex wird gebildet, indem man den Namen rückwärts betrachtet und einen Soundex errechnet. Die Umkehrung von JONES wäre zum Beispiel SENOJ. Da der Soundex-Algorithmus den Anfangsbuchstaben beibehält, können bei einem umgekehrten Soundex Fehler am Anfang von Namen auftreten.
Beispiele für Blockierungen
- Individuelle Identifikationsnummern
Die Identifikationsnummern sind in der Regel zuverlässig. Verwenden Sie in einem ersten Durchgang individuelle Identifikationsnummern wie nationale Identitätsnummern, Nummern von Krankenakten, Anspruchsnummern usw., selbst wenn die Nummern in einem beträchtlichen Prozentsatz der Datensätze fehlen oder fehlerhaft sind.
So enthalten beispielsweise 50 % der Quellen eine nationale Identitätsnummer. Pass 1 ist durch die nationale Identitätsnummer gesperrt. Der Abgleich überspringt alle Datensätze, die keine nationale Identitätsnummer enthalten. Die übersprungenen Datensätze werden in den zweiten Durchgang übernommen. Ein relativ großer Prozentsatz der Datensätze wird jedoch problemlos abgeglichen.
Wenn es mehrere Identifikationsnummern gibt, verwenden Sie diese bei den ersten beiden Durchgängen. Probieren Sie danach andere Spalten aus. Identifikationsnummern sind ideal für Sperrspalten, da sie die Datensätze in viele Gruppen aufteilen.
- Geburtsdaten
Geburtsdaten sind ausgezeichnete Sperrspalten.
Wenn Sie beispielsweise die Transformer-Stufe verwenden, können Sie Geburtsdaten in diese Spalten aufteilen: BirthYear,, BirthMonth, und BirthDay. Bei größeren Quellen (über 100.000 Datensätze) verwenden Sie alle drei Spalten als Sperrspalte für den ersten Durchgang. Für kleinere Quellen verwenden Sie BirthYear, BirthMonth, und eine zusätzliche Spalte wie "Geschlecht". Nachfolgende Durchgänge können Blöcke verwenden, die BirthDay enthalten.
- Daten der Veranstaltung
Ereignisdaten, wie z. B. ein Unfalldatum, Schadendatum, Krankenhauseinweisungsdatum usw., sind als Sperrspalten nützlich.
- Namen
Eine phonetische Kodierung (wie Soundex- oder NYSIIS-Codes) des Familiennamens ist eine nützliche Sperrspalte. Bei umfangreichen Quellen kombinieren Sie diesen Code mit dem ersten Buchstaben des Vornamens oder dem Geburtsjahr. Denken Sie daran, dass die verschiedenen Kulturen unterschiedliche Konventionen für Familiennamen verwenden, also verlassen Sie sich nicht ausschließlich auf diese.
- Adressen
Postanschriften bieten eine Fülle von Informationen für die Sperrung. Zum Beispiel sind Postleitzahlen und eine phonetische Kodierung (Soundex oder NYSIIS) von Straßen- oder Ortsnamen eine ausgezeichnete Wahl.