Class: Google::Apis::DataplexV1::GoogleCloudDataplexV1Schema

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

Overview

Schema information describing the structure and layout of the data.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudDataplexV1Schema

Returns a new instance of GoogleCloudDataplexV1Schema.



2248
2249
2250
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2248

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

Instance Attribute Details

#fieldsArray<Google::Apis::DataplexV1::GoogleCloudDataplexV1SchemaSchemaField>

Optional. The sequence of fields describing data in table entities. Corresponds to the JSON property fields



2214
2215
2216
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2214

def fields
  @fields
end

#partition_fieldsArray<Google::Apis::DataplexV1::GoogleCloudDataplexV1SchemaPartitionField>

Optional. The sequence of fields describing the partition structure in entities. If this field is empty, there are no partitions within the data. Corresponds to the JSON property partitionFields



2220
2221
2222
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2220

def partition_fields
  @partition_fields
end

#partition_styleString

Optional. The structure of paths containing partition data within the entity. Corresponds to the JSON property partitionStyle

Returns:

  • (String)


2225
2226
2227
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2225

def partition_style
  @partition_style
end

#user_managedBoolean Also known as: user_managed?

Required. Whether the schema is user-managed or managed by the service. - Set user_manage to false if you would like Dataplex to help you manage the schema. You will get the full service provided by Dataplex discovery, including new data discovery, schema inference and schema evolution. You can still provide input the schema of the entities, for example renaming a schema field, changing CSV or Json options if you think the discovered values are not as accurate. Dataplex will consider your input as the initial schema (as if they were produced by the previous discovery run), and will evolve schema or flag actions based on that. - Set user_manage to true if you would like to fully manage the entity schema by yourself. This is useful when you would like to manually specify the schema for a table. In this case, the schema defined by the user is guaranteed to be kept unchanged and would not be overwritten. But this also means Dataplex will not provide schema evolution management for you. Dataplex will still be able to manage partition registration (i.e., keeping the list of partitions up to date) when Dataplex discovery is turned on and user_managed is set to true. Corresponds to the JSON property userManaged

Returns:

  • (Boolean)


2245
2246
2247
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2245

def user_managed
  @user_managed
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2253
2254
2255
2256
2257
2258
# File 'lib/google/apis/dataplex_v1/classes.rb', line 2253

def update!(**args)
  @fields = args[:fields] if args.key?(:fields)
  @partition_fields = args[:partition_fields] if args.key?(:partition_fields)
  @partition_style = args[:partition_style] if args.key?(:partition_style)
  @user_managed = args[:user_managed] if args.key?(:user_managed)
end