Sprawdź zawód
Lekcje kursu · Praca krok po kroku

Inżynier jakości danych — Data Quality Engineer — Praca krok po kroku

Raport widzi zakup O-7 bez odpowiadającego klienta

Praca krok po kroku · Lekcja 3 z 6

Pokaż błędne powiązania w SQL

Użyj LEFT JOIN po kodzie klienta. Odróżnij pusty klucz źródłowy od niepustego bez dopasowania.

Tok pracy w tej lekcji
  1. Co zrobić najpierwZamówienia
  2. Co zrobić dalejLEFT JOIN
  3. Jak zakończyćLista wyjątków

Przykład z pracy

O-7 trafia do wykazu brakujących klientów. O-8 trafia do wykazu pustych kluczy.

Ćwiczenie praktyczne

Zapisz warunki w dwóch wierszach: gdzie klucz źródłowy jest pusty i gdzie nie ma odpowiednika.

Raport widzi zakup O-7 bez odpowiadającego klienta

Podejmij decyzję

Wróć do notatki z początku sprawy. Zapisz pierwsze działanie i wyjaśnij, jak pomoże rozwiązać sytuację.

Pokaż przykładową reakcję

Zapisuję wyjątek, sprawdzam kolejność zasileń i przekazuję wpływ na raport Zespół może rozróżnić opóźnienie i błąd danych oraz podjąć decyzję o publikacji.

Usuwam O-7 z wyników bez zapisu
Raport traci transakcję, a zespół nie widzi przyczyny.
Zapisuję wyjątek, sprawdzam kolejność zasileń i przekazuję wpływ na raport
Zespół może rozróżnić opóźnienie i błąd danych oraz podjąć decyzję o publikacji.
Podstawiam innego klienta, by reguła przeszła
Raport przypisuje sprzedaż do niewłaściwego klienta.
Sprawdź się — opcjonalne pytanie

Dlaczego nie wystarczy INNER JOIN?

  • Brakujące dopasowanie zniknie z wyniku połączenia
  • INNER JOIN oddzielnie etykietuje wszystkie braki
  • INNER JOIN zawsze podwaja tabele
Pokaż odpowiedź i wyjaśnienie

Brakujące dopasowanie zniknie z wyniku połączenia. Do zgłoszenia wyjątku potrzebujesz wierszy z brakującym dopasowaniem.

Praca krok po kroku · Lekcja 4 z 6

Dodaj sprawdzenie do modelu dbt

Dla pola zapisz regułę obecności i regułę relacji do klientów. Uzgodnij, czy wynik wstrzymuje konkretne użycie.

Tok pracy w tej lekcji
  1. Co zrobić najpierwModel
  2. Co zrobić dalejReguły
  3. Jak zakończyćDziałanie po wyniku

Przykład z pracy

Reguła relacji zgłasza O-7, a sprawdzenie obecności zgłasza O-8.

Ćwiczenie praktyczne

Zapisz dwie reguły i opisz, kto odbierze powiadomienie.

Sprawdź się — opcjonalne pytanie

Co trzeba uzgodnić przed publikacją raportu?

  • Wyłącznie nazwę dashboardu
  • Które wyniki blokują publikację i kto rozstrzyga wyjątki
  • Tylko wygląd wiadomości
Pokaż odpowiedź i wyjaśnienie

Które wyniki blokują publikację i kto rozstrzyga wyjątki. Wynik reguły powinien prowadzić do ustalonego działania.

Który warunek wykryje każdy z błędów?

Wiersz albo źródłoStanReguła
O-7, C-24Brakuje odnośnego klientaSprawdź relację zamówień do klientów.
O-8Pusty identyfikator klientaSprawdź obecność klucza.
Tabela klientów, C-24Dwa wpisy po aktualizacjiSprawdź unikalność przed połączeniem.

Dwie pierwsze reguły wykrywają inne przypadki. Osobna kontrola tabeli klientów pozwala uniknąć powielania zamówienia po połączeniu.

SQL · znajdź zamówienia, których klienta brakuje

WITH orders(order_id, customer_id) AS (
  VALUES ('O-6', 'C-23'), ('O-7', 'C-24'), ('O-8', NULL)
), customers(customer_id) AS (
  VALUES ('C-23')
)
SELECT o.order_id, o.customer_id
FROM orders AS o
LEFT JOIN customers AS c ON c.customer_id = o.customer_id
WHERE o.customer_id IS NOT NULL AND c.customer_id IS NULL;

Sprawdź się w tej sytuacji

Opisz, które wiersze mają wrócić w każdym wyjątku, a potem sprawdź wynik na małym zestawie.

dbt · reguły obecności, unikalności i relacji