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



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

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



2832
2833
2834
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2832

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)


2838
2839
2840
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2838

def creation_time
  @creation_time
end

#descriptionString

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

Returns:

  • (String)


2843
2844
2845
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2843

def description
  @description
end

#encryption_configurationGoogle::Apis::BigqueryV2::EncryptionConfiguration

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



2848
2849
2850
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2848

def encryption_configuration
  @encryption_configuration
end

#etagString

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

Returns:

  • (String)


2853
2854
2855
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2853

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)


2862
2863
2864
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2862

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



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

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)


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

def friendly_name
  @friendly_name
end

#idString

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

Returns:

  • (String)


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

def id
  @id
end

#kindString

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

Returns:

  • (String)


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

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


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

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)


2899
2900
2901
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2899

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)


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

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)


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

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)


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

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)


2923
2924
2925
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2923

def num_rows
  @num_rows
end

#schemaGoogle::Apis::BigqueryV2::TableSchema

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



2928
2929
2930
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2928

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)


2933
2934
2935
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2933

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



2940
2941
2942
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2940

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



2945
2946
2947
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2945

def table_reference
  @table_reference
end

#time_partitioningGoogle::Apis::BigqueryV2::TimePartitioning

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



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

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)


2958
2959
2960
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2958

def type
  @type
end

#viewGoogle::Apis::BigqueryV2::ViewDefinition

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



2963
2964
2965
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2963

def view
  @view
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
# File 'generated/google/apis/bigquery_v2/classes.rb', line 2970

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