Tabele *_paths
zapewniają wgląd w interakcje użytkowników z treściami multimedialnymi, którymi zarządzasz za pomocą Display & Video 360 i Campaign Managera 360. Interakcje te (nazywane też punktami styczności z klientem) są łączone w ścieżki zdarzeń, aby rejestrować trasę, jaką grupa użytkowników pokonuje na ścieżce konwersji. Dane w tabelach *_paths
korzystają z tych samych informacji, które są dostępne w Przenoszeniu danych, ale pochodzących z gotowych ścieżek. Ścieżki zdarzeń są dostępne w przypadku zarówno użytkowników dokonujących konwersji, jak i tych, którzy nie dokonują konwersji, a poza tym mogą obejmować znaczną liczbę konwersji.
Tak jak w przypadku wszystkich danych o użytkownikach w Centrum danych reklam, informacje w tabelach *_paths
podlegają wymaganiom dotyczącym agregacji.
Szczegóły techniczne
Każdy wiersz tabeli paths
zawiera 1 ścieżkę klienta z 30 dni. Dane te są aktualizowane codziennie i obejmują ostatnie 30 dni. Ścieżki zdarzeń są tworzone na podstawie plików cookie, więc są ograniczone tylko do jednego urządzenia. W niektórych sytuacjach, np. gdy użytkownicy zrezygnują z personalizacji reklam, zamiast identyfikatorów użytkowników będzie występować wartość 0. Standardowo użytkownicy ci będą nadal rozdzielani na wiersze, więc 2 różne ścieżki konwersji powiązane z identyfikatorem użytkownika oznaczonym wartością 0 będą zajmować osobne wiersze. Jednak w przypadku niektórych typów analizy, np. grupowania według atrybutu user_id = 0
, wiele ścieżek konwersji zostanie scalonych w jedną, co może spowodować rozbieżności w Twoich danych. Więcej informacji o wyzerowanych identyfikatorach użytkowników
Każdy wiersz w kolumnie *_paths.events
zawiera tablicę elementów typu struct, będących pojedynczymi zdarzeniami na ścieżce użytkownika. Elementy typu struct składające się na ścieżkę są uporządkowane według sygnatury czasowej, przy czym pierwsze zdarzenie w tablicy jest najstarsze.
Przykładowe zapytania
Podane niżej zapytania pozwalają sprawdzić wpływ miejsc docelowych na konwersje dokonywane przez konkretny segment użytkowników. Zapytania przypisują udział w konwersji za pomocą 3 różnych modeli atrybucji:
- pierwsza interakcja (cały udział jest przypisywany pierwszemu punktowi styczności z klientem),
- ostatnia interakcja (cały udział jest przypisywany ostatniemu punktowi styczności z klientem),
- liniowy (udział w konwersji jest rozdzielany po równo między punkty styczności z klientem).
Przykładowe dane
Wiersz | user_id |
*_paths.events.event_time |
*_paths.events.event_type |
*_paths.events.placement_id |
---|---|---|---|---|
1 | 1 | 1563384139 | FLOODLIGHT |
null |
1563384129 | CLICK |
11 | ||
1563384119 | VIEW |
22 | ||
2 | 2 | 1563384139 | FLOODLIGHT |
null |
1563384129 | VIEW |
11 | ||
1563384119 | FLOODLIGHT |
null | ||
1563384109 | VIEW |
11 |
Przykładowe zapytania
Pierwsza interakcja
/* Substitute *_paths for the specific paths table that you want to query. */
SELECT
(
SELECT
attributed_event_metadata.placement_id
FROM (
SELECT
AS STRUCT attributed_event.placement_id,
ROW_NUMBER() OVER(ORDER BY attributed_event.event_time ASC) AS rank
FROM
UNNEST(t.*_paths.events) AS attributed_event
WHERE
attributed_event.event_type != "FLOODLIGHT"
AND attributed_event.event_time < conversion_event.event_time
AND attributed_event.event_time > (
SELECT
IFNULL( (
SELECT
MAX(prev_conversion_event.event_time) AS event_time
FROM
UNNEST(t.*_paths.events) AS prev_conversion_event
WHERE
prev_conversion_event.event_type = "FLOODLIGHT"
AND prev_conversion_event.event_time < conversion_event.event_time),
0)) ) AS attributed_event_metadata
WHERE
attributed_event_metadata.rank = 1) AS placement_id,
COUNT(*) AS credit
FROM
adh.*_paths AS t,
UNNEST(*_paths.events) AS conversion_event
WHERE
conversion_event.event_type = "FLOODLIGHT"
GROUP BY
placement_id
HAVING
placement_id IS NOT NULL
ORDER BY
credit DESC
Ostatnia interakcja
/* Substitute *_paths for the specific paths table that you want to query. */
SELECT
(
SELECT
attributed_event_metadata.placement_id
FROM (
SELECT
AS STRUCT attributed_event.placement_id,
ROW_NUMBER() OVER(ORDER BY attributed_event.event_time DESC) AS rank
FROM
UNNEST(t.*_paths.events) AS attributed_event
WHERE
attributed_event.event_type != "FLOODLIGHT"
AND attributed_event.event_time < conversion_event.event_time
AND attributed_event.event_time > (
SELECT
IFNULL( (
SELECT
MAX(prev_conversion_event.event_time) AS event_time
FROM
UNNEST(t.*_paths.events) AS prev_conversion_event
WHERE
prev_conversion_event.event_type = "FLOODLIGHT"
AND prev_conversion_event.event_time < conversion_event.event_time),
0)) ) AS attributed_event_metadata
WHERE
attributed_event_metadata.rank = 1) AS placement_id,
COUNT(*) AS credit
FROM
adh.*_paths AS t,
UNNEST(*_paths.events) AS conversion_event
WHERE
conversion_event.event_type = "FLOODLIGHT"
GROUP BY
placement_id
HAVING
placement_id IS NOT NULL
ORDER BY
credit DESC
Liniowy
/* Substitute *_paths for the specific paths table that you want to query. */
SELECT
attributed_event_metadata.placement_id AS placement_id,
/* Give equal credit to all attributed events */
SUM(SAFE_DIVIDE(1, ARRAY_LENGTH(attributed_events_metadata)))
FROM (
SELECT
ARRAY(
SELECT
AS STRUCT attributed_event.placement_id,
ROW_NUMBER() OVER(ORDER BY attributed_event.event_time DESC) AS rank
FROM
UNNEST(t.*_paths.events) AS attributed_event
WHERE
attributed_event.event_type!="FLOODLIGHT"
AND attributed_event.event_time < conversion_event.event_time
AND attributed_event.event_time > (
SELECT
MAX(prev_conversion_event.event_time) AS event_time
FROM
UNNEST(t.*_paths.events) AS prev_conversion_event
WHERE
prev_conversion_event.event_type="FLOODLIGHT"
AND prev_conversion_event.event_time < conversion_event.event_time)) AS attributed_events_metadata
FROM
adh.*_paths AS t,
UNNEST(*_paths.events) AS conversion_event
WHERE
conversion_event.event_type="FLOODLIGHT" ),
UNNEST(attributed_events_metadata) AS attributed_event_metadata
GROUP BY
1
HAVING
placement_id IS NOT NULL
ORDER BY
2 DESC
Wyniki
Po wykonaniu zapytania na przykładowych danych otrzymasz takie wyniki:
Pierwsza interakcja
wiersz | placement_id |
udział |
---|---|---|
1 | 11 | 2 |
2 | 22 | 1 |
Ostatnia interakcja
wiersz | placement_id |
udział |
---|---|---|
1 | 11 | 3 |
Liniowy
wiersz | placement_id |
udział |
---|---|---|
1 | 11 | 2,5 |
2 | 22 | 0,5 |