Jakość danych w hurtowni

Jakość danych w hurtowni jest ważnym warunkiem uzyskania wartościowych informacji. Zła jakość prowadzi w dłuższej perspektywie do negatywnej reakcji łańcuchowej.
Po pierwsze, traci się zaufanie do przekazywanych informacji. Ludzie zaczynają rzadziej korzystać z aplikacji Business Intelligence; potencjał aplikacji pozostaje niewykorzystany.
W rezultacie dalsze inwestycje w projekt analityczny stają pod znakiem zapytania.

Odpowiedzialność za jakość danych

Aspekt związany z poprawą jakości danych jest mega ważny w projektach BI. Nie jest to jednak przywilej wyłącznie specjalistów technicznych.
Na jakość danych wpływają także takie aspekty jak

Kultura korporacyjna

  • Czy sami pracownicy są zainteresowani produkcją dobrej jakości?
  • Jeśli nie, to dlaczego nie? Może wystąpić konflikt interesów.
  • Może istnieją zasady korporacyjne określające, kto jest odpowiedzialny za jakość?

Procesy

  • Jakie dane powstają na końcu tych łańcuchów?
  • Być może systemy operacyjne są skonfigurowane w taki sposób, że trzeba „przekręcić”, aby odzwierciedlić tę lub inną sytuację w rzeczywistości.
  • Czy systemy operacyjne same przeprowadzają weryfikację i uzgadnianie danych?

Za jakość danych w systemach raportowych odpowiada każdy w organizacji.

Definicja i znaczenie

Jakość to potwierdzone spełnienie oczekiwań klientów.

Ale jakość danych nie zawiera definicji. Zawsze odzwierciedla kontekst użycia. Hurtownia danych i system BI służą innym celom niż system operacyjny, z którego pochodzą dane.

Na przykład w systemie operacyjnym atrybut klienta może być polem opcjonalnym. W repozytorium atrybut ten może służyć jako wymiar i wymagane jest jego wypełnienie. Co z kolei wprowadza konieczność uzupełnienia wartości domyślnych.

Wymagania dotyczące przechowywania danych stale się zmieniają i są zazwyczaj wyższe niż wymagania stawiane systemom operacyjnym. Ale może być też odwrotnie, gdy nie ma potrzeby przechowywania w pamięci szczegółowych informacji z systemu operacyjnego.

Aby jakość danych była mierzalna, należy opisać jej standardy. W proces opisu należy włączyć osoby, które wykorzystują informacje i liczby w swojej pracy. Efektem tego zaangażowania może być reguła, zgodnie z którą na pierwszy rzut oka na tabelę można stwierdzić, czy wystąpił błąd, czy nie. Ta reguła musi być sformatowana jako skrypt/kod w celu późniejszej weryfikacji.

Poprawa jakości danych

Nie da się wyczyścić i skorygować wszystkich hipotetycznych błędów w procesie ładowania danych do hurtowni. Dobrą jakość danych można osiągnąć jedynie poprzez ścisłą współpracę pomiędzy wszystkimi uczestnikami. Osoby wprowadzające dane do systemów operacyjnych muszą dowiedzieć się, jakie działania prowadzą do błędów.

Jakość danych to proces. Niestety wiele organizacji nie ma strategii ciągłego doskonalenia. Wiele ogranicza się jedynie do przechowywania danych i nie wykorzystuje pełnego potencjału systemów analitycznych. Zazwyczaj przy tworzeniu hurtowni danych 70-80% budżetu przeznacza się na wdrożenie integracji danych. Proces monitorowania i doskonalenia pozostaje niekompletny, jeśli w ogóle.

Narzędzia

Wykorzystanie narzędzi programowych może pomóc w procesie automatyzacji poprawy i monitorowania jakości danych. Mogą na przykład w pełni zautomatyzować weryfikację techniczną struktur magazynowych: format pól, obecność wartości domyślnych, zgodność z nazwami pól tabeli.

Sprawdzenie zawartości może być trudniejsze. Wraz ze zmianą wymagań dotyczących przechowywania może zmienić się także interpretacja danych. Samo narzędzie może stać się ogromnym projektem wymagającym wsparcia.

Rada

Relacyjne bazy danych, w których zazwyczaj projektuje się sklepy, mają niezwykłą zdolność tworzenia widoków. Można je wykorzystać do szybkiego sprawdzenia danych, jeśli znana jest specyfika treści. Każdy przypadek znalezienia błędu lub problemu w danych może zostać zarejestrowany w formie zapytania do bazy danych.

W ten sposób powstanie baza wiedzy na temat treści. Oczywiście takie żądania muszą być szybkie. Widoki wymagają zwykle mniej czasu pracy niż narzędzia oparte na tabelach. Widok jest zawsze gotowy do wyświetlenia wyniku testu.
W przypadku ważnych raportów widok może zawierać kolumnę z odbiorcą. Warto używać tych samych narzędzi BI do raportowania stanu jakości danych w hurtowni.

Przykład

Zapytanie zostało napisane dla bazy danych Oracle. W tym przykładzie testy zwracają wartość liczbową, którą można zinterpretować według potrzeb. Wartości T_MIN i T_MAX można wykorzystać do regulacji poziomu alarmu. Pole RAPORT było kiedyś używane jako wiadomość w komercyjnym produkcie ETL, który nie wiedział, jak poprawnie wysyłać e-maile, więc rpad jest „podporą”.

W przypadku dużej tabeli można dodać np. AND ROWNUM <= 10, czyli: jeśli jest 10 błędów, to wystarczy, aby wywołać alarm.

CREATE OR REPLACE VIEW V_QC_DIM_PRODUCT_01 AS
SELECT
  CASE WHEN OUTPUT>=T_MIN AND OUTPUT<=T_MAX
  THEN 'OK' ELSE 'ERROR' END AS RESULT,
  DESCRIPTION,
  TABLE_NAME, 
  OUTPUT, 
  T_MIN,
  T_MAX,
  rpad(DESCRIPTION,60,' ') || rpad(OUTPUT,8,' ') || rpad(T_MIN,8,' ') || rpad(T_MAX,8,' ') AS REPORT
FROM (-- Test itself
  SELECT
    'DIM_PRODUCT' AS TABLE_NAME,
    'Count of blanks' AS DESCRIPTION,
    COUNT(*) AS OUTPUT,
    0 AS T_MIN,
    10 AS T_MAX
  FROM DIM_PRODUCT
  WHERE DIM_PRODUCT_ID != -1 -- not default value
  AND ATTRIBUTE IS NULL ); -- count blanks

W publikacji wykorzystano materiały z książki
Ronalda Bachmanna, dr. Guido Kempera
Raus aus der BI-Falle
Wie Business Intelligence z Erfolg wird


Źródło: www.habr.com

Dodaj komentarz