При назначении пользователю персонализации функция Remote Config регистрирует событие personalization_assignment Analytics , что позволяет использовать BigQuery для проверки и анализа событий персонализации и связанных с ними событий.
В следующих разделах описывается, как включить экспорт событий Analytics в BigQuery , как хранятся события персонализации, а также приводятся несколько базовых запросов для начала работы.
Включите экспорт BigQuery для Google Analytics в Firebase .
Если вы используете тарифный план Spark, вы можете бесплатно использовать песочницу BigQuery для доступа к BigQuery , с учетом ограничений песочницы . Дополнительную информацию см. в разделах «Цены» и «Песочница BigQuery» .
Во-первых, убедитесь, что вы экспортируете данные Analytics в BigQuery :
- Откройте вкладку «Интеграции» , доступ к которой можно получить через > «Настройки проекта» в консоли Firebase .
- Если вы уже используете BigQuery с другими сервисами Firebase, нажмите «Управление» . В противном случае нажмите «Связать» .
- Ознакомьтесь с информацией о подключении Firebase к BigQuery , затем нажмите «Далее» .
- В разделе «Настройка интеграции» включите переключатель Google Analytics .
Выберите регион и укажите параметры экспорта.
Перейдите по ссылке на BigQuery .
В зависимости от выбранного вами способа экспорта данных, доступность таблиц может занять до суток. Для получения дополнительной информации об экспорте проектных данных в BigQuery см. раздел «Экспорт проектных данных в BigQuery» .
Далее, давайте получим доступ к событиям персонализации в BigQuery и проанализируем их.
Доступ к данным персонализации Remote Config с помощью BigQuery
Для запроса аналитических данных для эксперимента:
- Откройте BigQuery в консоли Google Cloud . Вы также можете открыть его непосредственно из событий Analytics , используя ссылку «Просмотреть необработанные события в BigQuery внизу страницы.
Выберите свой проект Firebase , разверните его, затем разверните запись
analytics_ ANALYTICS_PROPERTY_IDи нажмитеevents_.
В раскрывающемся списке «Запрос» выберите «В новой вкладке» .
Появляется автоматически сгенерированный пример запроса.
Чтобы просмотреть события персонализации и связанные с ними данные, обновите запрос, выбрав события
personalization_assignment. Следующий пример запроса вернет полное событие назначения персонализации для определенного временного интервала, ограничив результаты 10:# Select all personalization_assignment events SELECT * FROM `PROJECT_NAME.analytics_ANALYTICS_PROPERTY_ID.events_DATE_SHARD` WHERE event_name = 'personalization_assignment' LIMIT 10Совет: Чтобы выполнить поиск по всем таблицам событий, а не только по сегментированной таблице, можно заменить дату в таблице событий звездочкой (например,
PROJECT_NAME .analytics_ ANALYTICS_PROPERTY_ID .events_*). Это не рекомендуется в сценариях, не связанных с тестированием, или для больших наборов данных.В редакторе запросов выберите «Выполнить запрос». Результаты отобразятся в нижней панели.
В следующем разделе мы более подробно обсудим, что включает в себя событие по назначению персонализации.
Какие данные персонализации экспортируются в BigQuery ?
Данные персонализации включены в таблицы Google Analytics в BigQuery и хранятся в событиях personalization_assignment .
Основные поля, предоставляемые в событии персонализации, такие же, как и в любом событии Analytics , как описано в [GA4] Схема экспорта BigQuery . В основном вас будут интересовать user_pseudo_id i (который можно использовать для различения разных пользователей), временные метки событий и другие свойства пользователя.
Подробные сведения о персонализации хранятся в поле event_params и описаны в следующей таблице:
| Параметр | Тип данных | Описание |
|---|---|---|
| персонализация_идентификатор | НИТЬ | Предоставляет универсальный уникальный идентификатор (UUID) для назначенной персонализации. |
| группа | НИТЬ | Указывает, был ли пользователь отнесен к группе персонализации (P13N) или к базовой группе (BASELINE). |
| arm_index | ЦЕЛОЕ | Представляет собой альтернативное значение, присвоенное пользователю, — целое число от 0 до 4. |
| arm_key | НИТЬ | Содержит имя параметра, используемого в персонализации. |
| arm_value | НИТЬ | Содержит строковое значение альтернативного варианта, присвоенное в процессе персонализации. |
| engaged_session_event | ЦЕЛОЕ | Включает количество сессий, в которых участвует пользователь. Дополнительную информацию см. в разделе «О сессиях» . |
| firebase_event_origin | НИТЬ | Указывает источник события. Для событий personalization_assignment это всегда будет fp . |
| firebase_screen_class | НИТЬ | Указывает имя класса экрана, на котором пользователь был активен в момент назначения персонализации. Дополнительную информацию см. в разделе «Автоматически собираемые события» . |
| firebase_screen_id | ЦЕЛОЕ | Отображает идентификатор экрана, на котором находился пользователь в момент назначения персонализации. Дополнительную информацию см. в разделе «Автоматически собираемые события» . |
| first_open_time | НИТЬ | Предоставляет метку времени в миллисекундах UTC, когда пользователь впервые открыл приложение. Дополнительную информацию см. в разделе «Автоматически собираемые события» . |
| ga_session_id | ЦЕЛОЕ | Предоставляет идентификатор сессии Google Analytics . Дополнительную информацию см. в разделе «О сессиях» . Вы можете использовать его для сопоставления события personalization_assignment с другими событиями Analytics . |
| ga_session_number | ЦЕЛОЕ | Предоставляет номер сессии Google Analytics . Дополнительную информацию см. в разделе «О сессиях» . |
Примеры запросов
Для извлечения параметров, специфичных для персонализации, из событий personalization_assignment можно использовать следующий SQL-запрос:
# Expand nested personalization parameters
SELECT
timestamp_micros(event_timestamp) AS event_time,
user_pseudo_id,
(
SELECT event_params.value.string_value
FROM UNNEST(event_params) event_params
WHERE event_params.key = 'group'
) AS personalization_group,
(
SELECT event_params.value.string_value
FROM UNNEST(event_params) event_params
WHERE event_params.key = 'personalization_id'
) AS personalization_id,
(
SELECT event_params.value.string_value,
FROM UNNEST(event_params) event_params
WHERE event_params.key = 'arm_key'
) AS arm_key,
(
SELECT event_params.value.string_value
FROM UNNEST(event_params) event_params
WHERE event_params.key = 'arm_value'
) AS arm_value,
(
SELECT event_params.value.int_value
FROM UNNEST(event_params) event_params
WHERE event_params.key = 'ga_session_id'
) AS ga_session_id,
FROM `PROJECT_NAME.analytics_ANALYTICS_ACCOUNT_ID.events_DATE_SHARD`
WHERE event_name = 'personalization_assignment'
LIMIT 10