Doubletten-(Ähnlichkeiten-)Daten-Konsolidierung
Tom
- programmiertechnik
0 Matzberger Marcus0 Tom0 Frank (no reg)0 Tom0 Frank (no reg)0 Tom
Hello,
hat sich schon mal jemand von Euch intensiver mit der Datenkonsolidierung bei Vorhandensein von Stammdaten aus unterschiedlichen Quellen beschäftigt?
Ich erhalte Objektbeschreibungen aus unterschiedlichsten Quellen. Jeder Einspeiser hat ein eigenes Datenformat. Ich habe darauf auch keinen Einfluss, sondern kann mich glücklich schätzen, überhaupt Daten zu erhalten.
Der wesentliche Kern (größte übereinstimmende Merkmale) besteht aus Postleitzahl (habe ich bereits harmonisiert) und Strasse (bereits in einen einheitlichen Schlüssel umgewandelt). Es gäbe jetzt theoretisch noch einen Namen, aber die sind sehr unterschiedlich formatiert.
Nun hat die eine Quelle eine Telefonnumer, die andere auch, aber ggf. eine andere oder in anderer Schreibweise, die eine hat Bemerkungen im Klartext, die andere hat keine, oder ganz andere oder in anderer Reihenfolge.
Ich muss nun daraus einen möglichst kompakten Datenstamm erzeugen, der alle relevanten Daten (relvant ist, was häufig mit Wert auftritt) in einem Kerndatensatz zusammenfasst. Darüberhinaus muss ein Modell entwickelt werden, wie die übrigen Daten möglichst erhalten bleiben.
Ich möchte mir nun möglichst ersparen, ca. 7.500 Datensätze per Gedächtnis zu ca. 4.500 zusammenzuführen.
Wer hat gute Ideen, wie ich da schon mal automatische Vorauslese betreiben kann und wie ich dann damit weiter verfahren sollte?
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Hallo,
Der wesentliche Kern (größte übereinstimmende Merkmale) besteht aus Postleitzahl (habe ich bereits harmonisiert) und Strasse (bereits in einen einheitlichen Schlüssel umgewandelt). Es gäbe jetzt theoretisch noch einen Namen, aber die sind sehr unterschiedlich formatiert.
Ich gehe davon aus, dass zumindest eine Trennung in Vor- und Nachname erfolgt ist. Dann könntest du einen Teilstring des Namens aus einem Datensatz mit den Datensätzen vergleichen, die aufgrund Postleitzahl (und Straße) in Betracht kommen. Vorsicht gilt natürlich bei Namen wie Mayr/Meier oder Schmid/Schmidt, die in verschiedenen Schreibweisen vorkommen, deshalb auch Teilsstring.
Je nach Datenbank stehen auch Funktionen wie SOUNDEX() zur Verfügung, die solche Ähnlichkeiten berücksichtigen, außerhalb der englichen Sprache sind sie allerdings nicht immer zuverläßig.
Darüberhinaus muss ein Modell entwickelt werden, wie die übrigen Daten möglichst erhalten bleiben.
Man könnte eine Tabelle anlegen, in der die ursprünglichen Datensätze abgelegt werden, verbunden mit dem bereinigten Parter und als historisch gekennzeichnet.
Grüße
Marcus
Hello Marcus,
Trennung von Vorname und Nachname gibts nicht, da es um Geschäftsobjekte geht.
Da nennt der eine Adresslieferant aber nun die Trivialbezeichnung, während der andere die amtliche Bezichnung nennt und der dritte den Adressaten (Ansprechpartner)
Einzige relativ verlässliche Daten sind PLZ und Strasse
Die Doubletten als solch habe ich auch schon gefunden (die meisten zumindest).
Mit geht es nun darum, wie ich die Detaildaten intelligent verdichte, ohne wesentliche zu verlieren.
Es sind ungefähr 63 unterschiedliche "Lieferanten" und fast jeder hat andere Vorstellungen davon, was über die Objkete gespeichert werden muss und in welchem Format.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Hi,
abhängig vom Format (ich tipp mal drauf, dass du alles in einer Art Text bekommst) könnte man einen bis x Parser schreiben, die anhand von Tokens arbeiten, Muster in den Quellen abfragen und damit eine Art Liste von verschiedenen Informationstypen erstellen, die bei jedem Parse-Vorgang gegengecheckt wird, wobei dann Ähnlichkeiten entdeckt werden können.
Die geparsten Werte und Informationstypen lassen sich dann - je nach Wunsch - in einer DB oder auch XML-Flatfile persistieren.
Sicher nicht ganz trivial ... wenn ich Zeit hätte, würd ich mich sogar mal an soetwas versuchen.
Aber, genau, beauftrage doch eine nette kompetente Softwarefirma (in D) damit, so sicherst du Arbeitsplätze in Deutschland. ;-)
Ciao, Frank
Hello,
Aber, genau, beauftrage doch eine nette kompetente Softwarefirma (in D) damit, so sicherst du Arbeitsplätze in Deutschland. ;-)
Ich denke, dann wird man sich eher für ein kleines Team an intelligenten und schnellen BüromitarbeiterInnen entscheiden...
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Hi,
naja, auch gut, auch dies erhält oder schafft Arbeitsplätze, speziell für die mittlere soziale Schicht (das ist nicht abwertend gemeint).
Aber auch so hast du immer noch das Problem eine gemeingültige Struktur für die Daten zu finden damit die BüromitarbeiterInnen die Daten charakterisieren können.
Ciao, ciao, Frank
Hello,
Aber auch so hast du immer noch das Problem eine gemeingültige Struktur für die Daten zu finden damit die BüromitarbeiterInnen die Daten charakterisieren können.
So ist es. Und es muss ein Algorithmus gefunden werden, nach dem verdichtet wird.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Fr¦hlichen Mittwoch,
genau den Algorithmus meinte ich mit
meinte. Wer (Person) die Daten zum ersten Mal liest und keiner gegebenen Charakterisierung (Adresse, Ansprechpartner, Titel, Beschreibung ...) zuordnen kann, legt ein entsprechendes Charaktermerkmal an, welches allen anderen parallel-arbeitenden dann ebenfalls mit zur weiteren Verf±gung steht.
Ciao, Frank