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

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/bigquery_v2/classes.rb,
generated/google/apis/bigquery_v2/representations.rb,
generated/google/apis/bigquery_v2/representations.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Table

Returns a new instance of Table



2997
2998
2999
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2997

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

Instance Attribute Details

#clusteringGoogle::Apis::BigqueryV2::Clustering

[Experimental] Clustering specification for the table. Must be specified with time-based partitioning, data in the table will be first partitioned and subsequently clustered. Corresponds to the JSON property clustering



2864
2865
2866
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2864

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)


2870
2871
2872
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2870

def creation_time
  @creation_time
end

#descriptionString

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

Returns:

  • (String)


2875
2876
2877
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2875

def description
  @description
end

#encryption_configurationGoogle::Apis::BigqueryV2::EncryptionConfiguration

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



2880
2881
2882
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2880

def encryption_configuration
  @encryption_configuration
end

#etagString

[Output-only] A hash of this resource. Corresponds to the JSON property etag

Returns:

  • (String)


2885
2886
2887
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2885

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)


2894
2895
2896
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2894

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



2901
2902
2903
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2901

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)


2906
2907
2908
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2906

def friendly_name
  @friendly_name
end

#idString

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

Returns:

  • (String)


2911
2912
2913
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2911

def id
  @id
end

#kindString

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

Returns:

  • (String)


2916
2917
2918
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2916

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


2925
2926
2927
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2925

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)


2931
2932
2933
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2931

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)


2937
2938
2939
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2937

def location
  @location
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)


2943
2944
2945
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2943

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)


2949
2950
2951
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2949

def num_long_term_bytes
  @num_long_term_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)


2955
2956
2957
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2955

def num_rows
  @num_rows
end

#schemaGoogle::Apis::BigqueryV2::TableSchema

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



2960
2961
2962
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2960

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)


2965
2966
2967
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2965

def self_link
  @self_link
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



2972
2973
2974
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2972

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



2977
2978
2979
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2977

def table_reference
  @table_reference
end

#time_partitioningGoogle::Apis::BigqueryV2::TimePartitioning

Time-based partitioning specification for this table. Corresponds to the JSON property timePartitioning



2982
2983
2984
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2982

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


2990
2991
2992
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2990

def type
  @type
end

#viewGoogle::Apis::BigqueryV2::ViewDefinition

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



2995
2996
2997
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2995

def view
  @view
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
# File 'generated/google/apis/bigquery_v2/classes.rb', line 3002

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)
  @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_rows = args[:num_rows] if args.key?(:num_rows)
  @schema = args[:schema] if args.key?(:schema)
  @self_link = args[:self_link] if args.key?(:self_link)
  @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