Sanmargar | Rozwiązania Data & Business Intelligence dla firm

Walidacja składni zapisanej w słowniku – kiedy warto stosować?

Źle zdefiniowany słownik potrafi zatrzymać cały proces ETL – a drobny błąd składniowy powoduje duże konsekwencje w raportowaniu. Dlatego walidacja składni to prosta, ale niezwykle skuteczna kontrola jakości danych. W tym artykule pokazujemy, kiedy jej użycie naprawdę robi różnicę.

Klasyczne podejście projektowania procesów ETL (Extract, Transform, Load), w którym całość procesów implementowana jest w narzędziu, ma niezaprzeczalne zalety:

  • całością przetwarzania zarządzamy z poziomu jednego narzędzia,
  • możemy w prosty sposób przygotować dokumentację procesów,
  • możemy prześledzić przepływy danych w obrębie procesów.

Cóż z tego, jeżeli wszystkie te „zalety” przestają przynosić korzyści wtedy, gdy poziom skomplikowania procesów zaczyna znacząco rosnąć. Zamiast pierwotnie czytelnego diagramu przepływu danych w procesie jak przykładowo poniższy:

Diagram przepływu danych w procesie ETL - uporządkowany, czytelny, przewidywalny schemat.

Otrzymujemy kompletnie nieczytelny i nieużywalny schemat:

Dodatkowo dochodzą inne wady takiego podejścia:

  • zmiana sposobu działania procesu wymaga wprowadzenia jej bezpośrednio w narzędziu ETL,
  • zmianę wprowadzić mogą wyłącznie osoby:
    • mające dostęp do narzędzia ETL,
    • znające sposób jego działania,
    • oraz mające odpowiednią wiedzę techniczną.

Jak możemy zatem temu zaradzić?

W poprzednich publikacjach wielokrotnie pisałem o tym, że wykorzystanie słowników parametryzujących procesy przetwarzania danych (np. przy zasilaniu hurtowni danych) jest skutecznym sposobem na rozwiązanie problemów związanych z bieżącym dostosowaniem procesów do zmieniającego się otoczenia biznesowego

W wieloletniej praktyce przy realizacji projektów związanych z budową hurtowni danych, czy wdrażaniem systemów raportowych, przekonałem się, że tego typu podejście ma swoje zalety, które sprawiają, że stawiam go ponad innymi.

Jeżeli przygotujemy proces przetwarzania danych w taki sposób, że całość definicji biznesowej (np. mapowania danych wejściowych na struktury wyjściowe) przeniesiemy do zewnętrznego słownika w postaci tabeli bazodanowej, wówczas znakomicie zwiększymy elastyczności procesu. 

No dobrze: przenieśliśmy definicję mapowań poza narzędzie ETL. Co dalej? Poprawiliśmy czytelność takiego procesu, możemy zmieniać jego kształt poprzez zmianę definicji mapowań bez konieczności używania interfejsu narzędzia ETL.

Czy przenoszenie definicji mapowań do zewnętrznego słownika ma sens?

Odpowiedź będzie brzmiała: „zdecydowanie tak”, jeżeli do zarządzania takim słownikiem użyjemy Metastudio DRM

Dlaczego? Przyjrzyjmy się temu w szczegółach. 

Dla kolumn, w których przechowywane są definicje mapowań (najczęściej są to fragmenty kodu w składni języka takiego jak SQL czy 4GL), możemy zdefiniować walidację poprawności składni. 

Walidator składni umożliwia w pierwszej kolejności sprawdzenie poprawności pod względem formalnym: wbudowane funkcje, operatory logiczne, arytmetyczne etc. We wspomnianych fragmentach kodu używane są jednak często takie ciągi znaków, jak nazwy tabel i kolumn, nazwy własnych funkcji, procedur czy wreszcie zdefiniowanych stałych. 

Aby mieć absolutną pewność, że wprowadzony fragment kodu zostanie poprawnie zinterpretowany w środowisku wykonawczym serwera ETL, możemy dodatkowo wzbogacić definicję walidatora składni o:

  • listę poprawnych stałych, np. nazw obiektów (kolumn), które mogą być użyte
  • listę nazw własnych funkcji, wraz z poprawną liczbą i formatem parametrów
  • listę nazw zmiennych.

Podsumowanie

Dzięki temu możliwe będzie udostępnienie ww. słownika do utrzymania przez użytkowników biznesowych. Takich, którzy nie mają dostępu do narzędzia ETL, nie mogą samodzielnie przetestować czy przetwarzanie (oparte o ten słownik) wykona się poprawnie. 

Natomiast funkcjonalność walidacji składni pozwoli na uzyskanie pożądanego efektu – użytkownik odpowiedzialny za aktualizację takiego słownika zostanie, już na etapie edycji poinformowany, o tym, czy wprowadzone przez niego zmiany są poprawne.

Jeśli chcesz dowiedzieć się więcej o możliwościach wykorzystania aplikacji Metastudio DRM w procesach ETL, zapraszamy do rozmowy!
Ireneusz Chmielak – ekspert Sanmargar
Ireneusz Chmielak
COO Sanmargar Team

RDM _Lab | Gdy sztuczna inteligencja zmienia zdanie: heurystyczny problem agentów AI przy edycji danych

W trakcie zaplanowanych prac eksperymentalnych nad rozwojem narzędzia do zarządzania danymi referencyjnymi w Sanmargar Team badałem, w jaki sposób agent AI może wspomagać proces edycji danych. Napotkałem przy tym na kilka trudności, nie tyle technicznych, co wynikających z obecnych ograniczeń dużych modeli językowych (LLM).  W poniższym artykule skupię się na jednym problemie – w mojej

Zobacz artykuł

_efektywne zarządzanie parametrami kontrolingowymi – mapowanie kont analitycznych MPK

W dynamicznym środowisku biznesowym sprawne zarządzanie kosztami i precyzyjne przypisanie do odpowiednich Miejsc Powstawania Kosztów (MPK) to klucz do efektywnego kontrolingu i raportowania. W wielu organizacjach zmiany w mapowaniu kont analitycznych nadal wymagają angażowania działów IT i długich cykli wdrożeniowych. Jak uprościć ten proces, zapewniając jednocześnie elastyczność działania i jakość?

Zobacz artykuł

Rafał Jastrzębski | CEO Sanmargar Team dołączył do DAMA Poland Chapter

Z przyjemnością informujemy, że Rafał Jastrzębski dołączył do DAMA Poland Chapter. Zarządzanie danymi i świadome budowanie ładu informacyjnego to dziś kluczowe elementy odpowiedzialnego rozwoju organizacji.   CEO Sanmargar Team dodaje na swoim profilu w portalu LinkedIn: Cieszę się, że mogę być częścią społeczności, która aktywnie rozwija standardy i dobre praktyki w

Zobacz artykuł