Wprowadzenie do zagadnienia Data Cleaning

Transkrypt

Wprowadzenie do zagadnienia Data Cleaning
Wprowadzenie do
zagadnienia Data Cleaning
Łukasz Ciszak
Instytut Informatyki Politechniki Warszawskiej
11.06.2008
Agenda
► Definicje
► Klasyfikacja
► Rozwiązania
2008-06-11
Wprowadzenie do Data Cleaning
2
Definicje
2008-06-11
Wprowadzenie do Data Cleaning
3
Definicje
Mówimy o danych wysokiej jakości, jeśli
są poprawnym odwzorowaniem
obiektów świata rzeczywistego, których
dotyczą.
2008-06-11
Wprowadzenie do Data Cleaning
4
Definicje
► Dane
2008-06-11
wysokiej jakości: (miary)
Pełne
(Complete)
Poprawne (Valid)
Spójne
(Consistent)
Aktualne
(Timely)
Dokładne (Accurate)
Istotne
(Relevant)
Dostępne i interpretowalne
(Accessibility/interpretability)
Wprowadzenie do Data Cleaning
5
Definicje
► „25%
of critical data within Fortune 1000
companies will continue to be inaccurate
through 2007. Poor quality customer data
costs U.S. business an estimated $611
billion dollars a year in postage, printing,
and staff overhead.”
Raport Gartner Inc., 2005
2008-06-11
Wprowadzenie do Data Cleaning
6
Definicje
► „Data
quality is the reliability and
effectiveness of data, particularly in a data
warehouse. Maintaining data quality
requires going through the data periodically
and scrubbing it”
2008-06-11
Wprowadzenie do Data Cleaning
7
Definicje
► Czyszczenie
danych (data cleaning, data cleansing,
data scrubbing) to proces wykrywania i usuwania
błędów w danych w celu zapewnienia, Ŝe dane są
wysokiej jakości.
► „Computational processing to remove noise and
artifacts from digital data prior to storage.”
► „Data cleaning is the process of improving the
quality of the data by modifying its form or
content, for example, by removing or correcting
erroneous data values.”
„MineSet Enterprise Edition User's Guide”
2008-06-11
Wprowadzenie do Data Cleaning
8
Definicje
► Gdzie
się z tego
korzysta:
MDM
DW
OLTP
► Po
co to jest
potrzebne:
Garbage Input –
Garbage Output
2008-06-11
Wprowadzenie do Data Cleaning
9
Definicje
► Przykłady
2008-06-11
z praktyki
zwroty korespondencji,
obsługa rezygnacji
lotnicy,
podwójne kredyty.
Wprowadzenie do Data Cleaning
10
Klasyfikacja błędów danych
2008-06-11
Wprowadzenie do Data Cleaning
11
Definicje
Problemy jakości danych
Problemy dla jednego źródła
Poziom modelu
danych
2008-06-11
Poziom rekordu
Problemy dla wielu źródeł
Poziom modelu
danych
Wprowadzenie do Data Cleaning
Poziom rekordu
12
Definicje
► Błędy
na poziomie modelu danych (1 źródło):
Przyczyny
►Brak
więzów integralności
►Nieumiejętny projekt bazy
Konsekwencje
►Nieunikalność
►Złamane
więzy integralności
►Sprzeczne dane
2008-06-11
Wprowadzenie do Data Cleaning
13
Definicje
► Niedopuszczalne
wartości
Data urodzenia: 30.13.1970
► ZaleŜności
między atrybutami
Data urodzenia: 1970; Wiek: 15
► Nieunikalność
R1={ID=100; Nazwisko=X} R2={ID=100;
Nazwisko=Y}
► Więzy
referencyjne
Wydział: 25 (nieistniejący)
2008-06-11
Wprowadzenie do Data Cleaning
14
Definicje
► Błędy
na poziomie rekordu (1 źródło)
Przyczyna:
►błędy
wprowadzania danych
Konsekwencje
►Niepoprawny
zapis (literówki, błędy ortograficzne,
przestawienia, OCR)
►Duplikaty / nadmiarowość
2008-06-11
Wprowadzenie do Data Cleaning
15
Definicje
► Brakujące
wartości
Telefon: 999-999-9999
► Błędna
pisownia:
Miasto: Baiłystok, Łudź, Warsxawa
► Niejasne
znaczenie:
Doświadczenie: B
► Połączone
wartości:
Nazwisko: „Stefan Batory”
► Źle
umieszczone wartości:
miasto: mazowieckie
2008-06-11
Wprowadzenie do Data Cleaning
16
Definicje
►
ZaleŜności między atrybutami
Miasto: Pruszków, województwo: podlaskie
►
Przestawienia:
Imie_i_Nazwisko1: „Anna Nowak”; imie_i_Nazwisko2: „Kowalski
Jan”
►
Duplikaty:
R1={„Jan Nowak”,...} R2={„J. Nowak”,...}
►
Sprzeczne rekordy:
R1={„Jan Nowak”,”09.03.1981”,...}
R2={„Jan Nowak”,”03.09.1981”,...}
►
Błędne referencje:
R1={„Jan Nowak”,17}
2008-06-11
Wprowadzenie do Data Cleaning
17
Definicje
► Błędy
na poziomie modelu danych (wiele źródeł):
Przyczyny
► RóŜne
modele danych
Konsekwencje
► Konflikty
nazewnicze
homonimy
synonimy
► Konflikty
strukturalne
róŜne modele danych,
róŜne typy danych,
róŜne więzy integralności.
2008-06-11
Wprowadzenie do Data Cleaning
18
Definicje
► Błędy
na poziomie rekordu
Występują wszystkie błędy związane z
pojedynczymi źródłami danych
RóŜne reprezentacje tych samych danych
(domeny, poziomy agregacji, jednostki, róŜne
daty powstania danych)
Te same rekordy w dwóch róŜnych bazach
2008-06-11
Wprowadzenie do Data Cleaning
19
Definicje
2008-06-11
Wprowadzenie do Data Cleaning
20
Rozwiązania
2008-06-11
Wprowadzenie do Data Cleaning
21
Rozwiązania
Obszary czyszczenia danych:
► Wykrywanie duplikatów
► transformacje schematów
► Standaryzacja danych
► Poprawa danych
2008-06-11
Wprowadzenie do Data Cleaning
22
Rozwiązania
► Wymagania
dla rozwiązań czyszczenia
danych
Wykrywać i usuwać wszystkie powaŜne błędy i
niespójności danych pochodzących zarówno z
jednego, jak i wielu źródeł
Powinno być wykonywane automatycznie w celu
ograniczenia ludzkiej interwencji
Rozszerzalne
Powiązane z metadanymi.
Wiarygodne i wydajne
2008-06-11
Wprowadzenie do Data Cleaning
23
Rozwiązania
2008-06-11
Wprowadzenie do Data Cleaning
24
Rozwiązania
► Kroki czyszczenia danych:
Analiza danych (profilowanie)
Definicja transformacji
Weryfikacja
Transformacja danych
Propagacja poprawnych danych wstecz
Monitorowanie jakości danych
2008-06-11
Wprowadzenie do Data Cleaning
25
Rozwiązania
► Profilowanie
danych (profiling)
Niedopuszczalne wartości
► Kardynalność
wartości
► max,
min
► Wariancja, odchylenie standardowe
Błędny zapis
► Wartości
atrybutów - sortowanie
Brakujące wartości
► null
► Wartości
domyślne
RóŜniące się wartości kolumn
► Wartości
tego samego atrybutu z innej tabeli
Duplikaty
► Kardynalność
2008-06-11
+ unikalność
Wprowadzenie do Data Cleaning
26
Rozwiązania
► Transformacje
Ekstrakcja wartości
Standaryzacja
Walidacja/poprawa błędów
►Ekrany
2008-06-11
standaryzacyjne
Geocoding
Wykrywanie duplikatów
Normalizacja/denormalizacja
Agregacja
Wprowadzenie do Data Cleaning
27
Rozwiązania
► Transformacje
Narzędzia ETL
►Informatica,
DataStage, AbInitio, OWB,...
Baza danych
►Widoki
►Procedury
2008-06-11
składowane
Wprowadzenie do Data Cleaning
28
Rozwiązania
► Pomysły
Zastosowanie metod data mining do
automatycznej generacji ekranów
standaryzacyjnych
Zastosowanie grupowania do znajdywania
duplikatów
Zastosowanie data mining do klasyfikacji
duplikatów
2008-06-11
Wprowadzenie do Data Cleaning
29
Bibliografia
„The Data Warehouse ETL Toolkit ”, Ralph Kimball, Joe Caserta
„The Data Warehouse Toolkit”, Ralph Kimball, Margy Ross
„Data Cleaning: Problems and Current Approaches”, Erhard Rahm, Hong
Hai Do
„Data Quality and Record Linkage Techniques ”, Thomas N. Herzog, Fritz J.
Scheuren, William E. Winkler
2008-06-11
Wprowadzenie do Data Cleaning
30
Dziękuję za uwagę.

Podobne dokumenty