Google BigQuery
Renta реплицирует таблицы вашего датасета Google BigQuery в любое поддерживаемое назначение.
Каждый пайплайн загружает одну таблицу. Вы выбираете, какие колонки реплицировать, а строки Renta читает через BigQuery Storage Read API, не выполняя SQL-запросы в вашем проекте.
Аутентификация
Renta аутентифицируется в Google BigQuery по сервисному аккаунту Google Cloud. Создайте сервисный аккаунт в проекте Google Cloud и назначьте ему две IAM-роли:
- BigQuery Data Viewer.
Позволяет Renta просматривать датасеты и таблицы и читать их данные. - BigQuery Read Session User.
Позволяет Renta создавать сессии чтения для получения строк.
Сгенерируйте JSON-ключ сервисного аккаунта и скачайте файл. Инструкции по созданию сервисных аккаунтов и ключей см. в документации Google Cloud IAM.
При нажатии Save Renta проверяет доступ, запрашивая список таблиц выбранного датасета. Ключ с недостаточными правами вернёт ошибку сразу, а не на первом запуске пайплайна.
Подключение источника Google BigQuery
Выполните эти шаги, чтобы добавить Google BigQuery в качестве источника в Renta с использованием ключа сервисного аккаунта Google Cloud.
- В консоли Renta перейдите в раздел Connections > Catalog в левой панели.
- Разверните категорию Database и нажмите на карточку Google BigQuery с пометкой Source. Карточка с пометкой Destination подключает хранилище, в которое вы загружаете данные.

В качестве метода авторизации выбран GCP Service Account. Нажмите Upload a Service Account JSON file и выберите файл ключа, скачанный из Google Cloud Console.

- Source name.
Введите имя источника данных. Оно используется только в консоли Renta. - BigQuery project.
Выберите проект Google Cloud, из которого хотите экспортировать данные. В списке показаны все проекты, к которым есть доступ у сервисного аккаунта. - BigQuery dataset.
Выберите датасет внутри проекта. Пайплайны подключения читают таблицы только из этого датасета.
Нажмите Save. Renta проверит доступ, запросив список таблиц датасета.

Источник появится в списке Sources со статусом Active. Теперь его можно использовать в пайплайнах.

Создание пайплайна данных
После подключения источника BigQuery вы можете создать пайплайн для загрузки таблицы в ваше назначение.
Создание пайплайна данных
Свяжите источник Google BigQuery с назначением и настройте пайплайн данных.
В левой панели нажмите New pipeline. На шаге Source выберите Google BigQuery в разделе Already connected и нажмите Next step.

Выберите подключение Google BigQuery, которое вы создали ранее, и нажмите Next step. На карточке показан email сервисного аккаунта: он помогает различать подключения BigQuery, когда их несколько.

На шаге Destination выберите целевое назначение и нажмите Next step. Google BigQuery доступен и как назначение, поэтому пайплайн может копировать таблицы между проектами и датасетами.

Выберите подключение, в которое будут загружаться данные, и нажмите Next step. На карточке показаны целевой датасет и проект.

Настройка пайплайна
На последнем шаге выберите таблицу, колонки и расписание.
Выбор таблицы
В выпадающем списке Table выберите таблицу для репликации. Список показывает таблицы датасета, который вы указали при настройке подключения. Один пайплайн загружает одну таблицу, поэтому под каждую нужную таблицу создайте отдельный пайплайн.

Датасет привязан к подключению, а не к пайплайну. Чтобы экспортировать таблицу из другого датасета или проекта, создайте новое подключение Google BigQuery.
В списке могут быть и представления (views), но Renta экспортирует только таблицы. Запуск пайплайна по представлению завершится ошибкой.
Настройка колонок
Отметьте колонки, которые попадут в целевую таблицу. Когда вы открываете пикер, Renta читает схему прямо из таблицы. Кнопка Select All выбирает все колонки сразу, а список Selected Table columns убирает ненужные.

| Тип колонки BigQuery | Поведение при репликации |
|---|---|
| RECORD | Выбирается целиком, вместе со всеми вложенными полями. |
| REPEATED | Загружается как массив значений в одну целевую колонку. |
| Числовые, календарные и логические | Сохраняют свои типы в назначении. |
| TIMESTAMP, DATETIME, TIME | Загружаются как значения datetime. |
| NUMERIC, BIGNUMERIC | Загружаются как float. |
| STRING, BYTES, JSON, GEOGRAPHY | Загружаются как текст. |
Имя пайплайна и таблицы
Назовите пайплайн и целевую таблицу.

- Integration name.
Отображаемое имя пайплайна в консоли Renta. - Table name.
Имя таблицы в назначении. Можно оставить автоматически созданное имя или указ ать своё.
Расписание
Выберите, как часто пайплайн будет запускаться.

| Тип расписания | Описание |
|---|---|
| Manual | Пайплайн запускается только вручную через консоль Renta или API. |
| Daily | Пайплайн запускается раз в день в указанное время обновления. |
| Interval | Пайплайн запускается через заданные интервалы времени. |
| Cron Expression | Пайплайн запускается по расписанию из cron-выражения. |
Для расписаний типа Daily настройте Update time (точное время запуска) и нажмите Create pipeline.

Renta также поддерживает запуск по API и интеграцию с внешними оркестраторами, такими как Apache Airflow, Dagster и Prefect. Подробности в документации п о расписаниям.
Новый пайплайн появится в разделе Pipelines на вкладке ETL. Там можно отслеживать запуски, прогресс и имя целевой таблицы.

Стратегия синхронизации
Renta синхронизирует выбранную таблицу BigQuery по единственной стратегии.
| Стратегия | Поддерживаемые типы отчётов | Описание |
|---|---|---|
| Full reload | Выбранная таблица | Renta читает таблицу целиком на каждом запуске и заменяет содержимое целевой таблицы, поэтому она повторяет источник на момент запуска. Строки Renta забирает через BigQuery Storage Read API и не выполняет SQL-запросы в вашем проекте. |
Поскольку каждый запуск читает таблицу целиком, у пайплайна нет настроек диапазона дат и периода перезаписи, а целевые таблицы не партиционируются.
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.