Dlaczego miara rośnie po połączeniu danych
Spis treści
Połączenie danych przedstawia się jako sposób na zestawienie dwóch źródeł obok siebie i dokładnie tak wygląda w edytorze: wybrać tabelę lewą, wybrać prawą, wskazać wspólne pole. W rzeczywistości jest to złączenie, a złączenie nie dokłada wierszom kolumn – tworzy wiersz dla każdej pasującej pary.
Gdy każda strona niesie dokładnie jeden wiersz na klucz, oba opisy się pokrywają i nic zaskakującego się nie dzieje. Gdy prawa niesie trzy, każdy wiersz z lewej pojawia się trzy razy, a każda miara z lewej liczy się trzykrotnie. Raport nie ostrzega, bo nic się nie zepsuło.

Co złączenie naprawdę robi
Dla każdego wiersza po lewej złączenie szuka po prawej wierszy z tym samym kluczem. Zwraca jeden wiersz wyniku na trafienie – a nie jeden na wiersz z lewej. To jedno zdanie wyjaśnia każdą zawyżoną liczbę, jaka kiedykolwiek wyszła z połączenia danych.
Liczy się też kierunek. Złączenie lewostronne zachowuje wiersze bez pary i wypełnia ich prawe kolumny wartościami pustymi, co widać jako puste słupki, a nie jako brakujące. Wewnętrzne odrzuca je po cichu i to ta odmiana skraca raport ukradkiem: kampanie bez danych kosztowych po prostu przestają istnieć.
Rachunek, który idzie pierwszy
Dwie liczby na stronę wystarczą, by przewidzieć wynik: ile jest wierszy i ile różnych wartości ma klucz. Ich iloraz to wiersze na klucz, a wiersze na klucz po prawej stronie są mnożnikiem, przez który przechodzą miary z lewej.
| Przypadek | Wiersze na klucz | Wynik |
|---|---|---|
| Kampania do kampanii | 1 do 1 | Dochodzą kolumny, nic się nie mnoży. Przypadek zamierzony. |
| Kampania do kampanii i dnia | 1 do 30 | Każda liczba sesji pojawia się trzydzieści razy. Najczęstsze przeoczenie. |
| Kampania i dzień do kampanii i reklamy | 30 do 12 | Iloczyn obu i tabela, której nikt już nie czyta. |
Przy środkowym wierszu warto się zatrzymać, bo w edytorze wygląda niewinnie. Sesje są zagregowane na kampanię, koszty eksportowane na kampanię i dzień, a wspólnym polem jest kampania. Obie tabele są poprawne; złączone wyłącznie po tym kluczu mnożą liczbę sesji przez liczbę dni w zakresie.
Zaradzić temu da się nie innym rodzajem złączenia, lecz dopasowaną ziarnistością: albo strona kosztowa zostaje wcześniej zagregowana do kampanii, albo data dochodzi jako drugi klucz, aby obie strony stały na tym samym poziomie.
Dlaczego suma wybucha, a średnia nie
Sumy rosną wraz z liczbą wierszy; wskaźniki liczone wewnątrz połączenia często nie, bo licznik i mianownik mnożą się razem. Koszt na sesję, który pozostaje wiarygodny, choć liczba sesji się potroiła, nie jest więc znakiem, że wszystko się zgadza – jest powodem, dla którego zawyżenie wychodzi na jaw trzy tygodnie później, w wierszu, w którym ktoś wreszcie patrzy na liczbę bezwzględną.
Miar z prawej tabeli nie da się też potem zagregować od nowa. Co przyjdzie zwielokrotnione, zwielokrotnione zostanie dla każdego wykresu na tym połączeniu – dlatego kontrola należy przed pierwszy wykres, a nie za dziesiąty.
Klucz rzadko bywa czysty
Drugi rodzaj błędu jest przeciwieństwem pierwszego: nic nie pasuje. Klucz google / cpc po jednej i google/cpc po drugiej stronie różni się o dwie spacje, a złączenie nie ma o spacjach zdania. Wielkość liter, spacje na końcu z eksportu arkusza i nazwa kampanii nosząca w jednym systemie przyrostek to typowa trójka.
Pole obliczeniowe po obu stronach rozstrzyga to, zanim złączenie ruszy – małymi literami, przycięte, a gdy klucz tworzy kilka pól, połączone separatorem, który nie może wystąpić w wartościach. Odsetek trafień skaczący po tej zmianie z trzydziestu na dziewięćdziesiąt pięć procent to wynik zwyczajny, a nie podejrzany.
Kontrola, która kosztuje minutę
Jedna liczba, dwa razy: suma miary na samym źródle i ta sama suma wewnątrz połączenia. Jeśli urosła, złączenie powieliło wiersze, a mnożnikiem jest iloraz obu. Jeśli zmalała, złączenie wewnętrzne odrzuciło wiersze bez pary. Jeśli pozostała ta sama, połączenie robi to, na co wyglądało.
To porównanie wymaga jednej karty wyniku i minuty, i jest jedynym krokiem, który zamienia połączenie wyglądające na poprawne w takie, które nim jest. Cała reszta tego tekstu to wyjaśnienie, co te dwie liczby znaczą, gdy się rozchodzą.