Class: Google::Apis::DatacatalogV1::GoogleCloudDatacatalogV1Entry

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

Overview

Entry metadata. A Data Catalog entry represents another resource in Google Cloud Platform (such as a BigQuery dataset or a Pub/Sub topic) or outside of it. You can use the linked_resource field in the entry resource to refer to the original resource ID of the source system. An entry resource contains resource details, for example, its schema. Additionally, you can attach flexible metadata to an entry in the form of a Tag.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudDatacatalogV1Entry

Returns a new instance of GoogleCloudDatacatalogV1Entry.



928
929
930
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 928

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

Instance Attribute Details

#bigquery_date_sharded_specGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1BigQueryDateShardedSpec

Specification for a group of BigQuery tables with the [prefix]YYYYMMDD name pattern. For more information, see Introduction to partitioned tables. Corresponds to the JSON property bigqueryDateShardedSpec



769
770
771
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 769

def bigquery_date_sharded_spec
  @bigquery_date_sharded_spec
end

#bigquery_table_specGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1BigQueryTableSpec

Describes a BigQuery table. Corresponds to the JSON property bigqueryTableSpec



774
775
776
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 774

def bigquery_table_spec
  @bigquery_table_spec
end

#business_contextGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1BusinessContext

Business Context of the entry. Corresponds to the JSON property businessContext



779
780
781
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 779

def business_context
  @business_context
end

#data_sourceGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1DataSource

Physical location of an entry. Corresponds to the JSON property dataSource



784
785
786
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 784

def data_source
  @data_source
end

#data_source_connection_specGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1DataSourceConnectionSpec

Specification that applies to a data source connection. Valid only for entries with the DATA_SOURCE_CONNECTION type. Corresponds to the JSON property dataSourceConnectionSpec



790
791
792
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 790

def data_source_connection_spec
  @data_source_connection_spec
end

#database_table_specGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1DatabaseTableSpec

Specification that applies to a table resource. Valid only for entries with the TABLE type. Corresponds to the JSON property databaseTableSpec



796
797
798
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 796

def database_table_spec
  @database_table_spec
end

#descriptionString

Entry description that can consist of several sentences or paragraphs that describe entry contents. The description must not contain Unicode non- characters as well as C0 and C1 control codes except tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF). The maximum size is 2000 bytes when encoded in UTF-8. Default value is an empty string. Corresponds to the JSON property description

Returns:

  • (String)


805
806
807
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 805

def description
  @description
end

#display_nameString

Display name of an entry. The name must contain only Unicode letters, numbers ( 0-9), underscores (_), dashes (-), spaces ( ), and can't start or end with spaces. The maximum size is 200 bytes when encoded in UTF-8. Default value is an empty string. Corresponds to the JSON property displayName

Returns:

  • (String)


813
814
815
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 813

def display_name
  @display_name
end

#fileset_specGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1FilesetSpec

Specification that applies to a fileset. Valid only for entries with the ' FILESET' type. Corresponds to the JSON property filesetSpec



819
820
821
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 819

def fileset_spec
  @fileset_spec
end

#fully_qualified_nameString

Fully qualified name (FQN) of the resource. Set automatically for entries representing resources from synced systems. Settable only during creation and read-only afterwards. Can be used for search and lookup of the entries. FQNs take two forms: * For non-regionalized resources: SYSTEM`:`PROJECT`.` PATH_TO_RESOURCE_SEPARATED_WITH_DOTS * For regionalized resources: SYSTEM`: `PROJECT`.`LOCATION_ID`.`PATH_TO_RESOURCE_SEPARATED_WITH_DOTS Example for a DPMS table: dataproc_metastore:PROJECT_ID.LOCATION_ID.INSTANCE_ID. DATABASE_ID.TABLE_ID` Corresponds to the JSON propertyfullyQualifiedName`

Returns:

  • (String)


831
832
833
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 831

def fully_qualified_name
  @fully_qualified_name
end

#gcs_fileset_specGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1GcsFilesetSpec

Describes a Cloud Storage fileset entry. Corresponds to the JSON property gcsFilesetSpec



836
837
838
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 836

def gcs_fileset_spec
  @gcs_fileset_spec
end

#integrated_systemString

Output only. Indicates the entry's source system that Data Catalog integrates with, such as BigQuery, Pub/Sub, or Dataproc Metastore. Corresponds to the JSON property integratedSystem

Returns:

  • (String)


842
843
844
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 842

def integrated_system
  @integrated_system
end

#labelsHash<String,String>

Cloud labels attached to the entry. In Data Catalog, you can create and modify labels attached only to custom entries. Synced entries have unmodifiable labels that come from the source system. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


849
850
851
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 849

def labels
  @labels
end

#linked_resourceString

The resource this metadata entry refers to. For Google Cloud Platform resources, linked_resource is the Full Resource Name. For example, the linked_resource for a table resource from BigQuery is: //bigquery.googleapis. com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID`Output only when the entry is one of the types in theEntryTypeenum. For entries with a user_specified_type`, this field is optional and defaults to an empty string. The resource string must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), periods (.), colons (:), slashes (/), dashes (-), and hashes (

). The maximum size is 200 bytes when encoded in UTF-8.

Corresponds to the JSON property linkedResource

Returns:

  • (String)


863
864
865
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 863

def linked_resource
  @linked_resource
end

#nameString

Output only. The resource name of an entry in URL format. Note: The entry itself and its child resources might not be stored in the location specified in its name. Corresponds to the JSON property name

Returns:

  • (String)


870
871
872
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 870

def name
  @name
end

#personal_detailsGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1PersonalDetails

Entry metadata relevant only to the user and private to them. Corresponds to the JSON property personalDetails



875
876
877
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 875

def personal_details
  @personal_details
end

#routine_specGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1RoutineSpec

Specification that applies to a routine. Valid only for entries with the ROUTINE type. Corresponds to the JSON property routineSpec



881
882
883
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 881

def routine_spec
  @routine_spec
end

#schemaGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1Schema

Represents a schema, for example, a BigQuery, GoogleSQL, or Avro schema. Corresponds to the JSON property schema



886
887
888
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 886

def schema
  @schema
end

#source_system_timestampsGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1SystemTimestamps

Timestamps associated with this resource in a particular system. Corresponds to the JSON property sourceSystemTimestamps



891
892
893
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 891

def source_system_timestamps
  @source_system_timestamps
end

#typeString

The type of the entry. Only used for entries with types listed in the EntryType enum. Currently, only FILESET enum value is allowed. All other entries created in Data Catalog must use the user_specified_type. Corresponds to the JSON property type

Returns:

  • (String)


898
899
900
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 898

def type
  @type
end

#usage_signalGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1UsageSignal

The set of all usage signals that Data Catalog stores. Note: Usually, these signals are updated daily. In rare cases, an update may fail but will be performed again on the next day. Corresponds to the JSON property usageSignal



905
906
907
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 905

def usage_signal
  @usage_signal
end

#user_specified_systemString

Indicates the entry's source system that Data Catalog doesn't automatically integrate with. The user_specified_system string has the following limitations: * Is case insensitive. * Must begin with a letter or underscore. * Can only contain letters, numbers, and underscores. * Must be at least 1 character and at most 64 characters long. Corresponds to the JSON property userSpecifiedSystem

Returns:

  • (String)


914
915
916
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 914

def user_specified_system
  @user_specified_system
end

#user_specified_typeString

Custom entry type that doesn't match any of the values allowed for input and listed in the EntryType enum. When creating an entry, first check the type values in the enum. If there are no appropriate types for the new entry, provide a custom value, for example, my_special_type. The user_specified_type string has the following limitations: * Is case insensitive. * Must begin with a letter or underscore. * Can only contain letters, numbers, and underscores. * Must be at least 1 character and at most 64 characters long. Corresponds to the JSON property userSpecifiedType

Returns:

  • (String)


926
927
928
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 926

def user_specified_type
  @user_specified_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 933

def update!(**args)
  @bigquery_date_sharded_spec = args[:bigquery_date_sharded_spec] if args.key?(:bigquery_date_sharded_spec)
  @bigquery_table_spec = args[:bigquery_table_spec] if args.key?(:bigquery_table_spec)
  @business_context = args[:business_context] if args.key?(:business_context)
  @data_source = args[:data_source] if args.key?(:data_source)
  @data_source_connection_spec = args[:data_source_connection_spec] if args.key?(:data_source_connection_spec)
  @database_table_spec = args[:database_table_spec] if args.key?(:database_table_spec)
  @description = args[:description] if args.key?(:description)
  @display_name = args[:display_name] if args.key?(:display_name)
  @fileset_spec = args[:fileset_spec] if args.key?(:fileset_spec)
  @fully_qualified_name = args[:fully_qualified_name] if args.key?(:fully_qualified_name)
  @gcs_fileset_spec = args[:gcs_fileset_spec] if args.key?(:gcs_fileset_spec)
  @integrated_system = args[:integrated_system] if args.key?(:integrated_system)
  @labels = args[:labels] if args.key?(:labels)
  @linked_resource = args[:linked_resource] if args.key?(:linked_resource)
  @name = args[:name] if args.key?(:name)
  @personal_details = args[:personal_details] if args.key?(:personal_details)
  @routine_spec = args[:routine_spec] if args.key?(:routine_spec)
  @schema = args[:schema] if args.key?(:schema)
  @source_system_timestamps = args[:source_system_timestamps] if args.key?(:source_system_timestamps)
  @type = args[:type] if args.key?(:type)
  @usage_signal = args[:usage_signal] if args.key?(:usage_signal)
  @user_specified_system = args[:user_specified_system] if args.key?(:user_specified_system)
  @user_specified_type = args[:user_specified_type] if args.key?(:user_specified_type)
end