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.
6221 6222 6223 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6221 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
6045 6046 6047 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6045 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
6051 6052 6053 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6051 def creation_time @creation_time end |
#description ⇒ String
[Optional] A user-friendly description of this table.
Corresponds to the JSON property description
6056 6057 6058 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6056 def description @description end |
#encryption_configuration ⇒ Google::Apis::BigqueryV2::EncryptionConfiguration
Custom encryption configuration (e.g., Cloud KMS keys).
Corresponds to the JSON property encryptionConfiguration
6061 6062 6063 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6061 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
6069 6070 6071 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6069 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
6078 6079 6080 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6078 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
6085 6086 6087 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6085 def external_data_configuration @external_data_configuration end |
#friendly_name ⇒ String
[Optional] A descriptive name for this table.
Corresponds to the JSON property friendlyName
6090 6091 6092 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6090 def friendly_name @friendly_name end |
#id ⇒ String
[Output-only] An opaque ID uniquely identifying the table.
Corresponds to the JSON property id
6095 6096 6097 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6095 def id @id end |
#kind ⇒ String
[Output-only] The type of the resource.
Corresponds to the JSON property kind
6100 6101 6102 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6100 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
6109 6110 6111 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6109 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
6115 6116 6117 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6115 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
6121 6122 6123 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6121 def location @location end |
#materialized_view ⇒ Google::Apis::BigqueryV2::MaterializedViewDefinition
[Optional] Materialized view definition.
Corresponds to the JSON property materializedView
6126 6127 6128 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6126 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
6133 6134 6135 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6133 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
6139 6140 6141 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6139 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
6145 6146 6147 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6145 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
6152 6153 6154 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6152 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
6158 6159 6160 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6158 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
6164 6165 6166 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6164 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
6170 6171 6172 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6170 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
6176 6177 6178 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6176 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
6181 6182 6183 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6181 def self_link @self_link end |
#snapshot_definition ⇒ Google::Apis::BigqueryV2::SnapshotDefinition
[Output-only] Snapshot definition.
Corresponds to the JSON property snapshotDefinition
6186 6187 6188 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6186 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
6193 6194 6195 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6193 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
6198 6199 6200 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6198 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
6204 6205 6206 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6204 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
6214 6215 6216 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6214 def type @type end |
#view ⇒ Google::Apis::BigqueryV2::ViewDefinition
[Optional] The view definition.
Corresponds to the JSON property view
6219 6220 6221 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6219 def view @view end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
6226 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 |
# File 'lib/google/apis/bigquery_v2/classes.rb', line 6226 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 |