|
Als Hauptkriterium einer guten Dublettensuche wird meist allein die Ähnlichkeitsbewertung gesehen (sind Mayer/Meier, BMW/Bayerische Motorenwerke etc. Dubletten?). Tatsächlich ist dies aber nur eine von einer ganzen Reihe ähnlich schwieriger Anforderungen an ein Dublettenbereinigungsprogramm.
Dieser Beitrag informiert Sie über die "Theorie" der Dublettensuche und Dublettenbereinigung. Zur Klarstellung: Wenn im folgenden von "Adressen" die Rede ist, wird darunter immer eine Person oder Firma und die dazugehörige Anschrift verstanden.
Es ist verständlich, dass die Ähnlichkeitsbewertung immer zuerst und fast immer als einzige Schwierigkeit eines Dublettenbereinigungsprogramms angesprochen wird. Schließlich sollen ja die beiden Adressen:
- Immobilienbüro Anton Müller GmbH
Samerhof er Strasse 15 b
81247 München
- Müller-Immobilien GmbH
Samerhof str. 15 6
81247 München
als Dubletten identifiziert werden. Mit herkömmlichen Stringvergleichen gerät man hier schnell in Schwierigkeiten.
Tatsächlich ist die Ähnlichkeitsbewertung von Adressen nicht einfach. Aber sie ist nicht das einzige Problem.
Von ähnlicher Bedeutung ist das "Clustermanagement":
Selbst auf den schnellsten Rechnern ist es bis auf weiteres nicht möglich, in einem Adressbestand, der größer ist als nur einige tausend Adressen, jede Adresse gegen jede zu vergleichen (bei 10.000 Adressen wären es 50 Millionen Adressvergleiche, bei 100.000 Adressen bereits das Hundertfache, also 5 Milliarden - um diese Menge in einer Stunde durchzubringen, müssten in jeder Sekunde 1,39 Mio. Adressen verglichen werden, eine Illusion!).
Man wird deswegen versuchen, solche Adress-Paare von einem Jeder-gegen-jeden-Vergleich auszuschließen, die für Dubletten nicht in Frage kommen. Bei zwei Adressen, je eine aus Hamburg und München, kann man ja meistens auch mit guten Gründen auf einen Vergleich verzichten.
Also wird man sich zum Beispiel darauf beschränken, nur Adressen miteinander zu vergleichen, die im selben Ortsteil, in der selben Straße oder im selben Haus liegen. Man bildet sogenannte "Cluster" (engl. "Traube") und betrachtet jeweils nur die Adressen, die zum selben Cluster gehören.
Formal werden Clusters über "Clusterindizes" gebildet. Ein Clusterindex ist also so etwas Ähnliches wie es die früher verwendeten "Matchcodes" waren, nur eben fehlertolerant und sehr viel flexibler konstruiert. Ein Cluster sind dann alle Adressen mit jeweils demselben Clusterindex.
Die richtige Festlegung der Clusterindizes ("Clustermanagement") ist gar nicht so einfach. Wenn die Clusterindizes zum Beispiel auf der Grundlage des Straßennamens gebildet werden, würden die beiden oben angegebenen Adressen ("Immobilienbüro Anton Müller GmbH, Samerhofer Strasse 15 b, 81247 München" und "Müller-Immobilien GmbH, Samerhofstr. 156, 81247 München") in zwei verschiedenen Clusters landen. Die Folge: Sie würden gar nicht erst miteinander verglichen. - Und dann hilft auch die intelligenteste Ähnlichkeitsbewertung nicht mehr weiter!
Versucht man das Problem dadurch zu entschärfen, dass man die Clusterindizes nur mit den Anfangsbuchstaben der Straßennamen bildet, dann fallen die beiden Adressen in ein Cluster. - Allerdings auch viele andere, und die Clustergröße und damit die Rechenzeiten nehmen in unerwünschtem Masse zu.
Die richtige Clusterbildung wirft also einige Schwierigkeiten auf. In der Praxis wird man außerdem zu jeder Adresse mehrere Clusterindizes bilden: Etwa ein Index, der Adressen über den Straßennamen zusammenführt; ein weiterer, das die Namenskomponenten stärker berücksichtigt etc. Jede Adresse landet in mehreren Clusters und wird unterschiedlichen Adressen gegenübergestellt. Das führt dann zu unterschiedlichen Dublettenkandidaten, die nun wieder zusammengeführt werden müssen (etwa Cluster 1 = {A, B}, Cluster 2 = {B, C} und Cluster 3 = {C, D} ist zusammenzuführen zu {A, B, C, D}).
Es wird immer Adress-Paare geben, bei denen die Entscheidung schwierig fällt.
Man spricht von "Overkill", wenn Adressen als Dubletten identifiziert und aus dem Bestand entfernt werden, die in Wirklichkeit gar keine Dubletten sind. Umgekehrt spricht man von "Underkill". In diesem Fall werden Adressen im Bestand belassen, obwohl es sich um dieselbe Firma oder Person handelt.
Man kann großzügig sein und zwei Adressen auch noch bei relativ großen Abweichungen als Dubletten ansehen. Dann senkt man den Underkill und vergrößert den Overkill. Umgekehrt verhält es sich, wenn man die Toleranzstufe zu sehr herabsetzt. Dann senkt man den Overkill, gleichzeitig erhöht sich der Underkill.
Einen hohen Underkill erhalten Sie aber auch dann, wenn das Clustermanagement nicht stimmt. Dann landen Adressen, die eigentlich zusammen gehören, in verschiedenen Clusters und bekommen gar nicht erst die Chance, miteinander verglichen und als Dublette erkannt zu werden.
Under- und Overkill können nebeneinander bestehen. Die Kunst besteht darin, beide gleichzeitig niedrig zu halten. Das ist leichter gesagt als getan. Denn man muss den Prüfroutinen erst einmal beibringen, dass sie "Münchner" und "Münchener" bei Firmennamen ohne weiteres als Dublette ansehen dürfen, dies aber bei "Henrik" und "Henrike" schon fraglicher ist (obwohl sich die Namen in beiden Fällen um jeweils nur ein "e" unterscheiden).
q.address arbeitet mit einer Wissensdatenbank, um auch diese Probleme in den Griff zu bekommen.
Passen Sie aber auf: Anbieter, die sich mit besonders fehlertoleranten Prüfroutinen brüsten, nehmen oft einen unvertretbar hohen Overkill in Kauf. Weil es ihnen nicht gelingt, unterschiedlich geschriebene Adressen, die Dubletten sind, von unterschiedlich geschriebenen Adressen, die keine Dubletten sind, zu unterscheiden.
q.address bekennt sich übrigens zu der jedem automatischen Adressvergleich immanenten Unsicherheit. Das Programm teilt die untersuchten Adressen so auf:
- sicher eindeutige Adressen (Clean)
- vermutete Dubletten
- sichere Dubletten
Die Grenzen zwischen den drei Gruppen kann der Anwender festlegen (z.B. > 85 % für sichere Dubletten, zwischen 70 % und 85 % für vermutete Dubletten und bei einer Ähnlichkeit < 70 % keine Dublette). Der Anwender kann sich dann auf die vermuteten (unsicheren) Dubletten konzentrieren und entscheiden, was er damit tut: Zum Beispiel insgesamt verwerfen, insgesamt dem Clean-Bestand zuschlagen oder manuell nachbearbeiten.
Eine interessante Kennzahl ist stets die Dublettenquote, die in einem Abgleich ermittelt worden ist.
Die Frage nach der "Quote" eines Dublettenbereinigungsprogramms ist verständlich, aber unzulässig. Die Quote ist – ohne nähere Betrachtung – kein Massstab für die Güte. Wer eine hohe Quote wünscht, bekommt sie! Er braucht dazu nur die Suchtoleranz hoch genug einzustellen...
Die Quote hängt in erster Linie von der Qualität der Adressen ab. "Normale" Adressbestände gibt es dabei nicht! Was für den einen Anwender eine gute Adressqualität darstellt, ist für den anderen bereits indiskutabel. Schon die generelle Aussage "rechnen Sie bei einem "normalen" Adressbestand mit einer Quote von x Prozent" ist also unseriös.
Ob man eher höhere oder eher niedrigere Quoten anstrebt, hängt nicht zuletzt auch vom Anwendungsfall ab:
Will man teuere Kataloge an reine Interessenten versenden, wird man im Zweifelsfall eher geneigt sein, von zwei ähnlichen Adressen eine aus dem Mailing einmalig herauszunehmen. Man nimmt bewusst einen höheren Overkill, also auch eine an sich zu hohe Quote in Kauf.
Wenn die Größe eines Mailings etwa auf 500.000 Sendungen festgelgt ist und 750.000 Adressen vorhanden sind, kann man bei der Adressbereinigung einen hohen Overkill fahren. Denn die benötigten 500.000 Adressen werden allemal übrigbleiben.
Sollen dagegen Kundenadressen bereinigt werden, wird man vorsichtig sein und einen höheren Underkill und schlechtere Quoten akzeptieren. Denn im Zweifelsfall wird man lieber eine zusätzliche Dublette hinnehmen als den Verlust eines Kundenstammsatzes.
Die Überlegungen lassen sich auch als "magisches Dreieck der Dublettensuche" darstellen:

Die Rechenzeiten (Performance), der Underkill und der Overkill sollen gleichzeitig minimiert werden, ein unlösbares Problem:
- Drückt man den Underkill, erhöht sich zwangsläufig das Risiko, dass gelegentlich auch einmal ein Adressen-Paar zu unrecht als Dublette diagnostiziert wird, d. h. der Overkill nimmt zu.
- Drückt man den Overkill, dann hält man sich bei der Diagnostizierung von Dubletten zurück. Dann werden aber auch häufiger Dubletten übersehen: D. h. der Underkill nimmt zu.
- Drückt man die Rechenzeit, geht das zu Lasten der Prüfqualität. Die zwangsläufige Folge: Underkill und Overkill nehmen zu!
Hat man nach einem Programmlauf schließlich alle Dubletten gefunden, gilt es, diese aus den Adresslisten und Adressdatenbanken zu eliminieren.
Sind die Adressen für ein Mailing vorgesehen, ist die Behandlung der Dubletten denkbar einfach: Man entfernt sie einfach aus der Adressliste. Die Adressen, die übrig bleiben, werden angeschrieben.
Schwieriger ist es bereits bei Adressen aus einer Marketingdatenbank. Hier geht es darum, die Informationen, die in der Dubletten Adresse abgelegt sind, zu retten. Die Informationen aus den Dubletten sind zu "verschmelzen". Zum Beispiel alle Produktgruppen, für die in der Vergangenheit Interesse bestand.
Man sollte die Verschmelzung allerdings auch dazu benutzen, die Adressqualität selbst zu verbessern. Die beiden Namen "Anton Huber" und "Dr. A. Huber" sind ggf. zu "Dr. Anton Huber" aufzubessern.
Noch schwieriger wird es bei der Bereinigung von Kundenadressen. Wenn etwa für die beiden Dubletten-Adressen eines Kunden je ein Zeitschriftenabonnement läuft (für zwei unterschiedliche Titel desselben Verlags), dann können die Adressen nicht ohne weiteres gelöscht werden. Denn sonst würde das eine Abonnement u. U. "in der Luft" hängen und ohne Kundenstammsatz zurückbleiben!
In vielen Fällen wird man ein zusätzliches Programm benötigen, das die von q.address ermittelten Dubletten aus dem Adressbestand herausnimmt und das gleichzeitig dafür Sorge trägt, dass die zu dem Kundenstammsatz gehörenden Bestellungen und Aufträge an den "überlebenden" Kundenstammsatz übergeben werden.
Anwender mit sehr kleinen Adressbeständen von lediglich einigen tausend Adressen sind oft am besten beraten, wenn sie von q.address lediglich die Dubletten suchen und in einer Liste protokollieren lassen. Diese Liste kann dann manuell abgearbeitet und die doppelten Adressen einzeln aus dem Adressbestand entfernt werden. (Hierzu bedient man sich dann der normalen Löschfunktion, die in jeder Adressverwaltung vorhanden ist.)
Im Grunde genommen gibt es nur ein einziges Patentrezept:
Es gar nicht erst zu Dubletten kommen lassen!
Dazu sollte die Dublettenprüfung bereits unmittelbar bei der Adresspflege durchgeführt werden. Das hat nicht nur den Vorteil, dass keine neuen Dubletten in den Bestand gelangen können – der Anwender hat zum Zeitpunkt der Adresspflege meist auch die Kunden- oder Bestellunterlagen zur Hand, so dass er schnell und sicher entscheiden kann, ob eine Dublette tatsächlich vorliegt.
Die für eine solche Online-Prüfung benötigten Suchverfahren liefert das q.address API. In Form von Bibliotheken lässt es sich in Windows- und Client/Server-Anwendungen einbinden und stellt dem Programm die selben Prüfroutinen zur Verfügung, mit denen auch q.address die Dublettensuche durchführt.
Für gängige CRM-Systeme gibt es vorbereitete Add-ons.
Hier geht es zurück nach oben, zurück zur Übersicht gelangen Sie hier.
|