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.



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

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



745
746
747
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 745

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



750
751
752
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 750

def bigquery_table_spec
  @bigquery_table_spec
end

#business_contextGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1BusinessContext

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



755
756
757
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 755

def business_context
  @business_context
end

#data_sourceGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1DataSource

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



760
761
762
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 760

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



766
767
768
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 766

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



772
773
774
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 772

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)


781
782
783
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 781

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)


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

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



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

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)


807
808
809
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 807

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



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

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)


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

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


825
826
827
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 825

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)


839
840
841
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 839

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)


846
847
848
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 846

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



851
852
853
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 851

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



857
858
859
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 857

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



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

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



867
868
869
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 867

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)


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

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



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

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)


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

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)


902
903
904
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 902

def user_specified_type
  @user_specified_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 909

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