AkveoKontakt

Jak wdrożyliśmy elektroniczne katalogi części zamiennych dla dostawcy z branży motoryzacyjnej

Wdrożenie hurtowni danych, procesu ELT, portalu klienta i raportowania.

Jak wdrożyliśmy elektroniczne katalogi części zamiennych dla dostawcy z branży motoryzacyjnej

[ Klient ]

O kliencie

Dostawca rozwiązań technologicznych dla branży motoryzacyjnej.

$100K
Oszczędności na subskrypcji jednego katalogu
5
Zautomatyzowane katalogi producentów
150GB
Rozmiar największej bazy danych wynikowych

[ Wyzwanie ]

Pięciu producentów, pięć różnych formatów danych

Przez lata klient kupował elektroniczne katalogi części zamiennych i wydawał na każdy z nich od 5000 USD do 50 000 USD miesięcznie.

Nasz zespół podjął się stworzenia rozwiązania, które generowałoby i aktualizowało katalogi pięciu producentów na podstawie danych źródłowych.

  • Każda funkcja była wdrażana niezależnie od całości rozwiązania, ponieważ brakowało przemyślanego podejścia do architektury;
  • Odnalezienie konkretnej funkcji było niemożliwe, ponieważ projekt łączył przypadkowy zestaw narzędzi i technologii: środowiska chmurowe i lokalne oraz kilka języków (Python, Perl, SQL i Bash);
  • Nie istniała żadna dokumentacja.

[ Rozwiązanie ]

Budowa rozwiązania

Każdy producent dostarcza dane źródłowe we własnym formacie (pliki tekstowe, XML, Excel, bazy danych .MDF, a nawet EBCDIC – format używany od lat 50. na komputerach mainframe IBM). Celem było zbudowanie pipeline'ów ETL, które przekształcą te niejednorodne dane i pozwolą odpytywać wszystkie katalogi za pomocą jednego zestawu API.

Stage: surowe dane są importowane do bazy MS SQL, a następnie czyszczone i walidowane. Stage zawiera tylko jeden przetworzony zbiór danych, który jest czyszczony na początku każdego uruchomienia ETL. Data Warehouse to trwały magazyn gromadzący zintegrowane i znormalizowane zbiory danych (nie jest to kanoniczna hurtownia danych).

Deliverable Database zawiera dane, do których zastosowano reguły biznesowe i transformacje potrzebne do udostępniania ich przez API. Same API są zaimplementowane jako procedury SQL.

Schemat rozwiązania wdrożonego dla elektronicznych katalogów części zamiennych dostawcy z branży motoryzacyjnej

Szczegóły techniczne

  1. Proces ETL jest uruchamiany raz w miesiącu dla każdego producenta, a przetwarzanie trwa od 1 do 8 godzin.
  2. TeamCity jest skonfigurowane do uruchamiania kontroli integralności i testów automatycznych oraz do generowania katalogów na podstawie kompletnych zbiorów danych.
  3. Czas odpowiedzi API wynosi 300 ms, co wymagało znaczącej pracy optymalizacyjnej.
  4. Testy automatyczne obejmują proces ETL i wszystkie API i są realizowane w SpecFlow.
  5. Największa Deliverable Database ma rozmiar 150 GB.

[ Rezultaty ]

Efekty, które mają znaczenie

Klient samodzielnie generuje i utrzymuje wszystkie pięć katalogów, co eliminuje stałe koszty subskrypcji u zewnętrznych dostawców i daje mu pełną kontrolę nad aktualizacjami.

100 000 USD oszczędności na subskrypcji

Obecnie klient oszczędza około 100 000 USD na każdej subskrypcji.

Wyższa jakość, mniej utrzymania

Wysokiej jakości katalogi pozwalają oszczędzać zasoby potrzebne na utrzymanie.

Pełny dostęp do katalogów i kontrola nad nimi

Zapewniliśmy klientowi pełny dostęp do katalogów i możliwość ich aktualizacji w dowolnym momencie.

[ Stack technologiczny ]

Technologie wykorzystane w projekcie

Baza danych i ETL

Microsoft SQL ServerMicrosoft SSIS

CI/CD i testy

TeamCitySpecFlow

Mają Państwo pomysł na projekt?

Porozmawiajmy o Państwa celach i o tym, jak możemy pomóc je osiągnąć.

Dmitry Klim
Dmitry Klim
Head of Growth
Clutch
5900 Balcones Drive #21729, Austin, TX 78731[email protected]+1 (512) 921-9631