BigQuery
Connect with your bigquery servers via the official Node.js Driver.
Installation
Install package
npm i @vulcan-sql/extension-driver-bq
infoIf you run VulcanSQL with Docker, you should use the command
vulcan-install @vulcan-sql/extension-driver-bq
instead.Update
vulcan.yaml
, and enable the extension.extensions:
...
bq: '@vulcan-sql/extension-driver-bq' # Add this lineCreate a new profile in
profiles.yaml
or in your profile files. For example:infoYou can choose one from
keyFilename
orcredentials
to use.Your service account must have the following permissions to successfully execute queries.
- BigQuery Data Viewer
- BigQuery Job User
For details, please refer to here.
with
keyFilename
:- name: bq # profile name
type: bq
connection:
location: US
projectId: 'your-project-id'
keyFilename: '/path/to/keyfile.json'
allow: '*'with
credential
:- name: bq # profile name
type: bq
connection:
location: US
projectId: 'your-project-id'
credential:
client_email: vulcan@projectId.iam.gserviceaccount.com
private_key: '-----BEGIN PRIVATE KEY----- XXXXX -----END PRIVATE KEY-----\n'
allow: '*'Connection Configuration
Please check Interface BigQueryOptions and Google BigQuery: Node.js Client for further information.
Name Required Default Description location N US Location must match that of the dataset(s) referenced in the query. projectId N 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 Application Default Credentials), your project ID will be detected.keyFilename N 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 theemail
option as well.credentials N Credentials object. credentials.client_email N Your service account. credentials.private_key N Your service account's private key.