BigQuery: вставка строки
Используйте элемент BigQuery: вставка строки, чтобы передать одну строку в таблицу BigQuery из шага Journey через API потоковой вставки. Подобно элементу Google Sheets: добавить строку, этот элемент аутентифицируется через аккаунт Google, подключенный один раз для всей учетной записи. В самом элементе нет поля для токена.
Типичные случаи использования:
- Заполнение таблицы отчетов: вставка строки для каждого достигнутого шага Journey для последующего использования в дашборде или запланированном запросе.
- Запись событий в реальном времени: потоковая передача необработанных данных Journey в BigQuery вместо ожидания пакетного экспорта.
- Объединение с существующими данными: вставка значения устройства или Tag, которое таблицы BigQuery могут использовать для объединения с вашими собственными наборами данных.
Перед началом работы
Anchor link toПодключите аккаунт Google в разделе Настройки > Сторонние интеграции > Google. Это то же подключение, которое использует элемент Google Sheets: добавить строку. После подключения Google установите интеграцию, чтобы элемент появился в конструкторе Journey.
Это не карточка Google BigQuery на той же странице. Та карточка относится к интеграции с BigQuery: она передает каждое событие сообщения приложения в фиксированную схему с использованием ключа сервисного аккаунта. Данный элемент записывает одну определенную вами строку на том шаге, где вы его размещаете, и не требует собственного ключа.

Также на стороне Google Cloud должны быть выполнены два условия, иначе запрос завершится ошибкой:
- Набор данных и таблица уже должны существовать. Этот элемент только записывает строки. Он никогда не создает таблицы.
- Подключенный аккаунт Google должен иметь роль BigQuery Data Editor (или любую роль, предоставляющую право
bigquery.tables.updateData) для этого набора данных.
Настройка элемента
Anchor link to- Перетащите элемент BigQuery: вставка строки из раздела Интеграции на левой панели на холст.
- Дважды щелкните по элементу и введите Имя шага.
- В поле ID проекта введите ID проекта Google Cloud. Используйте именно ID, а не отображаемое имя, например
my-analytics-prod.

- В поле Набор данных введите имя набора данных.

- В поле Таблица введите имя таблицы.

- В разделе Столбцы добавьте по одной строке для каждого столбца BigQuery, в который нужно записать данные. Введите имя столбца и значение. Имена не должны быть пустыми и должны быть уникальными. Каждый указанный вами столбец должен существовать в схеме таблицы. Значением может быть фиксированный текст или макрос traveler, например
{{tag:Name}}— те же макросы, что и в теле Webhook. Или нажмите Вставить динамическое значение, чтобы выбрать атрибут, созданный на предыдущем шаге этого Journey, например, ответ LLM или сопоставленное значение Webhook.

- Нажмите Сохранить.
Ответ
Anchor link toTraveler переходит к следующему шагу, который вы подключите на холсте.
Атрибуты после выполнения шага
Anchor link toЭтот элемент не возвращает атрибут в случае успеха. Если BigQuery отклоняет строку, ошибка записывается в bigquery_insert_error. См. раздел Сбои и непредвиденные ответы.
Сбои и непредвиденные ответы
Anchor link toОткройте Журнал вызовов в окне настроек элемента и проверьте ответ:
- 401 — подключение Google отсутствует или истек срок его действия. Переподключите его в разделе Настройки > Сторонние интеграции.
- 403 с
accessDenied: Streaming insert is not allowed in the free tier— к проекту не привязан платежный аккаунт. Потоковые вставки, которые использует этот элемент, не входят в бесплатный уровень (песочницу) BigQuery. Включите биллинг для проекта, и тот же запрос будет выполнен успешно. - 403 с
accessDeniedилиinsufficientPermissions— подключение было предоставлено до добавления поддержки BigQuery (переподключите его), или у аккаунта Google нет доступа на запись в набор данных. - 403 с
quotaExceededилиrateLimitExceeded— исчерпана квота проекта на потоковые вставки. Переподключение не поможет. Journey должен отправлять меньше данных, или необходимо увеличить квоту в Google Cloud. - 404 — имя проекта, набора данных или таблицы ни с чем не совпадает.
Неудачный запрос удаляет traveler из Journey. См. раздел Ошибки и неудачные запросы.
Пример сценария: заполнение таблицы отчетов BigQuery
Anchor link toКоманда хочет, чтобы активность Journey попадала в тот же набор данных BigQuery, который уже запрашивают их запланированные отчеты.
- Добавьте элемент BigQuery: вставка строки сразу после шага, который вы хотите записать. Установите для Набора данных значение
marketing, а для Таблицы —journey_events. В Столбцах установитеdevice_idв{{device:hwid}}. - Нажмите Сохранить.
После выполнения этого шага строка попадает в ту же таблицу, из которой читает запланированный запрос, поэтому следующий запуск отчета уже будет включать эти данные.