# Загрузить данные из BigQuery

> **Коротко.** Как подключить Google BigQuery через вход Google или ключ сервисного аккаунта и загрузить результат SQL-запроса. Обновление — только вручную.

Адрес: https://marfor.pro/docs/data/sources/bigquery · Раздел: Данные: от таблицы до проверенного источника › Источники данных: откуда MARFOR берёт таблицу › Загрузить данные из BigQuery · Вид: Инструкция · Уровень: средний уровень · Обновлено: 2026-10-14

Если данные лежат в BigQuery, MARFOR выполнит ваш SQL-запрос и сохранит результат как источник проекта. Запрос хранится в источнике — обновить данные можно в один клик.

## Что нужно заранее {#before}

- Доступ к проекту Google Cloud, где лежат данные: Google-аккаунт с правом выполнять запросы или ключ сервисного аккаунта в JSON.
- ID проекта Google Cloud (GCP Project ID), от имени которого пойдёт запрос.
- Запрос, который возвращает таблицу по правилам: дата, разрезы, показатели — [какие данные нужны](https://marfor.pro/docs/data/requirements). Суммируйте до дня или месяца: так меньше строк и проще маппинг.

## Шаги {#steps}

1. В проекте: «Источники данных» → блок «API Коннекторы» → карточка «BigQuery».
2. Авторизация, один из двух способов:
   - «Continue with Google» — войдите Google-аккаунтом с доступом к проекту BigQuery. Вы вернётесь в «Источники данных»: снова нажмите карточку «BigQuery» — в окне будет «Подключено: …» с вашей почтой. Ключ не нужен;
   - или вставьте JSON ключа сервисного аккаунта в поле «Или ключ сервисного аккаунта (если не используете Google)» — либо выберите файл ключа.
3. «Название источника».
4. «GCP Project ID».
5. «SQL-запрос» — только SELECT. Например:
   `SELECT date, channel, SUM(cost) AS spend, SUM(orders) AS orders FROM dataset.table GROUP BY date, channel`
6. «Загрузить данные» → «Загружено N записей из BigQuery». Окно закроется; на карточке нажмите «Настроить маппинг».

## Как понять, что получилось {#result}

Карточка с типом «BigQuery» и числом строк. Если на карточке написано «Есть вложенные поля (Record)…», разверните их в запросе через UNNEST и создайте источник заново — на шаге маппинга будет подсказка с примером.

## Как обновлять {#refresh}

Автозагрузки по расписанию у BigQuery нет. В настройках источника переключатель «Включить автозагрузку» виден, но на BigQuery не действует.

1. Круговые стрелки на карточке → «Обновить данные из BigQuery?» → «Данные обновлены: N записей». Запрос выполнится заново, и данные источника заменятся целиком.
2. Затем **«Настроить маппинг» → «Применить маппинг»**. Ручное обновление BigQuery маппинг само не переприменяет: без этого шага «Обзор данных» и новые прогнозы видят прежние строки.

> [!Совет]
> Если данные нужны каждый день, выгрузите результат запроса в Google Таблицу или в файл по ссылке и подключите его [ссылкой на CSV](https://marfor.pro/docs/data/sources/url): у ссылки есть автозагрузка.

## Если не получилось {#troubleshooting}

- **«Укажите GCP Project ID».** Заполните поле.
- **«Введите SQL-запрос».** Поле запроса пустое.
- **«Разрешены только SELECT запросы».** Запрос должен начинаться с SELECT.
- **«Войдите через Google или вставьте JSON ключа сервисного аккаунта».** Выберите способ авторизации.
- **«Это JSON OAuth-клиента (client_secret), а не ключ сервисного аккаунта…».** Нужен ключ сервисного аккаунта: Google Cloud Console → IAM → Service accounts → ключ JSON. Или войдите через «Continue with Google».
- **«Нужен ключ сервисного аккаунта (поля client_email, private_key, type: service_account)…».** Вставлен не тот JSON — скопируйте файл ключа целиком.
- **«Неверный формат JSON учётных данных».** Ключ скопирован не полностью.
- **«Запрос не вернул данных».** Проверьте фильтры и период в запросе.
- **«Источник превышает лимит вашего тарифа…».** На Free в источнике — до 10 000 строк: агрегируйте сильнее или сократите период.
- **После «Обновить» в «Обзоре данных» старые цифры.** Примените маппинг заново — шаг 2 выше.

## Связанные

- [Как обновляется источник: перезапись, добавление и окно перезабора](https://marfor.pro/docs/data/sources/refresh)
- [Настроить маппинг источника: дата, метрики и разрезы](https://marfor.pro/docs/data/mapping/roles)
- [Какие данные нужны: таблица для MARFOR](https://marfor.pro/docs/data/requirements)
- [Лимиты: где можно упереться на первых шагах](https://marfor.pro/docs/account/limits)
