180 likes | 263 Views
Modellierung von Data Cleansing Workflows. Dipl.-Inf. Heiko Müller Lehrstuhl für Datenbanken und Informationssysteme Humboldt-Universität zu Berlin. Gründungsveranstaltung des German Chapters von DAMA International, 07. Juni 2002, Leipzig. Einführung.
E N D
Modellierung vonData Cleansing Workflows Dipl.-Inf. Heiko Müller Lehrstuhl für Datenbanken und Informationssysteme Humboldt-Universität zu Berlin Gründungsveranstaltung des German Chapters von DAMA International, 07. Juni 2002, Leipzig Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Einführung • Zwei wesentliche Voraussetzungen sind zu erfüllen • Fähigkeit zum Erkennen von Fehlern/Inkonsistenzen • Ausreichend Informationen/Wissen zur Korrektur • Ziel ist eine formale Beschreibung des Data Cleansing Prozeß für ... • relationale Daten • eine Datenquelle Data Cleansing bezeichnet den (semi-)automatischen Prozeß des Auffindens und Beseitigens von Fehlern und Inkonsistenzen mit dem Ziel, die Qualität einer Daten- menge zu verbessern Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
MITGLIEDER Pass# Name E.datum G.datum Alter Geschl. 325-02712 FRIEDEL, Brad 23.09.97 01.04.78 13 M 325-02591 HEJDUK, Frankie 29-08-97 23.12.80 21 M 325-02575 AGOOS, Jeff 20.08.97 05.06.91 11 Männl. 325-03739 JONES, Cobi 30.10.98 03.05.01 2 W 325-04081-p WOLFF, Josh 04/10/93 10.11.56 45 M passiv MC BRIDE, Sue 01.10.97 02.09.70 31 F passiv MATHIS, Clint 23.07.96 06.19.90 11 M LEWIS, Jennifer 01.03.01 12.12.80 21 M Fehler erkennen & beseitigen • Fehler sind Abweichungen vom realen Wert • Unter Inkonsistenzen versteht man u.a. ... • Widersprüche in den Daten • Abweichungen von einem vorgegebenen Format • Kodierte Information in den Attributwerten • Beispiel: Mitgliederliste eines Sportvereins Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Fehler erkennen & beseitigen (cont.) • Zum Erkennen und Beseitigen von Fehlern und Inkonsistenzen benötigt man Wissen über ... • die korrekten Werte der Attribute eines Objekts • das erwartete Format der Daten • Dieses Wissen ist gegeben durch ... • externe Daten- bzw. Wissensquellen • Bedingungen, die an die Werte gestellt werden • Data Cleansing Verfahren sind begrenzt durch ... • die Verfügbarkeit des Wissen, bzw. die Möglichkeiten zu dessen Herleitung • die Fähigkeiten zur Formulierung der Bedingungen Oftmals ist keine 100%ig exakte Erkennung und Korrektur von Fehlern möglich Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Name Age Weight Sue 27 53 Name Age Alf 13 Bart 45 Ed 27 Gil 33 Joe 71 Sue 25 Zoe 30 Fehler erkennen & beseitigen (cont.) Analyse der Daten mit Hilfe statistischer Methoden Sue ist 25 Jahre alt Name Age Height Sue 25 172 Verwenden externer Referenz- quellen Betrachte Werte zwischen 18 und 65 als korrekt, alle anderen als falsch Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Data Cleansing Function RTemp1(X) tTemp11 Cleansing workflow tTemp12 tTemp13 ... tTemp1m c1 Data Cleansing • Der Data Cleansing Prozeß umfaßt ... • Vereinheitlichung (21.02.2002 vs. 2/21/02, KG vs. Pfund) • Extraktion von Werten (325-04587p Passiv=TRUE) • Validierung von Werten und ggf. ... • ... Korrektur durch Berechnung korrekter Werte Beispiele: Name NOT NULL Format(G.datum, DD.MM.JJJJ) Alter 18 Jahr(Jetzt() - G.datum) = Alter t Sk: ai = t.a Rs(X) RT(X) ts1 tT1 ts2 tT2 ts3 tT3 ... ... tsm tT n c1 ... ck Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Sue Office 27 2.150 M Data Cleansing (cont.) • Data Cleansing als spiezielle Form von integrity constraint enforcement Sue Office 25 3.000 F Bob Sale 42 1.000 F Ed Office 25 2.500 M John Office 75 3.000 M Repositories Integrity Constraints Integrity Constraint Enforcem. C1 C2 C3 C4 Satisfying tuples Sue Office 25 3.000 F C1 C2 C3 C4 Bob Sale 42 1.000 F Dissatisfying tuples Ed Office 25 2.500 M C1 C2 C3 C4 John Office 75 3.000 M Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
? Data Cleansing (cont.) • Unterschiede zum integrity constraint enforcement Ci Nein Ja Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Data Cleansing Function • Repräsentiert Bedingung an die Tupel einer Relation R(X) • Validiert und ändert den Wert eines Attributes oder ... • ... erzeugt eine Menge von Attributwerten • besitzt Eingabe- und Ausgabeschema • Erhält als Eingabe ... • ein Tupel der Relation R(X) • die Relation R(X) • zusätzliche Relationen {S1, ... , Sn} als Referenz • Zugriff auf eine oder mehrere Attribute Ai X • Menge an Vorbedingungen für die Attribute Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Data Cleansing Function (cont.) Data Cleansing Function (DCF) R(X), X = {A1:D1, ..., An:Dn} {S1(X1), ..., Sm(Xm)} {C1, ..., Ck} Ci Xc = {Ac1, ..., Acu} {Sr1, ..., Srv} {Cp1, ..., Cpw} R(X‘) {Ai X‘} {C1, ..., Ck} Ci Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Data Cleansing Function (cont.) Data Cleansing Function (DCF) MITGLIEDER(Pass#, Name, E.datum,...) C1=Valid(E.datum) Ci Xc = {A1:Date} {Valid(E.datum)} R(X‘) = R(X) {E.datum} {Valid(E.datum)} E.datum Jetzt() Ci: A1 Jetzt() Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Data Cleansing Function (cont.) • Zusätzlich besitzt die Data Cleansing Function eine Korrekturfunktion • Korrigiert Werte, welche die Bedingung initial nicht erfüllen • Beispiel: • Bestimme minimale edit distance, um Bedingung zu erfüllen • 21.02.2003 21.02.2002 • 21.02.2003 21.02.2001 • Bewertung der Korrektur notwendig Data Cleansing Function (DCF) Ci Nein Ja K Ci: A1 Jetzt() Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Data Cleansing Function (cont.) • Graphische Repräsentation • Spezifikation der Bedingungen (constraints) durch den Domänenexperten • Gleiches für die Korrekturfunktion • Zusätzlich versuchen anhand von Beispielen zu lernen C K Exception Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Data Cleansing Workflow • Data Cleansing Workflow ist ein Ausführungsplan (schedule) für die spezifizierten DCFs R R‘ • Repräsentiert eine Konjunktion der Bedingungen DCFs (DCF1, DCF2, ..., DCFn) t R‘: C1 C2 C3 C4 ... Cn Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Data Cleansing Workflow (cont.) • Alternative Ausführungspläne und parallele Ausführung sind möglich • Letzteres stellt ein mögliches Optimierungskriterium dar • Wichtig: • Die Vorbedingungen müssen erfüllt sein • Zyklen sind nicht zulässig D D‘ Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Data Cleansing Workflow (cont.) • Weitere logische Operatoren sind für die Verknüpfung der Bedingungen denkbar (C1 C2) C3 C1 C2 C1 C2 C1 C2 C3 • Data Cleansing Workflow wird ausgehend vom logischen Ausdruck bestimmt Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Zusammenfassung • Data Cleansing ist beschränkt durch die Fähigkeit Fehler erkennen und beheben zu können • Darstellbar als abstrakte Form des integrity constraint enforcement • Beschreibung mit Hilfe von Data Cleansing Functions • Führen ggf. Korrekturen aus • Ausführung der Data Cleansing Functions in Form eines Workflows Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin
Fragen? Data Cleansing? Dipl.-Inf. Heiko Müller - Lehrstuhl für Datenbanken und Informationssysteme - Humboldt-Universität zu Berlin