CustomizationRule

A customization rule to apply to a set of objects.

JSON representation
{

  // Union field rule can be only one of the following:
  "bigqueryPartitioning": {
    object (BigQueryPartitioning)
  },
  "bigqueryClustering": {
    object (BigQueryClustering)
  }
  // End of list of possible types for union field rule.
}
Fields
Union field rule. The rule to apply. rule can be only one of the following:
bigqueryPartitioning

object (BigQueryPartitioning)

BigQuery partitioning rule.

bigqueryClustering

object (BigQueryClustering)

BigQuery clustering rule.

BigQueryPartitioning

BigQuery partitioning configuration.

JSON representation
{
  "requirePartitionFilter": boolean,

  // Union field partitioning can be only one of the following:
  "integerRangePartition": {
    object (IntegerRangePartition)
  },
  "timeUnitPartition": {
    object (TimeUnitPartition)
  },
  "ingestionTimePartition": {
    object (IngestionTimePartition)
  }
  // End of list of possible types for union field partitioning.
}
Fields
requirePartitionFilter

boolean

Optional. If true, queries over the table require a partition filter.

Union field partitioning. Partitioning to apply on the table. partitioning can be only one of the following:
integerRangePartition

object (IntegerRangePartition)

Integer range partitioning.

timeUnitPartition

object (TimeUnitPartition)

Time unit column partitioning.

ingestionTimePartition

object (IngestionTimePartition)

Ingestion time partitioning.

IntegerRangePartition

Integer range partitioning. see https://cloud.google.com/bigquery/docs/partitioned-tables#integer_range

JSON representation
{
  "column": string,
  "start": string,
  "end": string,
  "interval": string
}
Fields
column

string

Required. The partitioning column.

start

string (int64 format)

Required. The starting value for range partitioning (inclusive).

end

string (int64 format)

Required. The ending value for range partitioning (exclusive).

interval

string (int64 format)

Required. The interval of each range within the partition.

TimeUnitPartition

Time unit column partitioning. see https://cloud.google.com/bigquery/docs/partitioned-tables#date_timestamp_partitioned_tables

JSON representation
{
  "column": string,
  "partitioningTimeGranularity": enum (PartitioningTimeGranularity)
}
Fields
column

string

Required. The partitioning column.

partitioningTimeGranularity

enum (PartitioningTimeGranularity)

Optional. Partition granularity.

PartitioningTimeGranularity

Partitioning granularity for time partitions.

Enums
PARTITIONING_TIME_GRANULARITY_UNSPECIFIED Unspecified partitioing interval.
PARTITIONING_TIME_GRANULARITY_HOUR Hourly partitioning.
PARTITIONING_TIME_GRANULARITY_DAY Daily partitioning.
PARTITIONING_TIME_GRANULARITY_MONTH Monthly partitioning.
PARTITIONING_TIME_GRANULARITY_YEAR Yearly partitioning.

IngestionTimePartition

Ingestion time partitioning. see https://cloud.google.com/bigquery/docs/partitioned-tables#ingestion_time

JSON representation
{
  "partitioningTimeGranularity": enum (PartitioningTimeGranularity)
}
Fields
partitioningTimeGranularity

enum (PartitioningTimeGranularity)

Optional. Partition granularity

BigQueryClustering

BigQuery clustering configuration.

JSON representation
{
  "columns": [
    string
  ]
}
Fields
columns[]

string

Required. Column names to set as clustering columns.