Update a BigQuery table’s metadata.
type: "io.kestra.plugin.gcp.bigquery.updatetable"Examples
id: gcp_bq_update_table
namespace: company.team
tasks:
- id: update_table
type: io.kestra.plugin.gcp.bigquery.UpdateTable
projectId: my-project
dataset: my-dataset
table: my-table
expirationDuration: PT48H
Properties
dataset*Requiredstring
The dataset's user-defined ID.
table*Requiredstring
The table's user-defined ID.
descriptionstring
encryptionConfigurationNon-dynamic
io.kestra.plugin.gcp.bigquery.models.EncryptionConfiguration
expirationDurationstring
durationSets the duration, since now, when this table expires.
friendlyNamestring
impersonatedServiceAccountstring
The GCP service account to impersonate.
labelsobject
locationstring
The geographic location where the dataset should reside.
This property is experimental and might be subject to change or removed.
See Dataset Location
projectIdstring
The GCP project ID.
requirePartitionFilterbooleanstring
retryAutoNon-dynamic
Automatic retry for retryable BigQuery exceptions.
Some exceptions (especially rate limit) are not retried by default by BigQuery client, we use by default a transparent retry (not the kestra one) to handle this case. The default values are exponential of 5 seconds for a maximum of 15 minutes and ten attempts
io.kestra.core.models.tasks.retrys.Constant
durationRETRY_FAILED_TASKRETRY_FAILED_TASKCREATE_NEW_EXECUTION>= 1durationfalseio.kestra.core.models.tasks.retrys.Exponential
durationdurationRETRY_FAILED_TASKRETRY_FAILED_TASKCREATE_NEW_EXECUTION>= 1durationfalseio.kestra.core.models.tasks.retrys.Random
durationdurationRETRY_FAILED_TASKRETRY_FAILED_TASKCREATE_NEW_EXECUTION>= 1durationfalseretryMessagesarray
["due to concurrent update","Retrying the job may solve the problem","Retrying may solve the problem"]The messages which would trigger an automatic retry.
Message is tested as a substring of the full message, and is case insensitive.
retryReasonsarray
["rateLimitExceeded","jobBackendError","backendError","internalError","jobInternalError"]The reasons which would trigger an automatic retry.
scopesarray
["https://www.googleapis.com/auth/cloud-platform"]The GCP scopes to be used.
serviceAccountstring
The GCP service account.
tableDefinitionNon-dynamic
io.kestra.plugin.gcp.bigquery.models.TableDefinition
The external table definition if the type is EXTERNAL.
io.kestra.plugin.gcp.bigquery.models.ExternalTableDefinition
Whether automatic detection of schema and format options should be performed.
The compression type of the data source.
CSVJSONBIGTABLEDATASTORE_BACKUPAVROGOOGLE_SHEETSPARQUETORCThe source format, and possibly some parsing options, of the external data.
Whether BigQuery should allow extra values that are not represented in the table schema.
If true, the extra values are ignored. If false, records with extra columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result.
The maximum number of bad records that BigQuery can ignore when reading data.
If the number of bad records exceeds this value, an invalid error is returned in the job result.
The fully-qualified URIs that point to your data in Google Cloud Storage.
Each URI can
- contain one '*' wildcard character that must come after the bucket's name. Size limits related
- to load jobs apply to external data sources, plus an additional limit of 10 GB maximum size
- across all URIs.
The materialized view definition if the type is MATERIALIZED_VIEW.
io.kestra.plugin.gcp.bigquery.models.MaterializedViewDefinition
Whether automatic refresh is enabled for the materialized view when the base table is updated.
date-timeDate when this materialized view was last modified.
durationThe maximum frequency at which this materialized view will be refreshed.
The table's schema.
io.kestra.plugin.gcp.bigquery.models.Schema
io.kestra.plugin.gcp.bigquery.models.Field
The field description.
NULLABLEREQUIREDREPEATEDThe field mode.
By default, Field.Mode.NULLABLE is used.
The field name.
The policy tags for the field.
The list of sub-fields if type is a LegacySQLType.RECORD. Returns null otherwise.
BOOLINT64FLOAT64NUMERICBIGNUMERICSTRINGBYTESSTRUCTARRAYTIMESTAMPDATETIMEDATETIMEGEOGRAPHYJSONINTERVALRANGEThe field type.
The table definition if the type is TABLE.
io.kestra.plugin.gcp.bigquery.models.StandardTableDefinition
Returns the clustering configuration for this table. If {@code null}, the table is not clustered.
Returns the range partitioning configuration for this table. If {@code null}, the table is not range-partitioned.
io.kestra.plugin.gcp.bigquery.models.RangePartitioning
Returns information on the table's streaming buffer, if exists. Returns {@code null} if no streaming buffer exists.
com.google.cloud.bigquery.StandardTableDefinition-StreamingBuffer
Returns the time partitioning configuration for this table. If {@code null}, the table is not time-partitioned.
io.kestra.plugin.gcp.bigquery.models.TimePartitioning
durationThe number of milliseconds for which to keep the storage for a partition. When expired, the storage for the partition is reclaimed. If null, the partition does not expire.
If not set, the table is partitioned by pseudo column '_PARTITIONTIME'; if set, the table is partitioned by this field.
If set to true, queries over this table require a partition filter (that can be used for partition elimination) to be specified.
DAYHOURMONTHYEARThe time partitioning type.
TABLEVIEWMATERIALIZED_VIEWEXTERNALMODELThe table's type.
The view definition if the type is VIEW.
io.kestra.plugin.gcp.bigquery.models.ViewDefinition
The query whose result is persisted.
User defined functions that can be used by query. Returns {@code null} if not set.
io.kestra.plugin.gcp.bigquery.models.UserDefinedFunction
INLINEFROM_URIIf type is UserDefinedFunction.Type.INLINE, this method returns a code blob.
If type is UserDefinedFunction.Type.FROM_URI, the method returns a Google Cloud Storage URI (e.g. gs://bucket/path).
Outputs
creationTimestring
date-timeThe time when this table was created.
datasetIdstring
The dataset's ID.
definition
The table definition.
io.kestra.plugin.gcp.bigquery.models.TableDefinition-Output
io.kestra.plugin.gcp.bigquery.models.ExternalTableDefinition-Output
CSVJSONBIGTABLEDATASTORE_BACKUPAVROGOOGLE_SHEETSPARQUETORCio.kestra.plugin.gcp.bigquery.models.MaterializedViewDefinition-Output
date-timedurationio.kestra.plugin.gcp.bigquery.models.Schema-Output
io.kestra.plugin.gcp.bigquery.models.Field-Output
NULLABLEREQUIREDREPEATEDBOOLINT64FLOAT64NUMERICBIGNUMERICSTRINGBYTESSTRUCTARRAYTIMESTAMPDATETIMEDATETIMEGEOGRAPHYJSONINTERVALRANGEio.kestra.plugin.gcp.bigquery.models.StandardTableDefinition-Output
io.kestra.plugin.gcp.bigquery.models.RangePartitioning-Output
com.google.cloud.bigquery.StandardTableDefinition-StreamingBuffer
io.kestra.plugin.gcp.bigquery.models.TimePartitioning-Output
durationDAYHOURMONTHYEARTABLEVIEWMATERIALIZED_VIEWEXTERNALMODELio.kestra.plugin.gcp.bigquery.models.ViewDefinition-Output
io.kestra.plugin.gcp.bigquery.models.UserDefinedFunction-Output
INLINEFROM_URIdescriptionstring
The user-friendly description for the table.
encryptionConfiguration
The encryption configuration.
io.kestra.plugin.gcp.bigquery.models.EncryptionConfiguration-Output
etagstring
The hash of the table resource.
expirationTimestring
date-timeReturns the time when this table expires.
If not present, the table will persist indefinitely. Expired tables will be deleted and their storage reclaimed.
friendlyNamestring
The user-friendly name for the table.
generatedIdstring
The service-generated id for the table.
labelsobject
Return a map for labels applied to the table.
lastModifiedTimestring
date-timeThe time when this table was last modified.
numBytesinteger
The size of this table in bytes.
numLongTermBytesinteger
The number of bytes considered "long-term storage" for reduced billing purposes.
numRowsinteger
The number of rows of data in this table.
projectIdstring
The project's ID.
requirePartitionFilterboolean
Return true if a partition filter (that can be used for partition elimination) is required for queries over this table.
selfLinkstring
The URL that can be used to access the resource again. The returned URL can be used for get or update requests.
tablestring
The table name.