= gcp_bigquery_select :type: processor :status: experimental :categories: ["Integration"] //// THIS FILE IS AUTOGENERATED! To make changes, edit the corresponding source file under: https://github.com/redpanda-data/connect/tree/main/internal/impl/. And: https://github.com/redpanda-data/connect/tree/main/cmd/tools/docs_gen/templates/plugin.adoc.tmpl //// // © 2024 Redpanda Data Inc. component_type_dropdown::[] Executes a `SELECT` query against BigQuery and replaces messages with the rows returned. Introduced in version 3.64.0. ```yml # Config fields, showing default values label: "" gcp_bigquery_select: project: "" # No default (required) credentials_json: "" 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 [tabs] ====== Word count:: + -- Given a stream of English terms, enrich the messages with the word count from Shakespeare's public works: ```yaml 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 === `project` GCP project where the query job will execute. *Type*: `string` === `credentials_json` An optional field to set Google Service Account Credentials json. [CAUTION] ==== This field contains sensitive information that usually shouldn't be added to a config directly, read our xref:configuration:secrets.adoc[secrets page for more info]. ==== *Type*: `string` *Default*: `""` === `table` Fully-qualified BigQuery table name to query. *Type*: `string` ```yml # Examples table: bigquery-public-data.samples.shakespeare ``` === `columns` A list of columns to query. *Type*: `array` === `where` An optional where clause to add. Placeholder arguments are populated with the `args_mapping` field. Placeholders should always be question marks (`?`). *Type*: `string` ```yml # Examples where: type = ? and created_at > ? where: user_id = ? ``` === `job_labels` A list of labels to add to the query job. *Type*: `object` *Default*: `{}` === `args_mapping` An optional xref:guides:bloblang/about.adoc[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` ```yml # Examples args_mapping: root = [ "article", now().ts_format("2006-01-02") ] ``` === `prefix` An optional prefix to prepend to the select query (before SELECT). *Type*: `string` === `suffix` An optional suffix to append to the select query. *Type*: `string`