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.



3119
3120
3121
# File 'lib/google/apis/dataform_v1/classes.rb', line 3119

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


3024
3025
3026
# File 'lib/google/apis/dataform_v1/classes.rb', line 3024

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


3029
3030
3031
# File 'lib/google/apis/dataform_v1/classes.rb', line 3029

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)


3037
3038
3039
# File 'lib/google/apis/dataform_v1/classes.rb', line 3037

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



3042
3043
3044
# File 'lib/google/apis/dataform_v1/classes.rb', line 3042

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)


3047
3048
3049
# File 'lib/google/apis/dataform_v1/classes.rb', line 3047

def disabled
  @disabled
end

#file_formatString

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

Returns:

  • (String)


3053
3054
3055
# File 'lib/google/apis/dataform_v1/classes.rb', line 3053

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



3058
3059
3060
# File 'lib/google/apis/dataform_v1/classes.rb', line 3058

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)


3063
3064
3065
# File 'lib/google/apis/dataform_v1/classes.rb', line 3063

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)


3068
3069
3070
# File 'lib/google/apis/dataform_v1/classes.rb', line 3068

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


3073
3074
3075
# File 'lib/google/apis/dataform_v1/classes.rb', line 3073

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


3078
3079
3080
# File 'lib/google/apis/dataform_v1/classes.rb', line 3078

def pre_operations
  @pre_operations
end

#relation_descriptorGoogle::Apis::DataformV1::RelationDescriptor

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



3083
3084
3085
# File 'lib/google/apis/dataform_v1/classes.rb', line 3083

def relation_descriptor
  @relation_descriptor
end

#relation_typeString

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

Returns:

  • (String)


3088
3089
3090
# File 'lib/google/apis/dataform_v1/classes.rb', line 3088

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)


3094
3095
3096
# File 'lib/google/apis/dataform_v1/classes.rb', line 3094

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)


3100
3101
3102
# File 'lib/google/apis/dataform_v1/classes.rb', line 3100

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)


3107
3108
3109
# File 'lib/google/apis/dataform_v1/classes.rb', line 3107

def storage_uri
  @storage_uri
end

#table_formatString

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

Returns:

  • (String)


3112
3113
3114
# File 'lib/google/apis/dataform_v1/classes.rb', line 3112

def table_format
  @table_format
end

#tagsArray<String>

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

Returns:

  • (Array<String>)


3117
3118
3119
# File 'lib/google/apis/dataform_v1/classes.rb', line 3117

def tags
  @tags
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
# File 'lib/google/apis/dataform_v1/classes.rb', line 3124

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