Skip to main content

Connecting BigQuery

You'll need:

  • A Google Cloud Project with BigQuery enabled
  • A Google Cloud Service Account with the "BigQuery User" and "BigQuery Data Editor" roles in your GCP project
  • A Service Account Key to authenticate into your Service Account

Service account

In order for Motif to sync data from BigQuery, it needs credentials for a Service Account with the "BigQuery User" and "BigQuery Data Editor" roles, which grants permissions to run BigQuery jobs, write to BigQuery Datasets, and read table metadata. We highly recommend that this Service Account is exclusive to Motif for ease of permissioning and auditing. However, you can use a pre-existing Service Account if you already have one with the correct permissions.

The easiest way to create a Service Account is to follow GCP's guide for Creating a Service Account. Once you've created the Service Account, make sure to keep its ID handy as you will need to reference it when granting roles. Service Account IDs typically take the form <account-name>@<project-name>.iam.gserviceaccount.com

Then, add the service account as a Member in your Google Cloud Project with the "BigQuery User" role. To do this, follow the instructions for Granting Access in the Google documentation. The email address of the member you are adding is the same as the Service Account ID you just created.

At this point you should have a service account with the "BigQuery User" project-level permission.

Service account key

Service Account Keys are used to authenticate as Google Service Accounts. For Motif to leverage the permissions you granted to the Service Account in the previous step, you'll need to provide its Service Account Keys. See the Google documentation for more information about Keys.

Follow the Creating and Managing Service Account Keys guide to create a key. Motif currently supports JSON Keys only, so make sure you create your key in that format. As soon as you created the key, make sure to download it, as that is the only time Google will allow you to see its contents. Once you've successfully configured BigQuery as a source in Motif, delete this key from your computer.

You'll need to ensure that the service account has the bigquery.jobs.create permission. Instructions on how to do this can be found here.

Make note of the following information:

  1. Project ID
  2. Default Dataset ID[Optional]: the schema name if only one schema is interested. Dramatically boost source discover operation.
  3. Credentials JSON: The contents of your Service Account Key JSON file

Follow instructions to share your data source configuration with Motif.