Kontaktovat podporu

Odpovíme e-mailem, obvykle do dvou dnů.

Google reCAPTCHA kontroluje toto odeslání kvůli ochraně před zneužitím; data se přitom předávají společnosti Google. Skript se načte až při otevření tohoto formuláře.

← Všechny články

Míra okamžitého opuštění potřebuje jeden bit, ne sledovač

Do 28. srpna tento web míru okamžitého opuštění neukazoval a stránka o nás uváděla, že záměrně: vyžadovala by sledovat relaci přes několik zobrazení stránek, a to by vyžadovalo lištu se souhlasem.

První polovina byla pravda. Druhá přestala platit ve chvíli, kdy jsme začali zaznamenávat výstupní stránky, a nikdo tu větu neopravil.

čtyři návštěvy a co o nich říká každý zdroj tabulka přechodů bit jedna stránka nic 0 tatáž stránka dvakrát nic 0 dvě stránky, 40 sekund po sobě jeden přechod 1 dvě stránky, 35 minut po sobě nic 1 čtvrtá návštěva není okamžité opuštění a ví to jen jeden z obou zdrojů

Proč to nešlo jednoduše spočítat

Existuje tabulka přechodů ze stránky na stránku. Vypadá jako všechno, co míra okamžitého opuštění potřebuje: návštěva, která přejde z jedné stránky na druhou, není okamžité opuštění, takže stačí spočítat návštěvy bez přechodů.

To nefunguje a důvod je ve třech řádcích zaznamenávacího kódu. Přechod se zahodí, když jsou obě stránky stejné, když mezi nimi uplynulo víc než třicet minut, a po třech stech nových dvojicích u jednoho počítadla za den. Každé pravidlo je správné pro to, k čemu tabulka slouží — ukázat, která stránka vede ke které — a každé dělá skutečnou druhou stránku neviditelnou.

Návštěva přitom pro účely počítání trvá hodinu: tak dlouho přežívá řádek v živé tabulce. Čitatel by tedy používal jednu definici návštěvy a jmenovatel jinou. Číslo by nebylo trochu špatně, nemělo by žádné ukotvení.

Co data opravdu řekla

Za 27. a 28. srpna bylo 8 669 návštěv a 2 817 přechodů, tedy v průměru 1,32 stránky na návštěvu. Přechod vůbec zaznamenalo 99 z 572 počítadel.

To není vypnutý přepínač — zaznamenávání cest je ve výchozím stavu zapnuté a mají ho zapnuté všech 166 453 počítadel. Ty weby jsou opravdu jednostránkové: profilové stránky, weby o jedné stránce, galerie obrázků na cizí platformě. Míra okamžitého opuštění bude u většiny z nich blízko sta procent, a bude to správně.

Jeden bit a žádný nový sběr dat

Návštěva už má na hodinu svůj řádek. Teď nese jednu věc navíc: zda tato návštěva někdy viděla druhou, odlišnou stránku. Hodnota se nastaví uvnitř příkazu, který běží tak jako tak, bez dalšího dotazu:

ON DUPLICATE KEY UPDATE mehr = mehr | (url <> VALUES(url)),
                        last_seen = UNIX_TIMESTAMP(), url = VALUES(url)

Celý trik je v pořadí těch přiřazení. Databáze je vyhodnocuje zleva doprava, takže url při porovnání ještě drží předchozí adresu. Dejte url na začátek a řádek porovná novou adresu sama se sebou, bit zůstane navždy nulový a míra okamžitého opuštění ukáže sto procent u všech. To je selhání, které vypadá přesně jako věrohodný výsledek, a proto stálo za to ho ověřit na pokusném řádku, než se mu začalo věřit.

Když hodina uplyne, noční úklid spočítá končící řádky — kolik návštěv a kolik z nich vícestránkových — zapíše jeden řádek za počítadlo a den a řádky smaže. Bit žije hodinu. Žádný soubor cookie a nic, co by ho přežilo.

Co z toho plyne obecně

Zajímavou otázkou nikdy nebylo, jak sledovat relaci. Byla jí otázka, která z věcí, jež už zapisujeme, na ni náhodou odpovídá, a zda je odpověď ukotvená ve stejné definici jako otázka.

Dva zdroje, které oba vypadají, že měří návštěvy, jeden s třicetiminutovým pravidlem a druhý se šedesátiminutovým, dají poměr, který je číslem a nic neznamená. Je snazší přidat jeden bit k řádku, který už existuje, než později vysvětlovat, proč má míra hodnotu, jakou má.

Reklama