Class: Google::Apis::BigqueryV2::Table

Inherits:
Object
  • Object
show all
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

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Table

Returns a new instance of Table.



7536
7537
7538
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7536

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#clone_definitionGoogle::Apis::BigqueryV2::CloneDefinition

[Output-only] Clone definition. Corresponds to the JSON property cloneDefinition



7293
7294
7295
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7293

def clone_definition
  @clone_definition
end

#clusteringGoogle::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



7300
7301
7302
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7300

def clustering
  @clustering
end

#creation_timeFixnum

[Output-only] The time when this table was created, in milliseconds since the epoch. Corresponds to the JSON property creationTime

Returns:

  • (Fixnum)


7306
7307
7308
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7306

def creation_time
  @creation_time
end

#default_collationString

[Output-only] The default collation of the table. Corresponds to the JSON property defaultCollation

Returns:

  • (String)


7311
7312
7313
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7311

def default_collation
  @default_collation
end

#descriptionString

[Optional] A user-friendly description of this table. Corresponds to the JSON property description

Returns:

  • (String)


7316
7317
7318
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7316

def description
  @description
end

#encryption_configurationGoogle::Apis::BigqueryV2::EncryptionConfiguration

Custom encryption configuration (e.g., Cloud KMS keys). Corresponds to the JSON property encryptionConfiguration



7321
7322
7323
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7321

def encryption_configuration
  @encryption_configuration
end

#etagString

[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

Returns:

  • (String)


7329
7330
7331
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7329

def etag
  @etag
end

#expiration_timeFixnum

[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

Returns:

  • (Fixnum)


7338
7339
7340
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7338

def expiration_time
  @expiration_time
end

#external_data_configurationGoogle::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



7345
7346
7347
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7345

def external_data_configuration
  @external_data_configuration
end

#friendly_nameString

[Optional] A descriptive name for this table. Corresponds to the JSON property friendlyName

Returns:

  • (String)


7350
7351
7352
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7350

def friendly_name
  @friendly_name
end

#idString

[Output-only] An opaque ID uniquely identifying the table. Corresponds to the JSON property id

Returns:

  • (String)


7355
7356
7357
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7355

def id
  @id
end

#kindString

[Output-only] The type of the resource. Corresponds to the JSON property kind

Returns:

  • (String)


7360
7361
7362
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7360

def kind
  @kind
end

#labelsHash<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

Returns:

  • (Hash<String,String>)


7369
7370
7371
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7369

def labels
  @labels
end

#last_modified_timeFixnum

[Output-only] The time when this table was last modified, in milliseconds since the epoch. Corresponds to the JSON property lastModifiedTime

Returns:

  • (Fixnum)


7375
7376
7377
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7375

def last_modified_time
  @last_modified_time
end

#locationString

[Output-only] The geographic location where the table resides. This value is inherited from the dataset. Corresponds to the JSON property location

Returns:

  • (String)


7381
7382
7383
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7381

def location
  @location
end

#materialized_viewGoogle::Apis::BigqueryV2::MaterializedViewDefinition

[Optional] Materialized view definition. Corresponds to the JSON property materializedView



7386
7387
7388
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7386

def materialized_view
  @materialized_view
end

#max_stalenessString

[Optional] Max staleness of data that could be returned when table or materialized view is queried (formatted as Google SQL Interval type). Corresponds to the JSON property maxStaleness NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


7393
7394
7395
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7393

def max_staleness
  @max_staleness
end

#modelGoogle::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



7400
7401
7402
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7400

def model
  @model
end

#num_active_logical_bytesFixnum

[Output-only] Number of logical bytes that are less than 90 days old. Corresponds to the JSON property num_active_logical_bytes

Returns:

  • (Fixnum)


7430
7431
7432
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7430

def num_active_logical_bytes
  @num_active_logical_bytes
end

#num_active_physical_bytesFixnum

[Output-only] Number of physical bytes less than 90 days old. This data is not kept in real time, and might be delayed by a few seconds to a few minutes. Corresponds to the JSON property num_active_physical_bytes

Returns:

  • (Fixnum)


7436
7437
7438
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7436

def num_active_physical_bytes
  @num_active_physical_bytes
end

#num_bytesFixnum

[Output-only] The size of this table in bytes, excluding any data in the streaming buffer. Corresponds to the JSON property numBytes

Returns:

  • (Fixnum)


7406
7407
7408
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7406

def num_bytes
  @num_bytes
end

#num_long_term_bytesFixnum

[Output-only] The number of bytes in the table that are considered "long-term storage". Corresponds to the JSON property numLongTermBytes

Returns:

  • (Fixnum)


7412
7413
7414
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7412

def num_long_term_bytes
  @num_long_term_bytes
end

#num_long_term_logical_bytesFixnum

[Output-only] Number of logical bytes that are more than 90 days old. Corresponds to the JSON property num_long_term_logical_bytes

Returns:

  • (Fixnum)


7441
7442
7443
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7441

def num_long_term_logical_bytes
  @num_long_term_logical_bytes
end

#num_long_term_physical_bytesFixnum

[Output-only] Number of physical bytes more than 90 days old. This data is not kept in real time, and might be delayed by a few seconds to a few minutes. Corresponds to the JSON property num_long_term_physical_bytes

Returns:

  • (Fixnum)


7447
7448
7449
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7447

def num_long_term_physical_bytes
  @num_long_term_physical_bytes
end

#num_partitionsFixnum

[Output-only] The number of partitions present in the table or materialized view. This data is not kept in real time, and might be delayed by a few seconds to a few minutes. Corresponds to the JSON property num_partitions

Returns:

  • (Fixnum)


7454
7455
7456
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7454

def num_partitions
  @num_partitions
end

#num_physical_bytesFixnum

[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

Returns:

  • (Fixnum)


7419
7420
7421
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7419

def num_physical_bytes
  @num_physical_bytes
end

#num_rowsFixnum

[Output-only] The number of rows of data in this table, excluding any data in the streaming buffer. Corresponds to the JSON property numRows

Returns:

  • (Fixnum)


7425
7426
7427
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7425

def num_rows
  @num_rows
end

#num_time_travel_physical_bytesFixnum

[Output-only] Number of physical bytes used by time travel storage (deleted or changed data). This data is not kept in real time, and might be delayed by a few seconds to a few minutes. Corresponds to the JSON property num_time_travel_physical_bytes

Returns:

  • (Fixnum)


7461
7462
7463
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7461

def num_time_travel_physical_bytes
  @num_time_travel_physical_bytes
end

#num_total_logical_bytesFixnum

[Output-only] Total number of logical bytes in the table or materialized view. Corresponds to the JSON property num_total_logical_bytes

Returns:

  • (Fixnum)


7466
7467
7468
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7466

def num_total_logical_bytes
  @num_total_logical_bytes
end

#num_total_physical_bytesFixnum

[Output-only] The physical size of this table in bytes. This also includes storage used for time travel. This data is not kept in real time, and might be delayed by a few seconds to a few minutes. Corresponds to the JSON property num_total_physical_bytes

Returns:

  • (Fixnum)


7473
7474
7475
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7473

def num_total_physical_bytes
  @num_total_physical_bytes
end

#range_partitioningGoogle::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



7479
7480
7481
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7479

def range_partitioning
  @range_partitioning
end

#require_partition_filterBoolean 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

Returns:

  • (Boolean)


7485
7486
7487
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7485

def require_partition_filter
  @require_partition_filter
end

#schemaGoogle::Apis::BigqueryV2::TableSchema

[Optional] Describes the schema of this table. Corresponds to the JSON property schema



7491
7492
7493
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7491

def schema
  @schema
end

[Output-only] A URL that can be used to access this resource again. Corresponds to the JSON property selfLink

Returns:

  • (String)


7496
7497
7498
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7496

def self_link
  @self_link
end

#snapshot_definitionGoogle::Apis::BigqueryV2::SnapshotDefinition

[Output-only] Snapshot definition. Corresponds to the JSON property snapshotDefinition



7501
7502
7503
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7501

def snapshot_definition
  @snapshot_definition
end

#streaming_bufferGoogle::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



7508
7509
7510
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7508

def streaming_buffer
  @streaming_buffer
end

#table_referenceGoogle::Apis::BigqueryV2::TableReference

[Required] Reference describing the ID of this table. Corresponds to the JSON property tableReference



7513
7514
7515
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7513

def table_reference
  @table_reference
end

#time_partitioningGoogle::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



7519
7520
7521
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7519

def time_partitioning
  @time_partitioning
end

#typeString

[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

Returns:

  • (String)


7529
7530
7531
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7529

def type
  @type
end

#viewGoogle::Apis::BigqueryV2::ViewDefinition

[Optional] The view definition. Corresponds to the JSON property view



7534
7535
7536
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7534

def view
  @view
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



7541
7542
7543
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558
7559
7560
7561
7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579
7580
7581
7582
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7541

def update!(**args)
  @clone_definition = args[:clone_definition] if args.key?(:clone_definition)
  @clustering = args[:clustering] if args.key?(:clustering)
  @creation_time = args[:creation_time] if args.key?(:creation_time)
  @default_collation = args[:default_collation] if args.key?(:default_collation)
  @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)
  @max_staleness = args[:max_staleness] if args.key?(:max_staleness)
  @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)
  @num_active_logical_bytes = args[:num_active_logical_bytes] if args.key?(:num_active_logical_bytes)
  @num_active_physical_bytes = args[:num_active_physical_bytes] if args.key?(:num_active_physical_bytes)
  @num_long_term_logical_bytes = args[:num_long_term_logical_bytes] if args.key?(:num_long_term_logical_bytes)
  @num_long_term_physical_bytes = args[:num_long_term_physical_bytes] if args.key?(:num_long_term_physical_bytes)
  @num_partitions = args[:num_partitions] if args.key?(:num_partitions)
  @num_time_travel_physical_bytes = args[:num_time_travel_physical_bytes] if args.key?(:num_time_travel_physical_bytes)
  @num_total_logical_bytes = args[:num_total_logical_bytes] if args.key?(:num_total_logical_bytes)
  @num_total_physical_bytes = args[:num_total_physical_bytes] if args.key?(:num_total_physical_bytes)
  @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