Google BigQuery как источник Reverse ETL
Renta читает модель данных из вашего проекта Google BigQuery и синхронизирует её строки в бизнес-инструмент через reverse-ETL пайплайн.
Модель данных это сохранённый запрос вместе с обвязкой: список колонок, уникальный ключ, по которому строка опознаётся между запусками, и описания, которые читают AI-агенты. Одна модель может питать несколько пайплайнов.
Подключение
Reverse-ETL пайплайн читает из того же подключения Google BigQuery, что и ETL-пайплайны. Коннектор BigQuery один, и он показывается на обеих вкладках каталога.
Если подключения BigQuery в воркспейсе ещё нет, создайте его. Роли сервисного аккаунта и выбор проекта с датасетом описаны на странице источника Google BigQuery.
Создание модели данных
Модели живут в разделе Tools > Data models. Список показывает, сколько всего моделей, какие из них видны AI-агентам и какие доступны reverse-ETL.

Нажмите New model, чтобы открыть мастер.
Задайте запрос
Первый шаг выбирает подключение и то, что из него читать.

- Source.
Подключение BigQuery, из которого читает модель. После создания модели поменять его нельзя. - Query type.
SQL query для запроса, который вы пишете сами, или Table or view, чтобы синхронизировать готовый объект как есть. Вариант dbt Cloud пока недоступен.
Renta принимает один запрос только на чтение. Запрос из нескольких стейтментов или с любой операцией записи внутри отклоняется при переходе на следующий шаг.
| Правило | Что Renta отклоняет |
|---|---|
| Один стейтмент | Всё после первого стейтмента. Уберите лишние, разделённые точкой с запятой. |
| Только чтение | INSERT, UPDATE, DELETE, MERGE, CREATE, DROP, ALTER, TRUNCATE и вызовы процедур, в том числе внутри CTE. |
| SELECT в корне | Запрос, в корне которого не SELECT, не UNION и не подзапрос. |
| Длина | Запрос длиннее 50 000 символов. |
Проверьте результат
Кнопка Run preview выполняет запрос и пока зывает первые строки вместе со стоимостью выполнения.

В подвале указаны обработанные байты, оплаченные байты, оценка стоимости, признак попадания в кеш и идентификатор job, поэтому дорогая модель показывает свою цену до того, как на ней построят пайплайн.
Превью читает не больше 100 строк, ждёт до 60 секунд и не сканирует больше 10 ГиБ. Запрос, упирающийся в лимит сканирования, сообщает об этом вместо выполнения, и добавить условие WHERE лучше здесь, а не после первой синхронизации.
Выберите scope
Scope определяет, к ому доступна модель.

| Scope | Кто видит модель | Уникальный ключ |
|---|---|---|
| AI agents & Reverse ETL | AI-агенты и reverse-ETL пайплайны | Обязателен |
| AI agents only | AI-агенты | Необязателен |
| Reverse ETL only | Reverse-ETL пайплайны | Обязателен |
Пайплайн показывает только модели со scope Reverse ETL only или AI agents & Reverse ETL, поэтому модель, оставленная на AI agents only, в списке Data model не появится.
Подтвердите колонки и ключ
Шаг схемы показывает колонки, которые возвращает запрос, с примером значения и признаком nullable для каждой.

В колонке Unique выберите поле, по которому строка опознаётся между запусками. Оно нужно Renta, чтобы отличить обновлённую строку от новой, и выбор проверяется при переходе дальше, а не принимается на веру.
| Проверка | Сообщение |
|---|---|
| В колонке есть NULL | Количество NULL против общего числа строк. Уникальный ключ должен быть непустым. |
| Значения повторяются | Количество дублей и количество различных значений. |
NULL проверяются первыми, поэтому колонка с обеими проблемами сообщит про NULL и промолчит про дубли, пока вы их не почините.
Опишите модель
Метаданные это то, по чему модель понимают коллега и AI-агент.

- Model name.
Как на модель ссылаются пайплайны и инструменты агентов. Нижний регистр с подчёркиваниями. - Description.
Что модель собой представляет и когда её использовать. Поддерживается markdown. - Column descriptions.
Необязательные описания колонок. Кнопка Auto-generate with AI заполняет их по запросу и примерам данных.
Правая панель показывает превью tool definition, который получит агент, а счётчик токенов показывает, сколько контекста агента займёт модель.
Сохраните модель
Готовая модель появляется в списке со своим scope, количеством строк и временем последнего обновления.

Любую часть можно поменять позже на вкладках Query, Schema & key, Metadata и Measures.
Использование модели в пайплайне
Когда модель сохранена, reverse-ETL пайплайн связывает её с бизнес-инструментом.
Запуск reverse-ETL пайплайна
Направьте reverse-ETL пайплайн на вашу модель данных BigQuery.
В левом меню нажмите New pipeline. Переключите вкладку с ETL на Reverse ETL, выберите Google BigQuery и нажмите Next step.

Выберите подключение BigQuery, в котором лежит модель, и нажмите Next step. Дальше мастер идёт к назначению, где в списке Data model будут модели, доступные этому подключению для reverse-ETL.

Настройки после этого относятся к назначению. Маппинг полей и параметры синхронизации описаны на странице каждого назначения.
Что запуск оставляет в вашем проекте
Reverse-ETL запуск работает внутри вашего проекта BigQuery и не только читает из него, но и пишет в него.
Каждый запуск материализует таблицу плана с тем, что нужно отправить, и таблицу отклонений со строками, которые назначение не приняло. Обе таблицы Renta держит за текущий и предыдущий запуск, а более старые удаляет. После первой удачной синхронизации таких таблиц две, начиная со второго запуска их четыре.
Очистка выполняется по возможности. Если сервисному аккаунту не хватает прав на удаление таблиц, запуск всё равно завершится успешно, старые таблицы останутся, и датасет будет тихо разрастаться. Выдайте сервисному аккаунту право удалять таблицы в датасете или чистите его сами.
Чтение модели стоит столько же, сколько стоит её запрос, и так на каждом запуске. Подвал превью это самое дешёвое место, чтобы это выяснить.
Ready to get started?
Build your data pipeline today or get a personalized demo. Start free!
Need help?
Get expert support to ensure your project succeeds. We're here to help!
Feature requests?
Help shape our product! Share your ideas for new features and integrations.