extension-driver-bq
nodejs-bigquery driver for Vulcan SQL.
Install
-
Install package
npm i @vulcan-sql/extension-driver-bq
-
Update
vulcan.yaml
, enable the extension.extensions: bq: '@vulcan-sql/extension-driver-bq'
-
Create a new profile in
profiles.yaml
or in your profiles' paths.
⚠️ Your service account must have the following permissions to successfully execute queries.
- BigQuery Data Viewer
- BigQuery Job User
- name: bq # profile name
type: bq
connection:
# Location must match that of the dataset(s) referenced in the query.
location: US
# Optional: The max rows we should fetch once.
chunkSize: 100
# The project ID from the Google Developer's Console, e.g. 'grape-spaceship-123'. We will also check the environment variable `GCLOUD_PROJECT` for your project ID. If your app is running in an environment which [supports](https://cloud.google.com/docs/authentication/production#providing_credentials_to_your_application) Application Default Credentials), your project ID will be detected.
projectId: 'your-project-id'
# Full path to the a .json, .pem, or .p12 key downloaded from the Google Developers Console. If you provide a path to a JSON file, the `projectId` option above is not necessary. NOTE: .pem and .p12 require you to specify the `email` option as well.
keyFilename: '/path/to/keyfile.json'
cache:
# The GCS bucket name for vulcan to store query result that will be used in cache feature
bucketName: 'your-bucket-name'
Testing
nx test extension-driver-bq
This library was generated with Nx.
To run test, the following environment variables are required:
- BQ_LOCATION
- BQ_PROJECT_ID
- BQ_CLIENT_EMAIL
- BQ_PRIVATE_KEY
- GCS_BUCKET_NAME