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.



910
911
912
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 910

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



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

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



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

def bigquery_table_spec
  @bigquery_table_spec
end

#business_contextGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1BusinessContext

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



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

def business_context
  @business_context
end

#data_sourceGoogle::Apis::DatacatalogV1::GoogleCloudDatacatalogV1DataSource

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



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

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. Only one of internal specs can be set at the time, and cannot be changed later. Corresponds to the JSON property dataSourceConnectionSpec



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

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



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

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)


787
788
789
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 787

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)


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

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



801
802
803
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 801

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)


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

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



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

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)


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

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


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

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)


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

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)


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

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



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

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



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

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



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

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



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

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)


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

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



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

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)


896
897
898
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 896

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)


908
909
910
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 908

def user_specified_type
  @user_specified_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
# File 'lib/google/apis/datacatalog_v1/classes.rb', line 915

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