Class BigQueryConfig (2.21.1)

BigQueryConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)

Configuration for a BigQuery subscription.

Attributes

NameDescription
table :noindex: str
Optional. The name of the table to which to write data, of the form {projectId}.{datasetId}.{tableId}
use_topic_schema :noindex: bool
Optional. When true, use the topic's schema as the columns to write to in BigQuery, if it exists. use_topic_schema and use_table_schema cannot be enabled at the same time.
write_metadata :noindex: bool
Optional. When true, write the subscription name, message_id, publish_time, attributes, and ordering_key to additional columns in the table. The subscription name, message_id, and publish_time fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column.
drop_unknown_fields :noindex: bool
Optional. When true and use_topic_schema is true, any fields that are a part of the topic schema that are not part of the BigQuery table schema are dropped when writing to BigQuery. Otherwise, the schemas must be kept in sync and any messages with extra fields are not written and remain in the subscription's backlog.
state :noindex: google.pubsub_v1.types.BigQueryConfig.State
Output only. An output-only field that indicates whether or not the subscription can receive messages.
use_table_schema :noindex: bool
Optional. When true, use the BigQuery table's schema as the columns to write to in BigQuery. use_table_schema and use_topic_schema cannot be enabled at the same time.

Classes

State

State(value)

Possible states for a BigQuery subscription.

Values: STATE_UNSPECIFIED (0): Default value. This value is unused. ACTIVE (1): The subscription can actively send messages to BigQuery PERMISSION_DENIED (2): Cannot write to the BigQuery table because of permission denied errors. This can happen if

    -  Pub/Sub SA has not been granted the `appropriate BigQuery
       IAM
       permissions <https://cloud.google.com/pubsub/docs/create-subscription#assign_bigquery_service_account>`__
    -  bigquery.googleapis.com API is not enabled for the
       project
       (`instructions <https://cloud.google.com/service-usage/docs/enable-disable>`__)
NOT_FOUND (3):
    Cannot write to the BigQuery table because it
    does not exist.
SCHEMA_MISMATCH (4):
    Cannot write to the BigQuery table due to a
    schema mismatch.
IN_TRANSIT_LOCATION_RESTRICTION (5):
    Cannot write to the destination because enforce_in_transit
    is set to true and the destination locations are not in the
    allowed regions.