Jakość danych to proces

0
835

Chcielibyśmy zrealizować projekt, który poprawi jakość danych – to słowa, które w ostatnim czasie słyszałem wielokrotnie. Z jednej strony budzą nadzieję, z drugiej jest w tym zdaniu pewne niebezpieczeństwo.

Budzą nadzieję, bo rośnie w nas świadomość, jak ważne jest zapewnienie wysokiej jakości danych i jak ogromny wpływ ma ten faktor na wszystkie inne projekty IT, które prowadzimy w naszym TU. Niebezpieczeństwo polega na tym, że możemy spowodować, iż całe nasze starania pójdą na marne. Dlaczego?

Ponieważ jakości danych nie da się zapewnić projektem. Jakość danych to proces, który musi toczyć się dzień po dniu, miesiąc po miesiącu, rok po roku. I nie ma innej drogi. Nie da się zapewnić jakości danych raz na zawsze. Aby ten proces spełniał swoją funkcję, musi się składać z czterech kroków.

Analiza

W pierwszej kolejności dane muszą zostać sprofilowane, czyli musimy ocenić ich stan obecny. W tym celu używamy zwykle narzędzi statystycznych pokazujących zawartość naszych baz danych. Załóżmy, że chcemy sprofilować pole „kod pocztowy”. Narzędzie profilujące pokaże nam, że jest to pole tekstowe, o długości sześciu znaków, że większość danych spełnia wzorzec: „2 cyfry, znak -, 3 cyfry”, ale są od tego odstępstwa: większość danych to rzeczywiście dane tekstowe, ale niektóre wartości nie mają znaku – więc realnie są wartościami liczbowymi itd. Po takiej analizie intuicyjnie czujemy, że w naszym polu „kod pocztowy” część danych nie ma właściwej jakości.

Żeby usunąć z powyższej sentencji słowo „intuicyjnie”, musimy wykonać drugi krok, czyli opisać, jaka jest oczekiwana przez nas jakość danych. Trzymając się naszego przykładu, moglibyśmy opisać, że oczekujemy, że w polu „kod pocztowy” będą się znajdowały tylko wpisy sześcioznakowe, zgodnie ze wzorcem: „2 cyfry, -, 3 cyfry”, zawierającym się w słowniku istniejących kodów pocztowych dostarczonym z zewnętrznego źródła.

Działanie

Tak opisana jakość danych pozwala rozpocząć proces poprawy danych. Tu trzeba wydzielić dwa aspekty. Pierwszy z nich obejmuje poprawę danych w źródle. Na przykładzie kodu pocztowego – jeśli w jednym z systemów źródłowych pole „kod pocztowy” pozwala na wpisanie wartości niezgodnej z oczekiwanym przez nas wzorcem, należy dodać dodatkową walidację.

Drugi aspekt to poprawienie danych w procesach ich przetwarzania w systemach, takich jak hurtownia danych czy data lake. Jest to proces ważny i pożądany, ale nie należy przeceniać jego skuteczności. Kluczem jednak w tym drugim procesie jest możliwość automatycznego oznaczenia – czy i w jakim stopniu dana wartość spełnia oczekiwane warunki jakościowe.

Takie oznaczanie pozwala nam podjąć ostatni z etapów dbania o jakość danych, czyli monitorowanie. W tym celu budujemy raporty mierzące jakość poszczególnych obiektów i pól w podziale na obszary danych, ich priorytety, systemy źródłowe czy sposoby ich wykorzystania. Dzięki takim raportom możemy zarówno monitorować jakość danych w czasie, jak i identyfikować najsłabsze obszary lub systemy źródłowe i to na nich skupiać nasz proces poprawy jakości.

Cykliczność

Tak skonstruowany proces poprawy jakości danych w firmie pozwala osiągnąć bardzo dobre efekty i dostarczyć końcowym odbiorcom dane w jakości, jakiej potrzebują. Warunek jest jeden. Musimy te wszystkie działania wykonywać cyklicznie, tak aby dbanie o jakość danych stało się elementem DNA naszej organizacji.

Łukasz Nienartowicz
Britenet