Class: Google::Apis::DataformV1::Relation

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

Overview

Represents a database relation.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Relation

Returns a new instance of Relation.



3236
3237
3238
# File 'lib/google/apis/dataform_v1/classes.rb', line 3236

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

Instance Attribute Details

#additional_optionsHash<String,String>

Additional options that will be provided as key/value pairs into the options clause of a create table/view statement. See https://cloud.google.com/bigquery/ docs/reference/standard-sql/data-definition-language for more information on which options are supported. Corresponds to the JSON property additionalOptions

Returns:

  • (Hash<String,String>)


3141
3142
3143
# File 'lib/google/apis/dataform_v1/classes.rb', line 3141

def additional_options
  @additional_options
end

#cluster_expressionsArray<String>

A list of columns or SQL expressions used to cluster the table. Corresponds to the JSON property clusterExpressions

Returns:

  • (Array<String>)


3146
3147
3148
# File 'lib/google/apis/dataform_v1/classes.rb', line 3146

def cluster_expressions
  @cluster_expressions
end

#connectionString

Optional. The connection specifying the credentials to be used to read and write to external storage, such as Cloud Storage. The connection can have the form project`.`location`.`connection_id or projects/project/locations/ location/connections/connection_id`, or be set to DEFAULT. Corresponds to the JSON propertyconnection`

Returns:

  • (String)


3154
3155
3156
# File 'lib/google/apis/dataform_v1/classes.rb', line 3154

def connection
  @connection
end

#dependency_targetsArray<Google::Apis::DataformV1::Target>

A list of actions that this action depends on. Corresponds to the JSON property dependencyTargets



3159
3160
3161
# File 'lib/google/apis/dataform_v1/classes.rb', line 3159

def dependency_targets
  @dependency_targets
end

#disabledBoolean Also known as: disabled?

Whether this action is disabled (i.e. should not be run). Corresponds to the JSON property disabled

Returns:

  • (Boolean)


3164
3165
3166
# File 'lib/google/apis/dataform_v1/classes.rb', line 3164

def disabled
  @disabled
end

#file_formatString

Optional. The file format for the BigQuery table. Corresponds to the JSON property fileFormat

Returns:

  • (String)


3170
3171
3172
# File 'lib/google/apis/dataform_v1/classes.rb', line 3170

def file_format
  @file_format
end

#incremental_table_configGoogle::Apis::DataformV1::IncrementalTableConfig

Contains settings for relations of type INCREMENTAL_TABLE. Corresponds to the JSON property incrementalTableConfig



3175
3176
3177
# File 'lib/google/apis/dataform_v1/classes.rb', line 3175

def incremental_table_config
  @incremental_table_config
end

#partition_expiration_daysFixnum

Sets the partition expiration in days. Corresponds to the JSON property partitionExpirationDays

Returns:

  • (Fixnum)


3180
3181
3182
# File 'lib/google/apis/dataform_v1/classes.rb', line 3180

def partition_expiration_days
  @partition_expiration_days
end

#partition_expressionString

The SQL expression used to partition the relation. Corresponds to the JSON property partitionExpression

Returns:

  • (String)


3185
3186
3187
# File 'lib/google/apis/dataform_v1/classes.rb', line 3185

def partition_expression
  @partition_expression
end

#post_operationsArray<String>

SQL statements to be executed after creating the relation. Corresponds to the JSON property postOperations

Returns:

  • (Array<String>)


3190
3191
3192
# File 'lib/google/apis/dataform_v1/classes.rb', line 3190

def post_operations
  @post_operations
end

#pre_operationsArray<String>

SQL statements to be executed before creating the relation. Corresponds to the JSON property preOperations

Returns:

  • (Array<String>)


3195
3196
3197
# File 'lib/google/apis/dataform_v1/classes.rb', line 3195

def pre_operations
  @pre_operations
end

#relation_descriptorGoogle::Apis::DataformV1::RelationDescriptor

Describes a relation and its columns. Corresponds to the JSON property relationDescriptor



3200
3201
3202
# File 'lib/google/apis/dataform_v1/classes.rb', line 3200

def relation_descriptor
  @relation_descriptor
end

#relation_typeString

The type of this relation. Corresponds to the JSON property relationType

Returns:

  • (String)


3205
3206
3207
# File 'lib/google/apis/dataform_v1/classes.rb', line 3205

def relation_type
  @relation_type
end

#require_partition_filterBoolean Also known as: require_partition_filter?

Specifies whether queries on this table must include a predicate filter that filters on the partitioning column. Corresponds to the JSON property requirePartitionFilter

Returns:

  • (Boolean)


3211
3212
3213
# File 'lib/google/apis/dataform_v1/classes.rb', line 3211

def require_partition_filter
  @require_partition_filter
end

#select_queryString

The SELECT query which returns rows which this relation should contain. Corresponds to the JSON property selectQuery

Returns:

  • (String)


3217
3218
3219
# File 'lib/google/apis/dataform_v1/classes.rb', line 3217

def select_query
  @select_query
end

#storage_uriString

Optional. The fully qualified location prefix of the external folder where table data is stored. The URI should be in the format gs://bucket/ path_to_table/. Corresponds to the JSON property storageUri

Returns:

  • (String)


3224
3225
3226
# File 'lib/google/apis/dataform_v1/classes.rb', line 3224

def storage_uri
  @storage_uri
end

#table_formatString

Optional. The table format for the BigQuery table. Corresponds to the JSON property tableFormat

Returns:

  • (String)


3229
3230
3231
# File 'lib/google/apis/dataform_v1/classes.rb', line 3229

def table_format
  @table_format
end

#tagsArray<String>

Arbitrary, user-defined tags on this action. Corresponds to the JSON property tags

Returns:

  • (Array<String>)


3234
3235
3236
# File 'lib/google/apis/dataform_v1/classes.rb', line 3234

def tags
  @tags
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
# File 'lib/google/apis/dataform_v1/classes.rb', line 3241

def update!(**args)
  @additional_options = args[:additional_options] if args.key?(:additional_options)
  @cluster_expressions = args[:cluster_expressions] if args.key?(:cluster_expressions)
  @connection = args[:connection] if args.key?(:connection)
  @dependency_targets = args[:dependency_targets] if args.key?(:dependency_targets)
  @disabled = args[:disabled] if args.key?(:disabled)
  @file_format = args[:file_format] if args.key?(:file_format)
  @incremental_table_config = args[:incremental_table_config] if args.key?(:incremental_table_config)
  @partition_expiration_days = args[:partition_expiration_days] if args.key?(:partition_expiration_days)
  @partition_expression = args[:partition_expression] if args.key?(:partition_expression)
  @post_operations = args[:post_operations] if args.key?(:post_operations)
  @pre_operations = args[:pre_operations] if args.key?(:pre_operations)
  @relation_descriptor = args[:relation_descriptor] if args.key?(:relation_descriptor)
  @relation_type = args[:relation_type] if args.key?(:relation_type)
  @require_partition_filter = args[:require_partition_filter] if args.key?(:require_partition_filter)
  @select_query = args[:select_query] if args.key?(:select_query)
  @storage_uri = args[:storage_uri] if args.key?(:storage_uri)
  @table_format = args[:table_format] if args.key?(:table_format)
  @tags = args[:tags] if args.key?(:tags)
end