Setting up Cargo on Google BigQuery
In this tutorial, we will guide you through setting up your Google BigQuery as a store of records in Cargo. This setup ensures Cargo has the necessary permissions in Google Cloud to read and write data efficiently.
Permissions
To ensure the safety of your data, Cargo has a few limitations on what it can and cannot do inside your Google BigQuery instance.
What Cargo can do:
- Read data from schemas and tables, even if they are spread across multiple databases
- Write data into new schemas and tables
What Cargo will never do:
- Overwrite existing schemas and tables (Cargo always creates its own schemas and tables when needed)
Enable the necessary APIs
Cargo uses some Google APIs that must be enabled. To do so:
- Go to the Google Cloud Console.
- Select
APIs & Services
. - Select
Enabled APIs & Services
. - Search for and enable the following APIs:
BigQuery API
,Cloud Resource Manager API
Create a storage bucket
To enable Cargo to load and unload data from BigQuery, we need access to a dedicated storage bucket for this purpose.
To create a new bucket:
- Go to the
Google Cloud Console
. - Search
Object storage
in the search bar. - Create a
new bucket
and follow the steps.
Create a Service Account
Cargo will use this service account to access the APIs enabled in the previous step. To create a service account, follow these steps:
- Go to the
Google Cloud Console
. - Click on
IAM & Admin
. - Click on
IAM
. - Click on
Service Accounts
. - Click on
Create service account
. - Give the service account a name.
- Grant the following roles:
BigQuery Data Editor
BigQuery Job User
Storage Object User
- Click on
Done
.
Generate a Key
Follow the steps below to generate a key:
- In Service Accounts, click on the created service account.
- Click on
Keys
. - Click on
Add Key
. - Choose
Create new key
. - Select
JSON
. - Click on
Create
. - This should download a file to your computer.
Creating a New Workspace on Cargo
To create a new workspace on Cargo, follow these steps:
- In the Create new workspace form,
define a prefix
that Cargo will use to prefix the datasets and schemas it creates, in order to avoid any conflicts. - Copy and paste the content of the file into the field labeled
Service Account
. - To determine which location to use, follow these steps:
- In the Google Cloud Console, open
BigQuery
. - Choose a dataset.
- Look for the
Data location
value.
- In the Google Cloud Console, open
Setup completed
You are now ready to use Cargo with Google BigQuery!