Google BigQuery
Renta replicates tables from your Google BigQuery dataset to any supported destination.
Each data pipeline loads a single table. You select which columns to replicate, and Renta reads the rows through the BigQuery Storage Read API without running SQL queries in your project.
Authentication
Renta authenticates with Google BigQuery using a Google Cloud service account. Create a service account in your Google Cloud project and grant it two IAM roles:
- BigQuery Data Viewer.
Allows Renta to list datasets and tables and read their data. - BigQuery Read Session User.
Allows Renta to create read sessions for fetching rows.
Generate a JSON service account key and download the file. For instructions on creating service accounts and keys, refer to the Google Cloud IAM documentation.
When you click Save, Renta validates your access by requesting the list of tables in the selected dataset. A key with insufficient permissions returns an error immediately instead of failing on the first pipeline run.
Connect Google BigQuery as a source
Follow these steps to add Google BigQuery as a source in Renta using a Google Cloud service account key.
- In the Renta console, navigate to Connections > Catalog in the left sidebar.
- Expand the Database category and click the Google BigQuery card labeled Source. The card labeled Destination connects the data warehouse you load data into.

The authorization method is set to GCP Service Account. Click Upload a Service Account JSON file and select the key file you downloaded from the Google Cloud Console.

- Source name.
Enter a name for this data source. This name is used exclusively in the Renta console. - BigQuery project.
Select the Google Cloud project you want to export data from. The dropdown lists all projects accessible by your service account. - BigQuery dataset.
Select the dataset within the project. Pipelines using this connection read tables from this dataset only.
Click Save. Renta verifies your access by listing the tables within the dataset.

The new source appears in your Sources list with the Active status. You can now use it to build data pipelines.

Create a data pipeline
Once your BigQuery source is connected, you can create a pipeline to load a table into your destination.
Create a data pipeline
Link your Google BigQuery source to a destination and configure the data pipeline.
In the left sidebar, click New pipeline. On the Source step, choose Google BigQuery under Already connected, and then click Next step.

Select the Google BigQuery connection you created previously and click Next step. The connection card displays the service account email, which is helpful if you manage multiple BigQuery connections.

On the Destination step, select your target destination and click Next step. Google BigQuery is also available as a destination, allowing you to copy tables across different projects or datasets.

Choose the destination connection you want to load data into and click Next step. The card displays the target dataset and project.

Pipeline configuration
In the final step, you configure the table, columns, and execution schedule.
Table selection
In the Table dropdown menu, select the table you want to replicate. The list shows the tables of the dataset you specified during connection setup. One pipeline loads one table, so create a separate pipeline for each table you need.

The dataset is bound to the connection, not the pipeline. To export a table from a different dataset or project, create another Google BigQuery connection.
The dropdown menu also lists views, but Renta exports native tables only. A pipeline run over a view fails with an error.
Column configuration
Select the columns you want to load into the destination table. When you open the picker, Renta fetches the schema directly from the table. Use Select All to choose every column, or remove unneeded columns from the Selected Table columns list.

| BigQuery column type | Replication behavior |
|---|---|
| RECORD | Selected in its entirety, including all nested fields. |
| REPEATED | Loaded as an array of values into a single destination column. |
| Numeric, date, and boolean | Keep their types in the destination. |
| TIMESTAMP, DATETIME, TIME | Loaded as datetime values. |
| NUMERIC, BIGNUMERIC | Loaded as float values. |
| STRING, BYTES, JSON, GEOGRAPHY | Loaded as text. |
Pipeline naming
Assign a name to the pipeline and specify the destination table name.

- Integration name.
The display name of the pipeline in the Renta console. - Table name.
The name of the table in your destination. You can keep the auto-generated name or enter your own.
Schedule execution
Define how frequently the pipeline should run.

| Schedule type | Description |
|---|---|
| Manual | The pipeline runs only when triggered manually via the Renta console or API. |
| Daily | The pipeline runs once a day at a specified update time. |
| Interval | The pipeline runs at specified time intervals. |
| Cron Expression | The pipeline runs on a schedule defined by a cron expression. |
For Daily schedules, set the Update time (the exact time each run starts), then click Create pipeline.

Renta also supports API triggers and integration with external orchestrators such as Apache Airflow, Dagster, and Prefect. See the scheduling documentation for details.
The new pipeline appears in the Pipelines section under the ETL tab, where you can track its runs, progress, and the destination table name.

Sync strategy
Renta synchronizes the selected BigQuery table with a single strategy.
| Strategy | Supported report types | Description |
|---|---|---|
| Full reload | The selected table | Renta reads the table in full on every run and replaces the contents of the destination table, so it matches the source at the time of the run. Renta fetches rows through the BigQuery Storage Read API and does not run SQL queries in your project. |
Because every run reads the table in full, the pipeline has no date range or overwrite period settings, and destination tables stay unpartitioned.
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.