Czyszczenie danych - Data cleansing

Czyszczenie danych lub czyszczenie danych to proces wykrywania i poprawiania (lub usuwania) uszkodzonych lub niedokładnych rekordów z zestawu rekordów, tabeli lub bazy danych i odnosi się do identyfikowania niekompletnych, niepoprawnych, niedokładnych lub nieistotnych części danych, a następnie zastępowania, modyfikowania, lub usuwanie brudnych lub zgrubnych danych. Czyszczenie danych może być wykonywane interaktywnie za pomocą narzędzi do przetwarzania danych lub jako przetwarzanie wsadowe za pomocą skryptów .

Po oczyszczeniu zbiór danych powinien być spójny z innymi podobnymi zbiorami danych w systemie. Wykryte lub usunięte niespójności mogły być pierwotnie spowodowane błędami wprowadzania użytkownika, uszkodzeniem transmisji lub przechowywania lub różnymi definicjami słowników danych podobnych jednostek w różnych magazynach. Czyszczenie danych różni się od walidacji danych tym, że walidacja prawie zawsze oznacza, że ​​dane są odrzucane z systemu podczas wprowadzania i są wykonywane w momencie wprowadzania, a nie na partiach danych.

Właściwy proces czyszczenia danych może obejmować usuwanie błędów typograficznych lub walidację i poprawianie wartości na znanej liście encji. Weryfikacja może być ścisła (np. odrzucając dowolny adres, który nie ma prawidłowego kodu pocztowego ) lub z rozmytym lub przybliżonym dopasowaniem ciągów (np. poprawianie rekordów, które częściowo pasują do istniejących, znanych rekordów). Niektóre rozwiązania do czyszczenia danych wyczyszczą dane przez sprawdzenie krzyżowe ze zweryfikowanym zestawem danych. Powszechną praktyką czyszczenia danych jest ulepszanie danych, gdzie dane są uzupełniane przez dodanie powiązanych informacji. Na przykład dodawanie adresów z numerami telefonów powiązanymi z tym adresem. Czyszczenie danych może również obejmować harmonizację (lub normalizację) danych, co jest procesem łączenia danych o „różnych formatach plików, konwencji nazewnictwa i kolumn” i przekształcaniu ich w jeden spójny zestaw danych; prostym przykładem jest rozwinięcie skrótów („st, rd itd.” na „ulica, droga itd.”).

Motywacja

Administracyjnie niepoprawne, niespójne dane mogą prowadzić do fałszywych wniosków i niewłaściwych inwestycji zarówno na skalę publiczną, jak i prywatną. Na przykład rząd może chcieć przeanalizować dane ze spisu ludności, aby zdecydować, które regiony wymagają dalszych wydatków i inwestycji w infrastrukturę i usługi. W takim przypadku ważny będzie dostęp do wiarygodnych danych, aby uniknąć błędnych decyzji fiskalnych. W świecie biznesu nieprawidłowe dane mogą być kosztowne. Wiele firm korzysta z baz danych informacji o klientach, które rejestrują dane, takie jak dane kontaktowe, adresy i preferencje. Na przykład, jeśli adresy są niespójne, firma poniesie koszty ponownego wysłania poczty lub nawet utraty klientów.

Jakość danych

Dane wysokiej jakości muszą spełniać szereg kryteriów jakości. Należą do nich:

  • Ważność : Stopień, w jakim miary są zgodne ze zdefiniowanymi regułami biznesowymi lub ograniczeniami (zobacz także Ważność (statystyki) ). Kiedy do projektowania systemów przechwytywania danych wykorzystuje się nowoczesną technologię baz danych, poprawność danych jest dość łatwa do zapewnienia: nieprawidłowe dane pojawiają się głównie w starszych kontekstach (gdzie ograniczenia nie zostały zaimplementowane w oprogramowaniu) lub gdy zastosowano nieodpowiednią technologię przechwytywania danych (np. arkusze kalkulacyjne, gdzie bardzo trudno jest ograniczyć to, co użytkownik zdecyduje się wprowadzić do komórki, jeśli nie jest używana walidacja komórki). Ograniczenia danych dzielą się na następujące kategorie:
    • Ograniczenia typu danych – np. wartości w określonej kolumnie muszą być określonego typu danych, np. Boolean, numeryczne (całkowite lub rzeczywiste), data itp.
    • Ograniczenia zakresu: zazwyczaj liczby lub daty powinny mieścić się w określonym zakresie. Oznacza to, że mają minimalne i/lub maksymalne dopuszczalne wartości.
    • Ograniczenia obowiązkowe: Niektóre kolumny nie mogą być puste.
    • Unikalne ograniczenia: pole lub kombinacja pól musi być unikatowa w zestawie danych. Na przykład dwie osoby nie mogą mieć tego samego numeru ubezpieczenia społecznego.
    • Ograniczenia zestawu-członkostwa : wartości dla kolumny pochodzą z zestawu wartości lub kodów dyskretnych. Na przykład płeć osoby może być żeńska, męska lub niebinarna.
    • Ograniczenia klucza obcego : Jest to bardziej ogólny przypadek członkostwa w zestawie. Zestaw wartości w kolumnie jest zdefiniowany w kolumnie innej tabeli, która zawiera unikalne wartości. Na przykład w bazie danych podatników w USA kolumna „stan” musi należeć do jednego ze zdefiniowanych stanów lub terytoriów w USA: zbiór dozwolonych stanów/terytoriów jest rejestrowany w oddzielnej tabeli stanów. Termin klucz obcy jest zapożyczony z terminologii relacyjnych baz danych.
    • Wzorce wyrażeń regularnych : czasami pola tekstowe będą musiały zostać zweryfikowane w ten sposób. Na przykład numery telefonów mogą wymagać wzoru (999) 999-9999.
    • Weryfikacja międzypolowa : niektóre warunki, które wykorzystują wiele pól, muszą zostać spełnione. Na przykład w medycynie laboratoryjnej suma składników różnicowej liczby białych krwinek musi być równa 100 (ponieważ wszystkie są procentami). W szpitalnej bazie danych data wypisu pacjenta ze szpitala nie może być wcześniejsza niż data przyjęcia.
  • Dokładność : Stopień zgodności miary z normą lub wartością rzeczywistą — patrz również Dokładność i precyzja . Dokładność jest bardzo trudna do osiągnięcia przez czyszczenie danych w ogólnym przypadku, ponieważ wymaga to dostępu do zewnętrznego źródła danych, które zawiera prawdziwą wartość: takie dane „złotego standardu” są często niedostępne. Dokładność została osiągnięta w niektórych kontekstach czyszczenia, w szczególności danych kontaktowych klientów, dzięki wykorzystaniu zewnętrznych baz danych, które dopasowują kody pocztowe do lokalizacji geograficznych (miasto i stan), a także pomagają zweryfikować, czy adresy ulic w tych kodach pocztowych rzeczywiście istnieją.
  • Kompletność : stopień, w jakim znane są wszystkie wymagane środki. Niekompletność jest prawie niemożliwa do naprawienia za pomocą metodologii czyszczenia danych: nie można wywnioskować faktów, które nie zostały uchwycone podczas początkowego rejestrowania danych. (W niektórych kontekstach, np. danych z wywiadu, może być możliwe naprawienie niekompletności poprzez powrót do pierwotnego źródła danych, tj. ponownego wywiadu z podmiotem, ale nawet to nie gwarantuje sukcesu z powodu problemów z przypomnieniem - np. w wywiad w celu zebrania danych na temat spożycia żywności, prawdopodobnie nikt nie pamięta dokładnie, co jadł sześć miesięcy temu. W przypadku systemów, które nalegają, aby niektóre kolumny nie były puste, można obejść problem, wyznaczając wartość, która wskazuje „ nieznane” lub „brakujące”, ale podanie wartości domyślnych nie oznacza, że ​​dane zostały uzupełnione.)
  • Spójność : stopień, w jakim zestaw miar jest równoważny w różnych systemach (zobacz także Spójność ). Niespójność występuje, gdy dwie pozycje danych w zestawie danych są ze sobą sprzeczne: np. klient jest zarejestrowany w dwóch różnych systemach jako mający dwa różne adresy bieżące i tylko jeden z nich może być poprawny. Usunięcie niespójności nie zawsze jest możliwe: wymaga różnych strategii – np. podjęcia decyzji, które dane zostały zarejestrowane później, które źródło danych jest prawdopodobnie najbardziej wiarygodne (ta ostatnia wiedza może być specyficzna dla danej organizacji) lub po prostu próby znaleźć prawdę, testując oba elementy danych (np. dzwoniąc do klienta).
  • Jednorodność : Stopień, w jakim zestaw danych mierzy się przy użyciu tych samych jednostek miary we wszystkich systemach (zobacz także Jednostka miary ). W zestawach danych zebranych z różnych lokalizacji waga może być rejestrowana w funtach lub kilogramach i musi zostać przekonwertowana na pojedynczą miarę za pomocą przekształcenia arytmetycznego.

Termin integralność obejmuje dokładność, spójność i niektóre aspekty walidacji (patrz także integralność danych ), ale rzadko jest używany jako taki w kontekście czyszczenia danych, ponieważ jest niewystarczająco szczegółowy. (Na przykład „ integralność referencyjna ” jest terminem używanym w odniesieniu do egzekwowania ograniczeń kluczy obcych powyżej).

Proces

  • Audyt danych : dane są poddawane audytowi za pomocą metod statystycznych i bazodanowych w celu wykrycia anomalii i sprzeczności: to ostatecznie wskazuje cechy anomalii i ich lokalizację. Kilka komercyjnych pakietów oprogramowania pozwala określić różnego rodzaju ograniczenia (za pomocą gramatyki zgodnej ze standardowym językiem programowania, np. JavaScript lub Visual Basic), a następnie generować kod, który sprawdza dane pod kątem naruszenia tych ograniczeń. Ten proces jest opisany poniżej w punktach „specyfikacja przepływu pracy” i „wykonywanie przepływu pracy”. W przypadku użytkowników, którzy nie mają dostępu do zaawansowanego oprogramowania czyszczącego, pakiety baz danych mikrokomputerów, takie jak Microsoft Access lub File Maker Pro, pozwolą również na przeprowadzanie takich kontroli na zasadzie „ograniczenie po ograniczeniu” w sposób interaktywny, w wielu przypadkach przy niewielkim lub zerowym programowaniu. .
  • Specyfikacja przepływu pracy : wykrywanie i usuwanie anomalii odbywa się za pomocą sekwencji operacji na danych znanej jako przepływ pracy. Jest on określony po procesie audytu danych i ma kluczowe znaczenie dla uzyskania końcowego produktu wysokiej jakości danych. Aby uzyskać prawidłowy przepływ pracy, należy dokładnie rozważyć przyczyny anomalii i błędów w danych.
  • Wykonanie przepływu pracy : Na tym etapie przepływ pracy jest wykonywany po zakończeniu jego specyfikacji i zweryfikowaniu jego poprawności. Implementacja przepływu pracy powinna być wydajna, nawet w przypadku dużych zestawów danych, co nieuchronnie stanowi kompromis, ponieważ wykonanie operacji czyszczenia danych może być kosztowne obliczeniowo.
  • Przetwarzanie końcowe i kontrola : Po wykonaniu przepływu pracy oczyszczania wyniki są sprawdzane w celu sprawdzenia poprawności. Dane, których nie można było poprawić podczas wykonywania przepływu pracy, są w miarę możliwości poprawiane ręcznie. Rezultatem jest nowy cykl w procesie czyszczenia danych, w którym dane są ponownie poddawane audytowi, aby umożliwić określenie dodatkowego przepływu pracy w celu dalszego czyszczenia danych poprzez automatyczne przetwarzanie.

Dobrej jakości dane źródłowe mają związek z „kulturą jakości danych” i muszą być inicjowane na szczycie organizacji. Nie chodzi tylko o wdrożenie silnych kontroli walidacji na ekranach wejściowych, ponieważ prawie bez względu na to, jak silne są te kontrole, użytkownicy często mogą je obejść. Istnieje dziewięcioetapowy przewodnik dla organizacji, które chcą poprawić jakość danych:

  • Zadeklaruj zaangażowanie na wysokim poziomie w kulturę jakości danych
  • Przeprowadź reorganizację procesów na poziomie wykonawczym
  • Wydawaj pieniądze, aby poprawić środowisko wprowadzania danych
  • Wydawaj pieniądze na poprawę integracji aplikacji
  • Wydawaj pieniądze, aby zmienić sposób działania procesów
  • Promuj kompleksową świadomość zespołu
  • Promuj współpracę międzywydziałową
  • Publicznie świętuj doskonałość jakości danych
  • Nieustannie mierz i poprawiaj jakość danych

Inne obejmują:

  • Parsing : do wykrywania błędów składniowych. Parser decyduje, czy ciąg danych jest akceptowalny w ramach dozwolonej specyfikacji danych. Jest to podobne do sposobu, w jaki parser współpracuje z gramatykami i językami .
  • Transformacja danych : Transformacja danych umożliwia mapowanie danych z podanego formatu do formatu oczekiwanego przez odpowiednią aplikację. Obejmuje to konwersje wartości lub funkcje translacji, a także normalizację wartości liczbowych w celu uzyskania zgodności z wartościami minimalnymi i maksymalnymi.
  • Eliminacja duplikatów : wykrywanie duplikatów wymaga algorytmu do określania, czy dane zawierają zduplikowane reprezentacje tej samej jednostki. Zazwyczaj dane są sortowane według klucza, który przybliża zduplikowane wpisy w celu szybszej identyfikacji.
  • Metody statystyczne : Analizując dane przy użyciu wartości średniej , odchylenia standardowego , zakresu lub algorytmów grupowania , ekspert może znaleźć wartości, które są nieoczekiwane, a tym samym błędne. Chociaż korekta takich danych jest trudna, ponieważ prawdziwa wartość nie jest znana, można ją rozwiązać, ustawiając wartości na średnią lub inną wartość statystyczną. Metody statystyczne można również wykorzystać do obsługi brakujących wartości, które można zastąpić jedną lub większą liczbą prawdopodobnych wartości, które zwykle uzyskuje się za pomocą rozbudowanych algorytmów wzbogacania danych .

System

Podstawowym zadaniem tego systemu jest znalezienie odpowiedniej równowagi między naprawą brudnych danych a utrzymywaniem danych jak najbliżej oryginalnych danych ze źródłowego systemu produkcyjnego. To wyzwanie dla architekta Extract, transform, load . System powinien oferować architekturę, która może oczyszczać dane, rejestrować zdarzenia dotyczące jakości oraz mierzyć/kontrolować jakość danych w hurtowni danych . Dobrym początkiem jest przeprowadzenie dokładnej analizy profilowania danych , która pomoże określić wymaganą złożoność systemu czyszczenia danych, a także dać wyobrażenie o aktualnej jakości danych w systemie(ach) źródłowym.

Ekrany jakości

Częścią systemu oczyszczania danych jest zestaw filtrów diagnostycznych zwanych ekranami jakości. Każdy z nich implementuje test w przepływie danych, który w przypadku niepowodzenia rejestruje błąd w schemacie zdarzenia błędu. Ekrany jakości są podzielone na trzy kategorie:

  • Ekrany kolumnowe. Testowanie poszczególnych kolumn, np. pod kątem nieoczekiwanych wartości, takich jak wartości NULL ; wartości nienumeryczne, które powinny być numeryczne; wartości poza zakresem; itp.
  • Ekrany strukturalne. Są one używane do testowania integralności różnych relacji między kolumnami (zazwyczaj klucze obce/podstawowe) w tej samej lub różnych tabelach. Są one również używane do sprawdzania, czy grupa kolumn jest prawidłowa zgodnie z pewną definicją strukturalną, której powinna przestrzegać.
  • Ekrany reguł biznesowych. Najbardziej złożony z trzech testów. Testują, aby sprawdzić, czy dane, być może w wielu tabelach, są zgodne z określonymi regułami biznesowymi. Przykładem może być to, że jeśli klient jest oznaczony jako określony typ klienta, należy przestrzegać reguł biznesowych, które definiują tego rodzaju klienta.

Gdy ekran jakości zarejestruje błąd, może zatrzymać proces przepływu danych, wysłać wadliwe dane w inne miejsce niż system docelowy lub oznaczyć dane. Ta ostatnia opcja jest uważana za najlepsze rozwiązanie, ponieważ pierwsza opcja wymaga, aby ktoś za każdym razem musiał ręcznie radzić sobie z problemem, a druga oznacza brak danych w systemie docelowym ( integralność ) i często nie jest jasne, co ma się stać do tych danych.

Krytyka istniejących narzędzi i procesów

Większość narzędzi do czyszczenia danych ma ograniczenia w użyteczności:

  • Koszty projektu : koszty zazwyczaj liczone w setkach tysięcy dolarów
  • Czas : opanowanie oprogramowania do czyszczenia danych na dużą skalę jest czasochłonne
  • Bezpieczeństwo : walidacja krzyżowa wymaga współdzielenia informacji, dając aplikacji dostęp do różnych systemów, w tym wrażliwych starszych systemów

Schemat zdarzenia błędu

Schemat zdarzenia błędu zawiera zapisy wszystkich zdarzeń błędów zgłoszonych przez ekrany jakości. Składa się z tabeli Faktów o błędach z kluczami obcymi do tabel trzech wymiarów, które reprezentują datę (kiedy), zadanie wsadowe (gdzie) i ekran (kto spowodował błąd). Zawiera również informacje o dokładnym czasie wystąpienia błędu i wadze błędu. Ponadto istnieje tabela szczegółów zdarzenia błędu z kluczem obcym do tabeli głównej, która zawiera szczegółowe informacje o tym, w której tabeli, rekordzie i polu wystąpił błąd oraz o stanie błędu.

Zobacz też

Bibliografia

Dalsza lektura

  • McKinney, Wes (2017). „Czyszczenie i przygotowanie danych”. Python do analizy danych (wyd. 2). O'Reilly. s. 195-224. Numer ISBN 978-1-4919-5766-0.
  • van der Loo, Mark; de Jonge, Edwina (2018). Czyszczenie danych statystycznych za pomocą aplikacji w R . Hoboken: Wiley. Numer ISBN 978-1-118-89715-7.

Zewnętrzne linki