When setting up direct data distribution from your BigQuery data warehouse, pay attention to the best practices concerning the following:
- User access rights
- Data types
- Output Stage prefixes
This article is applicable to all use cases of GoodData and BigQuery integration:
- Integrate a Data Source into a GoodData Workspace (a getting-started guide based on sample data)
- Integrate Data Warehouses Directly to GoodData based on an Existing LDM
User Access Rights
To connect your BigQuery data warehouse and GoodData, we recommend that you use Google Cloud Platform service account.
For the sufficient level of access, grand your service account the following user roles:
For more information, see https://cloud.google.com/iam/docs/service-accounts and https://cloud.google.com/bigquery/docs/access-control).
Your service account must have the following permissions:
Google Service Account Key File
GoodData supports using Google service account key file to integrate your BigQuery dataset with the GoodData workspace and create a data source. For more information, see Create a Data Source.
The file is used to import most of the settings when you establish the connection between your BigQuery dataset and GoodData. The following information is extracted:
- client email
- private key
- Google project ID
To learn how to create service account key files, see https://cloud.google.com/iam/docs/creating-managing-service-account-keys#creating_service_account_keys.
The BigQuery data warehouse provides a wide range of data types. During mapping the BigQuery schema and the GoodData logical data model (LDM), data types are automatically converted from a BigQuery data type to a GoodData LDM data type. Some columns may be ignored because their data type is not supported within GoodData or their type may lead to performance issues. If you want to prevent automatic changes, update the schema manually.
|BigQuery Data Type||GoodData LDM Data Type|
|FLOAT64||DECIMAL (12, 2)|
|NUMERIC||DECIMAL (12, 2)|
Output Stage Prefixes
BigQuery does not support primary key constraints for tables. After generating the Output Stage, manually rename the
a__ prefix to either
cp__ (connection point) or
r__ (reference) for the generated views.
- BigQuery external data sources are not supported (for more information, see https://cloud.google.com/bigquery/external-data-sources).
- Public and commercial datasets are not supported (for more information, see https://cloud.google.com/bigquery/public-data and https://cloud.google.com/commercial-datasets).
- Loading data originating in Google Sheets (Connected Sheets) from BigQuery is not supported (for more information, see https://cloud.google.com/bigquery/docs/connected-sheets).
- BigQuery applies limits to data load queries (for more information, see https://cloud.google.com/bigquery/quotas#query_jobs).