Class: Google::Apis::BigqueryV2::Table
- Inherits:
-
Object
- Object
- Google::Apis::BigqueryV2::Table
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/bigquery_v2/classes.rb,
lib/google/apis/bigquery_v2/representations.rb,
lib/google/apis/bigquery_v2/representations.rb
Instance Attribute Summary collapse
-
#clustering ⇒ Google::Apis::BigqueryV2::Clustering
[Beta] Clustering specification for the table.
-
#creation_time ⇒ Fixnum
[Output-only] The time when this table was created, in milliseconds since the epoch.
-
#description ⇒ String
[Optional] A user-friendly description of this table.
-
#encryption_configuration ⇒ Google::Apis::BigqueryV2::EncryptionConfiguration
Custom encryption configuration (e.g., Cloud KMS keys).
-
#etag ⇒ String
[Output-only] A hash of the table metadata.
-
#expiration_time ⇒ Fixnum
[Optional] The time when this table expires, in milliseconds since the epoch.
-
#external_data_configuration ⇒ Google::Apis::BigqueryV2::ExternalDataConfiguration
[Optional] Describes the data format, location, and other properties of a table stored outside of BigQuery.
-
#friendly_name ⇒ String
[Optional] A descriptive name for this table.
-
#id ⇒ String
[Output-only] An opaque ID uniquely identifying the table.
-
#kind ⇒ String
[Output-only] The type of the resource.
-
#labels ⇒ Hash<String,String>
The labels associated with this table.
-
#last_modified_time ⇒ Fixnum
[Output-only] The time when this table was last modified, in milliseconds since the epoch.
-
#location ⇒ String
[Output-only] The geographic location where the table resides.
-
#materialized_view ⇒ Google::Apis::BigqueryV2::MaterializedViewDefinition
[Optional] Materialized view definition.
-
#model ⇒ Google::Apis::BigqueryV2::ModelDefinition
[Output-only, Beta] Present iff this table represents a ML model.
-
#num_bytes ⇒ Fixnum
[Output-only] The size of this table in bytes, excluding any data in the streaming buffer.
-
#num_long_term_bytes ⇒ Fixnum
[Output-only] The number of bytes in the table that are considered "long-term storage".
-
#num_physical_bytes ⇒ Fixnum
[Output-only] [TrustedTester] The physical size of this table in bytes, excluding any data in the streaming buffer.
-
#num_rows ⇒ Fixnum
[Output-only] The number of rows of data in this table, excluding any data in the streaming buffer.
-
#range_partitioning ⇒ Google::Apis::BigqueryV2::RangePartitioning
[TrustedTester] Range partitioning specification for this table.
-
#require_partition_filter ⇒ Boolean
(also: #require_partition_filter?)
[Optional] If set to true, queries over this table require a partition filter that can be used for partition elimination to be specified.
-
#schema ⇒ Google::Apis::BigqueryV2::TableSchema
[Optional] Describes the schema of this table.
-
#self_link ⇒ String
[Output-only] A URL that can be used to access this resource again.
-
#snapshot_definition ⇒ Google::Apis::BigqueryV2::SnapshotDefinition
[Output-only] Snapshot definition.
-
#streaming_buffer ⇒ Google::Apis::BigqueryV2::Streamingbuffer
[Output-only] Contains information regarding this table's streaming buffer, if one is present.
-
#table_reference ⇒ Google::Apis::BigqueryV2::TableReference
[Required] Reference describing the ID of this table.
-
#time_partitioning ⇒ Google::Apis::BigqueryV2::TimePartitioning
Time-based partitioning specification for this table.
-
#type ⇒ String
[Output-only] Describes the table type.
-
#view ⇒ Google::Apis::BigqueryV2::ViewDefinition
[Optional] The view definition.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Table
constructor
A new instance of Table.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Table
Returns a new instance of Table.
6222 6223 6224 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6222 def initialize(**args) update!(**args) end |
Instance Attribute Details
#clustering ⇒ Google::Apis::BigqueryV2::Clustering
[Beta] Clustering specification for the table. Must be specified with
partitioning, data in the table will be first partitioned and subsequently
clustered.
Corresponds to the JSON property clustering
6046 6047 6048 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6046 def clustering @clustering end |
#creation_time ⇒ Fixnum
[Output-only] The time when this table was created, in milliseconds since the
epoch.
Corresponds to the JSON property creationTime
6052 6053 6054 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6052 def creation_time @creation_time end |
#description ⇒ String
[Optional] A user-friendly description of this table.
Corresponds to the JSON property description
6057 6058 6059 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6057 def description @description end |
#encryption_configuration ⇒ Google::Apis::BigqueryV2::EncryptionConfiguration
Custom encryption configuration (e.g., Cloud KMS keys).
Corresponds to the JSON property encryptionConfiguration
6062 6063 6064 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6062 def encryption_configuration @encryption_configuration end |
#etag ⇒ String
[Output-only] A hash of the table metadata. Used to ensure there were no
concurrent modifications to the resource when attempting an update. Not
guaranteed to change when the table contents or the fields numRows, numBytes,
numLongTermBytes or lastModifiedTime change.
Corresponds to the JSON property etag
6070 6071 6072 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6070 def etag @etag end |
#expiration_time ⇒ Fixnum
[Optional] The time when this table expires, in milliseconds since the epoch.
If not present, the table will persist indefinitely. Expired tables will be
deleted and their storage reclaimed. The defaultTableExpirationMs property of
the encapsulating dataset can be used to set a default expirationTime on newly
created tables.
Corresponds to the JSON property expirationTime
6079 6080 6081 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6079 def expiration_time @expiration_time end |
#external_data_configuration ⇒ Google::Apis::BigqueryV2::ExternalDataConfiguration
[Optional] Describes the data format, location, and other properties of a
table stored outside of BigQuery. By defining these properties, the data
source can then be queried as if it were a standard BigQuery table.
Corresponds to the JSON property externalDataConfiguration
6086 6087 6088 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6086 def external_data_configuration @external_data_configuration end |
#friendly_name ⇒ String
[Optional] A descriptive name for this table.
Corresponds to the JSON property friendlyName
6091 6092 6093 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6091 def friendly_name @friendly_name end |
#id ⇒ String
[Output-only] An opaque ID uniquely identifying the table.
Corresponds to the JSON property id
6096 6097 6098 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6096 def id @id end |
#kind ⇒ String
[Output-only] The type of the resource.
Corresponds to the JSON property kind
6101 6102 6103 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6101 def kind @kind end |
#labels ⇒ Hash<String,String>
The labels associated with this table. You can use these to organize and group
your tables. Label keys and values can be no longer than 63 characters, can
only contain lowercase letters, numeric characters, underscores and dashes.
International characters are allowed. Label values are optional. Label keys
must start with a letter and each label in the list must have a different key.
Corresponds to the JSON property labels
6110 6111 6112 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6110 def labels @labels end |
#last_modified_time ⇒ Fixnum
[Output-only] The time when this table was last modified, in milliseconds
since the epoch.
Corresponds to the JSON property lastModifiedTime
6116 6117 6118 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6116 def last_modified_time @last_modified_time end |
#location ⇒ String
[Output-only] The geographic location where the table resides. This value is
inherited from the dataset.
Corresponds to the JSON property location
6122 6123 6124 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6122 def location @location end |
#materialized_view ⇒ Google::Apis::BigqueryV2::MaterializedViewDefinition
[Optional] Materialized view definition.
Corresponds to the JSON property materializedView
6127 6128 6129 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6127 def materialized_view @materialized_view end |
#model ⇒ Google::Apis::BigqueryV2::ModelDefinition
[Output-only, Beta] Present iff this table represents a ML model. Describes
the training information for the model, and it is required to run 'PREDICT'
queries.
Corresponds to the JSON property model
6134 6135 6136 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6134 def model @model end |
#num_bytes ⇒ Fixnum
[Output-only] The size of this table in bytes, excluding any data in the
streaming buffer.
Corresponds to the JSON property numBytes
6140 6141 6142 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6140 def num_bytes @num_bytes end |
#num_long_term_bytes ⇒ Fixnum
[Output-only] The number of bytes in the table that are considered "long-term
storage".
Corresponds to the JSON property numLongTermBytes
6146 6147 6148 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6146 def num_long_term_bytes @num_long_term_bytes end |
#num_physical_bytes ⇒ Fixnum
[Output-only] [TrustedTester] The physical size of this table in bytes,
excluding any data in the streaming buffer. This includes compression and
storage used for time travel.
Corresponds to the JSON property numPhysicalBytes
6153 6154 6155 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6153 def num_physical_bytes @num_physical_bytes end |
#num_rows ⇒ Fixnum
[Output-only] The number of rows of data in this table, excluding any data in
the streaming buffer.
Corresponds to the JSON property numRows
6159 6160 6161 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6159 def num_rows @num_rows end |
#range_partitioning ⇒ Google::Apis::BigqueryV2::RangePartitioning
[TrustedTester] Range partitioning specification for this table. Only one of
timePartitioning and rangePartitioning should be specified.
Corresponds to the JSON property rangePartitioning
6165 6166 6167 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6165 def range_partitioning @range_partitioning end |
#require_partition_filter ⇒ Boolean Also known as: require_partition_filter?
[Optional] If set to true, queries over this table require a partition filter
that can be used for partition elimination to be specified.
Corresponds to the JSON property requirePartitionFilter
6171 6172 6173 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6171 def require_partition_filter @require_partition_filter end |
#schema ⇒ Google::Apis::BigqueryV2::TableSchema
[Optional] Describes the schema of this table.
Corresponds to the JSON property schema
6177 6178 6179 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6177 def schema @schema end |
#self_link ⇒ String
[Output-only] A URL that can be used to access this resource again.
Corresponds to the JSON property selfLink
6182 6183 6184 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6182 def self_link @self_link end |
#snapshot_definition ⇒ Google::Apis::BigqueryV2::SnapshotDefinition
[Output-only] Snapshot definition.
Corresponds to the JSON property snapshotDefinition
6187 6188 6189 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6187 def snapshot_definition @snapshot_definition end |
#streaming_buffer ⇒ Google::Apis::BigqueryV2::Streamingbuffer
[Output-only] Contains information regarding this table's streaming buffer, if
one is present. This field will be absent if the table is not being streamed
to or if there is no data in the streaming buffer.
Corresponds to the JSON property streamingBuffer
6194 6195 6196 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6194 def streaming_buffer @streaming_buffer end |
#table_reference ⇒ Google::Apis::BigqueryV2::TableReference
[Required] Reference describing the ID of this table.
Corresponds to the JSON property tableReference
6199 6200 6201 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6199 def table_reference @table_reference end |
#time_partitioning ⇒ Google::Apis::BigqueryV2::TimePartitioning
Time-based partitioning specification for this table. Only one of
timePartitioning and rangePartitioning should be specified.
Corresponds to the JSON property timePartitioning
6205 6206 6207 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6205 def time_partitioning @time_partitioning end |
#type ⇒ String
[Output-only] Describes the table type. The following values are supported:
TABLE: A normal BigQuery table. VIEW: A virtual table defined by a SQL query.
SNAPSHOT: An immutable, read-only table that is a copy of another table. [
TrustedTester] MATERIALIZED_VIEW: SQL query whose result is persisted.
EXTERNAL: A table that references data stored in an external storage system,
such as Google Cloud Storage. The default value is TABLE.
Corresponds to the JSON property type
6215 6216 6217 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6215 def type @type end |
#view ⇒ Google::Apis::BigqueryV2::ViewDefinition
[Optional] The view definition.
Corresponds to the JSON property view
6220 6221 6222 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6220 def view @view end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 6252 6253 6254 6255 6256 6257 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6227 def update!(**args) @clustering = args[:clustering] if args.key?(:clustering) @creation_time = args[:creation_time] if args.key?(:creation_time) @description = args[:description] if args.key?(:description) @encryption_configuration = args[:encryption_configuration] if args.key?(:encryption_configuration) @etag = args[:etag] if args.key?(:etag) @expiration_time = args[:expiration_time] if args.key?(:expiration_time) @external_data_configuration = args[:external_data_configuration] if args.key?(:external_data_configuration) @friendly_name = args[:friendly_name] if args.key?(:friendly_name) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @labels = args[:labels] if args.key?(:labels) @last_modified_time = args[:last_modified_time] if args.key?(:last_modified_time) @location = args[:location] if args.key?(:location) @materialized_view = args[:materialized_view] if args.key?(:materialized_view) @model = args[:model] if args.key?(:model) @num_bytes = args[:num_bytes] if args.key?(:num_bytes) @num_long_term_bytes = args[:num_long_term_bytes] if args.key?(:num_long_term_bytes) @num_physical_bytes = args[:num_physical_bytes] if args.key?(:num_physical_bytes) @num_rows = args[:num_rows] if args.key?(:num_rows) @range_partitioning = args[:range_partitioning] if args.key?(:range_partitioning) @require_partition_filter = args[:require_partition_filter] if args.key?(:require_partition_filter) @schema = args[:schema] if args.key?(:schema) @self_link = args[:self_link] if args.key?(:self_link) @snapshot_definition = args[:snapshot_definition] if args.key?(:snapshot_definition) @streaming_buffer = args[:streaming_buffer] if args.key?(:streaming_buffer) @table_reference = args[:table_reference] if args.key?(:table_reference) @time_partitioning = args[:time_partitioning] if args.key?(:time_partitioning) @type = args[:type] if args.key?(:type) @view = args[:view] if args.key?(:view) end |