Očištění dat - Data cleansing

Čištění dat nebo čištění dat je proces zjišťování a opravy (nebo odstraňování) poškozených nebo nepřesných záznamů ze sady záznamů, tabulky nebo databáze a označuje identifikaci neúplných, nesprávných, nepřesných nebo irelevantních částí dat a jejich nahrazení, úpravu, nebo vymazání špinavých nebo hrubých dat. Očištění dat lze provádět interaktivně pomocí nástrojů pro řazení dat nebo jako dávkové zpracování pomocí skriptování .

Po vyčištění by měl být soubor dat konzistentní s jinými podobnými soubory dat v systému. Zjištěné nebo odstraněné nesrovnalosti mohly být původně způsobeny chybami zadanými uživateli, poškozením přenosu nebo úložiště nebo definicemi různých datových slovníků podobných entit v různých obchodech. Čištění dat se liší od ověřování dat v tom, že ověření téměř vždy znamená, že data jsou odmítnuta ze systému při vstupu a jsou prováděna v době zadávání, nikoli v dávkách dat.

Skutečný proces čištění dat může zahrnovat odstranění typografických chyb nebo ověření a opravu hodnot oproti známému seznamu entit. Ověření může být přísné (například odmítnutí jakékoli adresy, která nemá platné poštovní směrovací číslo ) nebo s fuzzy nebo přibližnou shodou řetězců (například oprava záznamů, které částečně odpovídají stávajícím známým záznamům). Některá řešení pro čištění dat vyčistí data křížovou kontrolou s ověřenou sadou dat. Běžnou praxí čištění dat je vylepšení dat, kde jsou data úplnější přidáním souvisejících informací. Například připojování adres pomocí libovolných telefonních čísel souvisejících s touto adresou. Očištění dat může také zahrnovat harmonizaci (nebo normalizaci) dat, což je proces shromažďování dat „různých formátů souborů, konvencí pojmenování a sloupců“ a jejich transformace do jednoho soudržného souboru dat; jednoduchým příkladem je rozšíření zkratek („ulice, ulice atd.“ na „ulice, silnice atd.“).

Motivace

Administrativně nesprávná, nekonzistentní data mohou vést k falešným závěrům a nesprávnému přesměrování investic ve veřejném i soukromém měřítku. Například vláda chtít analyzovat sčítání počet obyvatel se rozhodnout, které oblasti vyžadují další výdaje a investice do infrastruktury a služeb. V tomto případě bude důležité mít přístup ke spolehlivým údajům, abychom se vyhnuli chybným fiskálním rozhodnutím. V obchodním světě mohou být nesprávná data nákladná. Mnoho společností používá databáze informací o zákaznících, které zaznamenávají data, jako jsou kontaktní informace, adresy a preference. Pokud jsou adresy například nekonzistentní, společnost utrpí náklady na opětovné odeslání pošty nebo dokonce ztrátu zákazníků.

Kvalita dat

Vysoce kvalitní data musí splňovat řadu kritérií kvality. Mezi ně patří:

  • Platnost : Míra, do jaké jsou opatření v souladu s definovanými obchodními pravidly nebo omezeními (viz také Platnost (statistiky) ). Když se k navrhování systémů pro sběr dat používá moderní databázová technologie, platnost je docela snadné zajistit: neplatná data vznikají hlavně ve starších kontextech (kde v softwaru nebyla implementována omezení) nebo tam, kde byla použita nevhodná technologie pro sběr dat (např. Tabulky, kde je velmi obtížné omezit, co se uživatel rozhodne zadat do buňky, pokud není použito ověření buňky). Omezení dat spadají do následujících kategorií:
    • Omezení datového typu -např. Hodnoty v konkrétním sloupci musí být určitého datového typu, např. Logická hodnota, číselné (celočíselné nebo skutečné), datum atd.
    • Omezení rozsahu: typicky by čísla nebo data měla spadat do určitého rozsahu. To znamená, že mají minimální a/nebo maximální přípustné hodnoty.
    • Povinná omezení: Některé sloupce nemohou být prázdné.
    • Unikátní omezení: Pole nebo kombinace polí musí být v celé datové sadě jedinečné. Například žádné dvě osoby nemohou mít stejné číslo sociálního zabezpečení.
    • Omezení sady členství : Hodnoty pro sloupec pocházejí ze sady diskrétních hodnot nebo kódů. Pohlaví osoby může být například žena, muž nebo nebinární.
    • Omezení cizího klíče : Toto je obecnější případ nastaveného členství. Sada hodnot ve sloupci je definována ve sloupci jiné tabulky, která obsahuje jedinečné hodnoty. Například v americké databázi daňových poplatníků musí sloupec „stát“ patřit k jednomu z definovaných států nebo území USA: množina přípustných států/území je zaznamenána v samostatné tabulce států. Pojem cizí klíč je převzat z terminologie relační databáze.
    • Vzory regulárních výrazů : Občas bude nutné textová pole tímto způsobem ověřit. Například může být požadováno, aby telefonní čísla měla vzor (999) 999-9999.
    • Ověření napříč poli : Musí platit určité podmínky, které využívají více polí. Například v laboratorní medicíně musí být součet složek diferenciálního počtu bílých krvinek roven 100 (protože jsou to všechna procenta). V nemocniční databázi nemůže být datum propuštění pacienta z nemocnice dříve než datum přijetí.
  • Přesnost : Míra shody opatření se standardem nebo skutečnou hodnotou - viz také Přesnost a přesnost . Přesnosti je v obecném případě dosažení čištění dat velmi obtížné, protože vyžaduje přístup k externímu zdroji dat, který obsahuje skutečnou hodnotu: taková data „zlatého standardu“ často nejsou k dispozici. Přesnosti bylo v některých kontextech čištění, zejména kontaktních údajů zákazníků, dosaženo pomocí externích databází, které spojují poštovní směrovací čísla s geografickými lokalitami (město a stát) a také pomáhají ověřit, zda adresy v těchto poštovních směrovacích číslech skutečně existují.
  • Úplnost : Míra, do jaké jsou známa všechna požadovaná opatření. Neúplnost je téměř nemožné opravit metodikou čištění dat: nelze odvodit skutečnosti, které nebyly zachyceny, když byla původně zaznamenávána příslušná data. (V některých kontextech, např. U údajů z rozhovoru, může být možné opravit neúplnost návratem k původnímu zdroji dat, tj. Opětovnému rozhovoru s předmětem, ale ani to nezaručuje úspěch kvůli problémům se vzpomínáním - např. rozhovor ke shromažďování údajů o spotřebě potravin, nikdo si pravděpodobně nepamatuje přesně to, co jedl před šesti měsíci. V případě systémů, které trvají na tom, že by určité sloupce neměly být prázdné, lze problém vyřešit označením hodnoty, která označuje „ neznámé “nebo„ chybí “, ale poskytnutí výchozích hodnot neznamená, že data byla dokončena.)
  • Konzistence : Míra, do jaké je sada opatření v různých systémech ekvivalentní (viz také Konzistence ). K nekonzistenci dochází, když si dvě datové položky v datové sadě navzájem odporují: např. Zákazník je zaznamenán ve dvou různých systémech jako má dvě různé aktuální adresy a pouze jedna z nich může být správná. Oprava nekonzistence není vždy možná: vyžaduje řadu strategií - např. Rozhodnout, která data byla zaznamenána v poslední době, který zdroj dat bude pravděpodobně nejspolehlivější (posledně uvedené znalosti mohou být specifické pro danou organizaci), nebo se jednoduše pokusit najděte pravdu testováním obou datových položek (např. volání zákazníkovi).
  • Jednotnost : Míra, ve které jsou určitá data měřena pomocí stejných měrných jednotek ve všech systémech (viz také Měrná jednotka ). V souborech dat shromážděných z různých národních prostředí může být hmotnost zaznamenána buď v librách, nebo v kilogramech, a musí být převedena na jednu míru pomocí aritmetické transformace.

Termín integrita zahrnuje přesnost, konzistenci a některé aspekty validace (viz také integrita dat ), ale sám se v kontextech čištění dat používá jen zřídka, protože není dostatečně konkrétní. (Například „ referenční integrita “ je termín používaný k označení výše uvedených omezení cizího klíče.)

Proces

  • Auditování dat : Data jsou auditována pomocí statistických a databázových metod k detekci anomálií a rozporů: to nakonec indikuje charakteristiky anomálií a jejich umístění. Několik komerčních softwarových balíků vám umožní určit omezení různého druhu (pomocí gramatiky, která odpovídá standardnímu programovacímu jazyku, např. JavaScript nebo Visual Basic) a poté vygenerovat kód, který zkontroluje, zda data tato omezení neporušují. Tento proces je uveden níže v odrážkách „specifikace pracovního postupu“ a „provedení pracovního postupu“. Uživatelům, kteří nemají přístup k vysoce kvalitnímu čisticímu softwaru, vám databázové balíčky mikropočítačů, jako je Microsoft Access nebo File Maker Pro, také umožní provádět takové kontroly interaktivně s malým nebo žádným programováním v mnoha případech .
  • Specifikace pracovního postupu : Detekce a odstranění anomálií se provádí sledem operací s daty známými jako pracovní postup. Je specifikován po procesu auditu dat a má zásadní význam pro dosažení konečného produktu vysoce kvalitních dat. Aby bylo dosaženo správného pracovního postupu, je třeba pečlivě zvážit příčiny anomálií a chyb v datech.
  • Provedení pracovního postupu : V této fázi je pracovní postup spuštěn po dokončení jeho specifikace a ověření jeho správnosti. Implementace pracovního postupu by měla být efektivní, a to i na velkých sadách dat, což nevyhnutelně představuje kompromis, protože provedení operace čištění dat může být výpočetně nákladné.
  • Následné zpracování a kontrola : Po provedení čisticího pracovního postupu jsou výsledky zkontrolovány, aby se ověřila správnost. Data, která nebylo možné opravit během provádění pracovního postupu, jsou opravena ručně, pokud je to možné. Výsledkem je nový cyklus v procesu čištění dat, kde jsou data znovu auditována, což umožňuje specifikaci dalšího pracovního postupu k dalšímu čištění dat automatickým zpracováním.

Kvalitní zdrojová data mají co do činění s „kulturou kvality dat“ a musí být zahájena v horní části organizace. Nejde jen o implementaci silných validačních kontrol na vstupních obrazovkách, protože téměř bez ohledu na to, jak silné tyto kontroly jsou, je často mohou uživatelé stále obcházet. Pro organizace, které chtějí zlepšit kvalitu dat, existuje devítikrokový průvodce:

  • Deklarujte závazek na vysoké úrovni ke kultuře kvality dat
  • Řiďte proces reengineeringu na výkonné úrovni
  • Utrácejte peníze za vylepšení prostředí pro zadávání dat
  • Utrácejte peníze za vylepšení integrace aplikací
  • Vynakládejte peníze na změnu fungování procesů
  • Propagujte povědomí celého týmu
  • Podporovat mezirezortní spolupráci
  • Veřejně oslavujte vynikající kvalitu dat
  • Průběžně měřte a zlepšujte kvalitu dat

Mezi další patří:

  • Analýza : pro detekci chyb syntaxe. Analyzátor rozhodne, zda je řetězec dat přijatelný v rámci povolené specifikace dat. Je to podobné tomu, jak analyzátor pracuje s gramatikami a jazyky .
  • Transformace dat : Transformace dat umožňuje mapování dat z daného formátu do formátu očekávaného příslušnou aplikací. To zahrnuje převody hodnot nebo překladové funkce a také normalizaci číselných hodnot tak, aby odpovídaly minimálním a maximálním hodnotám.
  • Eliminace duplicit : Detekce duplicit vyžaduje algoritmus pro určení, zda data obsahují duplicitní reprezentace stejné entity. Data jsou obvykle tříděna podle klíče, který by přiblížil duplicitní položky pro rychlejší identifikaci.
  • Statistické metody : Analýzou dat pomocí hodnot průměrů , směrodatných odchylek , rozsahů nebo klastrových algoritmů může odborník najít hodnoty, které jsou neočekávané a tudíž chybné. Přestože je oprava takových údajů obtížná, protože skutečná hodnota není známa, lze ji vyřešit nastavením hodnot na průměrnou nebo jinou statistickou hodnotu. Statistické metody lze také použít ke zpracování chybějících hodnot, které mohou být nahrazeny jednou nebo více hodnověrnými hodnotami, které jsou obvykle získány rozsáhlými algoritmy augmentace dat.

Systém

Základní úlohou tohoto systému je najít vhodnou rovnováhu mezi opravou špinavých dat a udržováním dat co nejblíže původním datům ze zdrojového produkčního systému. Toto je výzva pro architekturu Extrahovat, transformovat a načítat . Systém by měl nabídnout architekturu, která dokáže čistit data, zaznamenávat události kvality a měřit/kontrolovat kvalitu dat v datovém skladu . Dobrým začátkem je provést důkladnou analýzu profilování dat, která pomůže definovat požadovanou složitost systému čištění dat a také poskytne představu o aktuální kvalitě dat ve zdrojových systémech.

Kvalitní obrazovky

Součástí systému čištění dat je sada diagnostických filtrů známých jako obrazovky kvality. Každý z nich implementuje test v toku dat, který, pokud selže, zaznamená chybu ve schématu chybové události. Kvalitní obrazovky jsou rozděleny do tří kategorií:

  • Sloupové obrazovky. Testování jednotlivých sloupců, např. Na neočekávané hodnoty, jako jsou hodnoty NULL ; nečíselné hodnoty, které by měly být číselné; mimo rozsah hodnot; atd.
  • Strukturní obrazovky. Ty se používají k testování integrity různých vztahů mezi sloupci (obvykle cizí/primární klíče) ve stejných nebo různých tabulkách. Používají se také k testování, že skupina sloupců je platná podle nějaké strukturální definice, ke které by měla přilnout.
  • Obrazovky obchodních pravidel. Nejsložitější ze tří testů. Testují, zda data, možná ve více tabulkách, dodržují konkrétní obchodní pravidla. Příkladem může být, že pokud je zákazník označen jako určitý typ zákazníka, měla by být dodržována obchodní pravidla, která tento typ zákazníka definují.

Když obrazovka kvality zaznamená chybu, může buď zastavit tok dat, odeslat chybná data jinam než do cílového systému nebo data označit. Druhá možnost je považována za nejlepší řešení, protože první možnost vyžaduje, aby se někdo musel problémem zabývat pokaždé, když k němu dojde, a druhá znamená, že v cílovém systému ( integrita ) chybí data a často není jasné, co by se mělo stát k těmto datům.

Kritika stávajících nástrojů a procesů

Většina nástrojů pro čištění dat má omezení v použitelnosti:

  • Náklady na projekt : náklady obvykle ve stovkách tisíc dolarů
  • Čas : zvládnutí rozsáhlého softwaru pro čištění dat je časově náročné
  • Zabezpečení : křížová validace vyžaduje sdílení informací a umožnění přístupu aplikace napříč systémy, včetně citlivých starších systémů

Schéma chybové události

Schéma chybové události obsahuje záznamy o všech chybových událostech vyvolaných obrazovkami kvality. Skládá se z tabulky Skutečnost chybové události s cizími klíči do tabulek tří dimenzí, které představují datum (kdy), dávkovou úlohu (kde) a obrazovku (kdo vytvořil chybu). Obsahuje také informace o tom, kdy přesně došlo k chybě a závažnosti chyby. Existuje také tabulka Fakta podrobností o chybové události s cizím klíčem do hlavní tabulky, která obsahuje podrobné informace o tom, ve které tabulce, záznamu a poli došlo k chybě a chybovému stavu.

Viz také

Reference

Další čtení

  • McKinney, Wes (2017). „Čištění a příprava dat“. Python pro analýzu dat (2. vydání). O'Reilly. s. 195–224. ISBN 978-1-4919-5766-0.
  • van der Loo, Marku; de Jonge, Edwin (2018). Statistická Čištění dat s aplikacemi v oblasti výzkumu . Hoboken: Wiley. ISBN 978-1-118-89715-7.

externí odkazy