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.



7527
7528
7529
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7527

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

Instance Attribute Details

#clone_definitionGoogle::Apis::BigqueryV2::CloneDefinition

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



7284
7285
7286
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7284

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



7291
7292
7293
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7291

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)


7297
7298
7299
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7297

def creation_time
  @creation_time
end

#default_collationString

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

Returns:

  • (String)


7302
7303
7304
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7302

def default_collation
  @default_collation
end

#descriptionString

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

Returns:

  • (String)


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

def description
  @description
end

#encryption_configurationGoogle::Apis::BigqueryV2::EncryptionConfiguration

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



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

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)


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

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)


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

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



7336
7337
7338
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7336

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)


7341
7342
7343
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7341

def friendly_name
  @friendly_name
end

#idString

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

Returns:

  • (String)


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

def id
  @id
end

#kindString

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

Returns:

  • (String)


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

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>)


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

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)


7366
7367
7368
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7366

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)


7372
7373
7374
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7372

def location
  @location
end

#materialized_viewGoogle::Apis::BigqueryV2::MaterializedViewDefinition

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



7377
7378
7379
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7377

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)


7384
7385
7386
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7384

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



7391
7392
7393
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7391

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)


7421
7422
7423
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7421

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)


7427
7428
7429
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7427

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)


7397
7398
7399
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7397

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)


7403
7404
7405
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7403

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)


7432
7433
7434
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7432

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)


7438
7439
7440
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7438

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)


7445
7446
7447
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7445

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)


7410
7411
7412
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7410

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)


7416
7417
7418
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7416

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)


7452
7453
7454
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7452

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)


7457
7458
7459
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7457

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)


7464
7465
7466
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7464

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



7470
7471
7472
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7470

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)


7476
7477
7478
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7476

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



7482
7483
7484
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7482

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)


7487
7488
7489
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7487

def self_link
  @self_link
end

#snapshot_definitionGoogle::Apis::BigqueryV2::SnapshotDefinition

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



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

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



7499
7500
7501
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7499

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



7504
7505
7506
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7504

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



7510
7511
7512
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7510

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)


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

def type
  @type
end

#viewGoogle::Apis::BigqueryV2::ViewDefinition

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



7525
7526
7527
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7525

def view
  @view
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



7532
7533
7534
7535
7536
7537
7538
7539
7540
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
# File 'lib/google/apis/bigquery_v2/classes.rb', line 7532

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