gcp_bigquery_select
Executes a SELECT query against BigQuery and replaces messages with the rows returned.
Introduced in version 3.64.0.
# Config fields, showing default values
label: ""
gcp_bigquery_select:
project: "" # No default (required)
credentials_json: "" # No default (optional)
table: bigquery-public-data.samples.shakespeare # No default (required)
columns: [] # No default (required)
where: type = ? and created_at > ? # No default (optional)
job_labels: {}
args_mapping: root = [ "article", now().ts_format("2006-01-02") ] # No default (optional)
prefix: "" # No default (optional)
suffix: "" # No default (optional)
Examples
Word count
Given a stream of English terms, enrich the messages with the word count from Shakespeare’s public works:
pipeline:
processors:
- branch:
processors:
- gcp_bigquery_select:
project: test-project
table: bigquery-public-data.samples.shakespeare
columns:
- word
- sum(word_count) as total_count
where: word = ?
suffix: |
GROUP BY word
ORDER BY total_count DESC
LIMIT 10
args_mapping: root = [ this.term ]
result_map: |
root.count = this.get("0.total_count")
Fields
args_mapping
An optional Bloblang mapping which should evaluate to an array of values matching in size to the number of placeholder arguments in the field where.
Type: string
# Examples:
args_mapping: root = [ "article", now().ts_format("2006-01-02") ]
credentials_json
Base64-encoded Google Service Account credentials in JSON format (optional). Use this field to authenticate with Google Cloud services. For more information about creating service account credentials, see Google’s service account documentation.
|
This field contains sensitive information that usually shouldn’t be added to a configuration directly. For more information, see Secrets. |
Type: string
Default: ""