As of January 1, 2020 this library no longer supports Python 2 on the latest released version. Library versions released prior to that date will continue to be available. For more information please visit Python 2 support on Google Cloud.

google.cloud.bigquery.table.TimePartitioning

class google.cloud.bigquery.table.TimePartitioning(type_=None, field=None, expiration_ms=None, require_partition_filter=None)[source]

Configures time-based partitioning for a table.

Parameters
  • type (Optional[google.cloud.bigquery.table.TimePartitioningType]) –

    Specifies the type of time partitioning to perform. Defaults to DAY.

    Supported values are:

  • field (Optional[str]) –

    If set, the table is partitioned by this field. If not set, the table is partitioned by pseudo column _PARTITIONTIME. The field must be a top-level TIMESTAMP, DATETIME, or DATE field. Its mode must be NULLABLE or REQUIRED.

    See the time-unit column-partitioned tables guide in the BigQuery documentation.

  • expiration_ms (Optional[int]) – Number of milliseconds for which to keep the storage for a partition.

  • require_partition_filter (Optional[bool]) – DEPRECATED: Use require_partition_filter, instead.

__init__(type_=None, field=None, expiration_ms=None, require_partition_filter=None)[source]

Initialize self. See help(type(self)) for accurate signature.

Methods

__init__([type_, field, expiration_ms, …])

Initialize self.

from_api_repr(api_repr)

Return a TimePartitioning object deserialized from a dict.

to_api_repr()

Return a dictionary representing this object.

Attributes

expiration_ms

Number of milliseconds to keep the storage for a partition.

field

Field in the table to use for partitioning

require_partition_filter

Specifies whether partition filters are required for queries

type_

The type of time partitioning to use.

property expiration_ms

Number of milliseconds to keep the storage for a partition.

Type

int

property field

Field in the table to use for partitioning

Type

str

classmethod from_api_repr(api_repr)[source]

Return a TimePartitioning object deserialized from a dict.

This method creates a new TimePartitioning instance that points to the api_repr parameter as its internal properties dict. This means that when a TimePartitioning instance is stored as a property of another object, any changes made at the higher level will also appear here:

>>> time_partitioning = TimePartitioning()
>>> table.time_partitioning = time_partitioning
>>> table.time_partitioning.field = 'timecolumn'
>>> time_partitioning.field
'timecolumn'
Parameters

api_repr (Mapping[str, str]) – The serialized representation of the TimePartitioning, such as what is output by to_api_repr().

Returns

The TimePartitioning object.

Return type

google.cloud.bigquery.table.TimePartitioning

property require_partition_filter

Specifies whether partition filters are required for queries

DEPRECATED: Use require_partition_filter, instead.

Type

bool

to_api_repr()[source]

Return a dictionary representing this object.

This method returns the properties dict of the TimePartitioning instance rather than making a copy. This means that when a TimePartitioning instance is stored as a property of another object, any changes made at the higher level will also appear here.

Returns

A dictionary representing the TimePartitioning object in serialized form.

Return type

dict

property type_

The type of time partitioning to use.

Type

google.cloud.bigquery.table.TimePartitioningType