Stworzyliśmy skalowalną platformę, która wyeliminowała dług technologiczny i zmniejszyła koszty utrzymania danych o 60%.

Stworzyliśmy skalowalną platformę, która wyeliminowała dług technologiczny i zmniejszyła koszty utrzymania danych o 60%.

Nasz klient z branży technologicznej, zmagał się z wyzwaniem zarządzania rosnącą ilością danych i koniecznością optymalizacji procesów analitycznych. Firma intensywnie korzystała z danych, napędzając swoje działania marketingowe, operacyjne i produktowe. Celem projektu była modernizacja modelu konsumpcji danych oraz dostosowanie jej do potrzeb rosnącej organizacji.

Zakres prac

Współpraca obejmowała kompleksową migrację i refaktoryzację niezarządzalnych, nieuporządkowanych procesów danych, które przez lata rosły swobodnie i przekształciły się w dług technologiczny, wymagający pilnych zmian, do nowoczesnego środowiska DBT (Data Build Tool) core. Kluczowe etapy projektu obejmowały:

Analiza istniejącego modelu konsumpcji danych:

Nasz zespół analityków przeprowadził mapowanie wszystkich istniejących procesów transformacji danych, identyfikując kluczowe obszary wymagające optymalizacji w istniejących modelach. Analizy wykazały, że dotychczasowy model opóźniał czas odświeżania, generował niespójności w wynikach oraz nie pozwalał na dynamiczne skalowanie infrastruktury w odpowiedzi na rosnące potrzeby biznesowe procesów transformacji danych, identyfikując kluczowe punkty zapalne, takie jak wolne odświeżanie danych oraz brak standaryzacji w kodzie SQL.

Zespół dokonał przeglądu około 20 projektów danych, obejmujących różnorodne źródła, takie jak systemy monitorowania użytkowników, narzędzia marketingowe oraz dane finansowe.

Migracja procesów danych do DBT:

Przenieśliśmy istniejące procedury SQL (BigQuery Routines) do DBT core, wzbogacając sugerowany model danych w DBT (modele stagingowe, intermediate i marty) o modele core zawierające kluczowe wymiary i wskaźniki, wykorzystywane później w większości martów. Marty zostały zaprojektowane w taki sposób, aby były efektywne kosztowo i zaspokajały potrzeby raportowe klienta

Opracowaliśmy uniwersalne makra, które zastąpiły powtarzalny kod SQL. Dzięki temu zwiększono spójność procesów oraz uproszczono zarządzanie i wprowadzanie zmian.

Nasi eksperci przeprojektowali proces predykcji w taki sposób, aby ujednolicić i uprościć proces przy wykorzystaniu makr.

Optymalizacja wydajności:

Wdrożyliśmy partycjonowanie i klastrowanie w istniejących procedurach BigQuery jeszcze przed zakończeniem migracji, aby możliwie szybko wprowadzić optymalizacje. Dzięki czemu mogliśmy znacząco zmniejszyć bieżące koszty przetwarzania danych jeszcze przed zakończeniem projektu migracyjnego.

W nowym podejściu, wykorzystującym modele DBT, również zastosowano partycjonowanie i klastrowanie. Zmiany te w połączeniu z nowym, zoptymalizowanym przepływem danych czterokrotnie zmniejszyły czas odświeżania i zapewniły, że wraz ze wzrostem wolumenu danych koszty przetwarzania nie rosną liniowo, lecz pozostają optymalnie zarządzane dzięki skalowalności wprowadzonego rozwiązania.

Wprowadzono zmiany w strukturze danych, w tym kolumn typu STRUCT na zapis JSON, co obniżyło koszty przetwarzania tej tabeli względem alternatywnego rozwiązania prawie o 30%, a czas jej utworzenia był krótszy o 85%.

Orkiestracja procesów:

Nasz zespół wdrożył Airflow do zarządzania harmonogramem odświeżania danych, co pozwoliło na bardziej precyzyjne planowanie zadań i dynamiczne dostosowanie do zmieniających się wymagań.

Dzięki zastosowaniu DAG-ów (Directed Acyclic Graphs) zbudowanych z myślą o współdzielonych zależnościach, procesy mogły być realizowane wielowątkowo, co znacząco skróciło czas przetwarzania danych i wyeliminowało konieczność manualnych interwencji. W połączeniu z zaawansowanymi powiadomieniami o błędach, Airflow pozwolił zespołowi skupić się na strategicznych działaniach, zamiast na rutynowym monitorowaniu procesów.

CI/CD zostało zintegrowane w Google Cloud Build, co usprawniło kontrolę wersji i przyspieszyło wdrażanie zmian. Dzięki tej integracji proces wdrażania nowego kodu oraz synchronizacji między zespołami stał się szybszy i bardziej przejrzysty, eliminując opóźnienia wynikające z manualnych procesów i minimalizując ryzyko konfliktów w kodzie.

Walidacja i czyszczenie danych:

Zastosowano testy w DBT, aby automatycznie kontrolować  poprawność danych na różnych etapach przetwarzania, na przykład nieunikatowe klucze, czy nieoczekiwane braki w wartościach lub nagły spadek kluczowego wskaźnika. Pozwoliło to na proaktywne podejście w znajdowaniu błędów w danych i informowaniu biznesu o potencjalnych problemach.

Inżynierowie opracowali mechanizmy korekty danych historycznych, eliminując błędy w źródłach danych z możliwością dokumentacji, z czego wynikała dana potrzeba.

Raportowanie i wizualizacja:

Dzięki zaprojektowaniu nowych data martów, dashboardy działają szybciej i konsumują mniej danych.

Wartość dla klienta

Kluczowe wyniki:

  • Skrócenie czasu odświeżania danych z około 8 godzin do 2 godzin.
  • Redukcja kosztów utrzymania infrastruktury danych o około 60%, dzięki optymalizacjom w BigQuery.
  • Nowe procesy umożliwiły szybszą realizację powtarzalnych zadań dzięki standaryzacji kodu i lepszej organizacji danych, co znacząco przyspieszyło integrację nowych źródeł informacji oraz usprawniło operacyjność zespołów.
  • Zmniejszenie ryzyka błędów manualnych dzięki automatyzacji i testom jakości danych.

Wartość biznesowa:

  • Zwiększona efektywność operacyjna zespołów analitycznych, marketingowych i produktowych.
  • Lepsza skalowalność infrastruktury danych, umożliwiająca dalszy rozwój organizacji.
  • Zarządzanie kosztami operacyjnymi, co wspiera strategiczne decyzje inwestycyjne.
  • Możliwość szybszego wdrażania nowych pracowników do projektów BI oraz samodzielność zaawansowanych użytkowników w korzystaniu z narzędzi BI.

Podsumowanie

Projekt migracji i optymalizacji danych dla anonimowego klienta z branży technologicznej to przykład kompleksowego podejścia do modernizacji modelu konsumpcji danych. Dzięki wprowadzeniu DBT, Airflow i CI/CD firma osiągnęła znaczącą poprawę wydajności i zarządzalności procesów danych, co jednocześnie wyeliminowało dług technologiczny i znacząco zredukowało barierę wejścia dla nowych analityków.

Dzięki temu zaawansowani użytkownicy BI mogą teraz skuteczniej korzystać z narzędzi i realizować self-service. Ten projekt pokazuje, jak właściwe zarządzanie danymi może przynieść wymierne korzyści zarówno na poziomie operacyjnym, jak i strategicznym.

Potrzebujesz pomocy w optymalizacji hurtownii danych?

Porozmawiajmy

Przeczytaj również: