Benno Nieswand, Gründer und CTO der exorbyte GmbH über den matchmaker und den Vergleich zu herkömmlichen Suchtechnologien
matchmaker ist die fehlertolerante Such- und Abgleichlösung für große Mengen strukturierter Daten. Dabei ist die Fehlertoleranz bezüglich aller denkbaren und nicht denkbaren Fehler in den Daten sehr groß, sei es in den Anfragedaten oder in der Referenzdatenbank, gegen die abgeglichen wird.
Dies klingt kompliziert und man fragt sich, was daran besonders ist. Für eine gute Antwort muß man sich ein wenig klarmachen, worin das Problem von Suche und Abgleich eigentlich liegt, und worin sich die beiden Dinge unterscheiden, bzw. was sie gemeinsam haben.
Die Geburtsstunde von matchmaker
Entstanden ist matchmaker aus der Erkenntnis, daß der Aufbau einer Applikation, die in der Lage ist, Adressen auf Briefen zu lesen, sehr komplex und schwierig anzupassen und zu warten ist. Insbesondere war die Aufteilung der Erkennungsleistung in OCR, Region-of-Interest-Erkennung, Adressanalyse mit Tokenisierung, Worttypscannern, Adressparsern, darauffolgend eine Adress-Korrelation mit Adresselementsuche und -verifikation und letztendlicher Entscheidungslogik so anfällig, dass Änderungen für spezielle Projekte extrem aufwendig waren.
Die Idee war es, durch sehr schnelle Algorithmen sich nicht für eine spezielle Logik entscheiden zu müssen, sondern durch die Korrelation aller Adresselemente am Ende einfach das beste Gesamtergebnis auszuwählen und damit Fehler durch falsche Wortunterteilungen, falsche Worttypen, falsche Adressattribute etc. zu vermeiden. Von Anfang an sollten die Referenzdaten selbst als die entscheidende Wissensmenge im Vordergrund stehen, denn Fehler bei der Anfrage vorher zu erraten ist an sich zu fehlerbehaftet.
Der Durchbruch bei der Implementierung des bekannten Levenshtein-Algorithmus und einer neuartigen Art der Kombination von Teilergebnissen zusammen mit vielen weiteren extrem effizienten Implementierungen haben dazu geführt, diesen Traum zu verwirklichen.
Mit dem Aufkommen der Internet-Suche war die Kombination von reinen Abgleichanwendungen mit echtzeitfähigen Suchanwendungen
Die gewöhnliche Suche
Gewöhnlich ist die Suche jedem bekannt von Suchmaschinen wie Google etc., aber auch von einfachen Suchanwendungen, die Datenbanken mittels SQL oder anderer Sprachen anfragen.
Was für eine Suche kein Problem darstellt, ist eine Menge von Treffern hinter einem Suchbegriff aufzulisten. Das geht (fast) beliebig schnell, da man nur eine vernünftig aufgebaute Indexmenge (Wortliste, Baum) auf die Existenz eines Begriffes untersucht damit dann eine vorher berechnete Menge von Dokumentenverweisen herauskommt, die zu diesem Begriff gespeichert wurden.
Auch das Schneiden mehrerer solcher Trefferlisten ist im allgemeinen ein sehr schnell lösbares Problem. Etwas schwieriger, aber immer noch überschaubar, ist das Problem, auch Treffer für nur einige der eingegebenen Suchwörter zu finden.
Die komplexere Suche
Die nächste Schwierigkeitsstufe ist dann, Treffer zu finden, die über mehre Wörter hinweggehen, oder nur Teile von Wörtern treffen, im Allgemeinen, wenn die Wortgrenzen nicht mehr heilig sind.
Aber auch hier läßt sich durch vorherige Analyse der vorkommenden Sequenzen sehr viel vorherberechnen. Die Laufzeit der Anfrage wird länger durch immer mehr zusätzliche Variationen, die berücksichtigt werden müssen.
All das würde man noch immer unter “exakter” Suche verstehen. Exakte Suche ist immer schnell, da die Menge an Wörtern, die zur Auswahl stehen, nahezu keine Rolle spielt bei Einsatz z. B. von DFAs als schnelle Indexstrukturen. Möchte man nun zusätzlich die Unschärfe der Anfrage zulassen, heißt es häufig, dafür habe man Phonetik eingebaut. Und das sei vollkommend ausreichend.
Doch das ist nicht korrekt! Zunächst einmal ist eine Phonetik wie Soundex, Metaphone oder Kölner Phonetik nichts weiter als ein spezieller Zugriffsschlüssel, der seinerseits exakt abgefragt wird. Also eigentlich keine Unschärfe, sondern nur ein alternativer Zugriffscode.
Überhaupt arbeiten viele Such- und Abgleichlösungen mit Schlüsseln und sind sehr stolz darauf.
Doch mit echter Fehlertoleranz hat das nichts zu tun!
Man kann die Fehlertoleranz etwas verbessern, indem man die Anfrage “korrigiert”, d.h. man vergleicht sie mit einer Liste von wichtigen Eingabe-Worten oder -Sequenzen, sucht eine oder mehrere ähnliche aus und macht mit diesen dann wieder eine exakte Suche. Die Kombinatorik der möglichen Korrekturen wird dadurch klein gehalten und die Laufzeit dadurch erträglich. Die Unschärfe bezieht sich aber nicht auf die realen Daten, sondern auf zusätzliche Wortlisten, die separat gepflegt werden müssen.
Die Suche mit matchmaker
Bei der Entwicklung von matchmaker stand dagegen im Vordergrund, diese Art von Einschränkungen nicht zu akzeptieren. Es sollte möglich sein, mit jedem Eingabewort jedes ähnliche Wort in den Referenzdaten zu identifizieren und alle diese Interpretationsmöglichkeiten von Teilen der Eingabe mit allen anderen Möglichkeiten aller anderen Teile zu kombinieren! Und das nicht nur als Schnittmenge, sondern gleich zusammen mit der Trefferqualität, die jeder dieser Interpretationen durch eine Ähnlichkeitsberechnung zugewiesen wurde. Hierzu können alle Arten von Ähnlichkeiten zählen: Bei Datumsangaben die zeitliche Nähe, bei geographischen Angaben die örtliche Nähe, bei Zahlen die ungefähre Größe, aber besonders alle Wörter die ähnlich aussehen, ähnlich klingen, ähnliche Bedeutung haben uvm.
Die daraus resultierende kombinatorische Vielfalt wäre mit einer “exakten” Suchtechnologie überhaupt nicht zu beherrschen, insbesondere wenn dabei auch noch logische Verknüpfungen und Feldvertauschungen auch von Teilen der Anfrage zugelassen werden.
Fehlertoleranz und höchste Geschwindigkeit
matchmaker macht keine Annahmen über die Anfrage, um die Anfragezeit zu minimieren. Es macht keine Annahmen über die Art der Fehler, die auftreten können, keine Annahmen über die Datenverteilung o.ä.
matchmaker rechnet alles komplett durch und liefert am Ende das beste Gesamtergebnis. Dies alles in einer Geschwindigkeit, die selbst für exakte Suchen sehr beeindruckend ist. Die fehlertolerante Suche ist mehr als nur ein Add-On zu einer exakten Suche. Sie ist ein grundsätzlich anderer Ansatz, von dem die meisten nicht glauben würden, dass es überhaupt möglich ist, Fehlertoleranz und Geschwindigkeit derart zu kombinieren.
Hat man einmal eine solche Lösung vor Augen, merkt man, daß z.B. die Suche in Stammdaten damit wesentlich einfacher zu implementieren ist und dass das Ergebnis auch eher dem entspricht, was in einem CRM oder ERP-System gefordert ist. Man möchte nicht einfach nur irgendein Suchresultat, das relativ wahrscheinlich ist, sondern genau das eine, das die Person beschreibt, die man sucht. Und das alles, ohne dem Suchenden eine komplizierte Suchstrategie nahezulegen.
Was matchmaker nicht findet ist nicht vorhanden
Man muss sich nicht darauf verlassen, dass ein Suchschlüssel gerade den einen noch unbekannten Tippfehler in den Daten abdeckt. Wenn matchmaker einen Eintrag in den Daten nicht findet, ist dieser auch tatsächlich nicht vorhanden. Damit wächst auch das Vertrauen in das Suchergebnis wieder.
Beim Abgleichen (Matching) ist genau das ein wesentlicher Aspekt. Der Abgleich ist meistens vollautomatisch und wird z. B. zum Deduplizieren von Datenbanken benötigt. Gerade hier ist die Fähigkeit, einen Eintrag definitiv nicht zu finden, sehr wichtig. Außerdem sind die Störungen in diesem Falle auch auf beiden Seiten gleichmäßig zu finden: bei den Referenzdaten wie auch bei der Anfrage. Eine exakte Suche hätte dabei immer ein Problem.
Oftmals ist die Situation beim Abgleich ungleich schwieriger als beim Suchen, da die Fehler in der Eingabe ihren Ursprung im automatischen Lesen (OCR) haben und dadurch noch unerwarteter und häufiger sind als bei der Sucheingabe.
Matchmaker – Such- und Abgleichtechnologie für alle Anforderungen
matchmaker kann alle diese Anforderung in einer einzigen Installation erledigen. Sind die Stammdaten des Unternehmens erst einmal in matchmaker indexiert, können alle nur denkbaren Prozesse, die Zugriff darauf benötigen, über verschiedene Schnittstellen prozessoptimiert angebunden werden. Diese Erweiterung des matchmaker ist der master data hub.
exorbyte Master Data Hub – das technologische Upgrade von matchmaker
Mittlerweile hat sich sich der exorbyte Master Data Hub zu einer mächtigen Plattform für Personen und Produktdaten im Deutsch- und Englisch-sprachigen Raum entwickelt. Die Plattform wird ständig um Komponenten zur Integration von auf Stammdaten basierenden Geschäftsprozessen erweitert. Dabei handelt es sich um alle Arten von Wörterbüchern, z. B. Vornamen mit Geschlecht und Aliasen, Geschäftsformen, Firmennamen-Zerlegung uvm. , die man bei Suchanwendungen aber auch bei Datenqualitätsanwendungen braucht.
Im Bereich Suche wurde vor allem die FlexForm-Suche entwickelt, die bis hin zur Einfeldsuche, die Suchformularfelder weitgehend unabhängig von den Datenbankfeldern macht. Natürlich unterstützt matchmaker auch Facetten-Bildung, dynamische Einschränkung und vieles mehr, das für Internetanwendungen wichtig ist.
Für Deduplizierung, Anreicherung, Zusammenführung und andere Stammdaten-Prozesse stellt exorbyte einen Workflow mit manuellen Bearbeitungsstationen bereit. Ebenso ist die wachsende Datenmenge ein großes Thema, dem sich exorbyte durch immer ausgereiftere Parallelisierung und “Instant Update”-Technologien annimmt.
In den letzten Jahren wurden auch Input-Management-Prozesse mit der Extraktion von Stammdaten aus eingehenden Dokumenten unterstützt, was derzeit einmalig auf dem Markt ist. Nachdem der Master Data Hub um eine Dokumentenklassifikation ergänzt wurde, wird in Kürze auch eine OCR-Erkennung hinzugefügt, die ebenso wie alles andere bei matchmaker so tief integriert ist, dass sich alle Algorithmen gegenseitig nutzen können und dadurch ein Mehrwert gegenüber der Nutzung einzelner getrennter Komponenten entsteht.
Die exorbyte GmbH mit Hauptsitz in Konstanz ist der Spezialist für fehlertolerante Recherche- und Abgleichtechnologie zur Identifizierung von Stammdaten
Das Unternehmen entwickelt den matchmaker – die technologische Basis für intelligente, fehlertolerante High-End-Suchlösungen auf großen, strukturierten Datenmengen. Mit den weltweit führenden Recherche- und Abgleichalgorithmen bietet exorbyte eine einzigartige Technologie und wertvolle Unterstützung in strategischen und operativen Geschäftsprozessen, wie beispielsweise Data Quality, Datenrecherchen, 360° Kundensicht oder Inputmanagement.
Online-Shops, Portale, Versicherungen, Finanzdienstleister, Auskunfteien, Telekommunikationsunternehmen, Handel und Behörden vertrauen auf die leistungsstarke Software und setzten den matchmaker zur treffsicheren Suche Ihrer Produkte und zum fehlerfreien Abgleich von Stammdaten ein.
Mehr unter www.exorbyte.de
Kontakt
exorbyte GmbH
Stefan Sihler
Steinhäuserstraße 20
76135 Karlsruhe
0721-9578090
marketing@exorbyte.com
http://www.exorbyte.de