Skip to content

Commit

Permalink
feat: [datacatalog] add support for entries associated with Spanner a…
Browse files Browse the repository at this point in the history
…nd ClougBigTable (#4302)

- [ ] Regenerate this pull request now.

feat: expand SearchCatalogResponse with totalSize
feat: modify documentation for FQN support
feat: extend ImportApiRequest with jobId parameter

PiperOrigin-RevId: 536127089

Source-Link: https://togithub.com/googleapis/googleapis/commit/208fb58cd6f412fd9b9438ce8dcc13ea5b307a45

Source-Link: https://togithub.com/googleapis/googleapis-gen/commit/df299c5888ab0f55f1dad63918ac88b2b15ba4e2
Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNsb3VkLWRhdGFjYXRhbG9nLy5Pd2xCb3QueWFtbCIsImgiOiJkZjI5OWM1ODg4YWIwZjU1ZjFkYWQ2MzkxOGFjODhiMmIxNWJhNGUyIn0=
  • Loading branch information
gcf-owl-bot[bot] authored Jun 2, 2023
1 parent 02f2346 commit 89c2be8
Show file tree
Hide file tree
Showing 27 changed files with 2,170 additions and 411 deletions.
191 changes: 95 additions & 96 deletions packages/google-cloud-datacatalog/README.md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -52,6 +52,12 @@ enum IntegratedSystem {
// Dataplex.
DATAPLEX = 4;

// Cloud Spanner
CLOUD_SPANNER = 6;

// Cloud Bigtable
CLOUD_BIGTABLE = 7;

// Cloud Sql
CLOUD_SQL = 8;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -735,6 +735,9 @@ message SearchCatalogResponse {
// Search results.
repeated SearchCatalogResult results = 1;

// The approximate total number of entries matched by the query.
int32 total_size = 2;

// Pagination token that can be used in subsequent calls to retrieve the next
// page of results.
string next_page_token = 3;
Expand Down Expand Up @@ -971,7 +974,9 @@ message LookupEntryRequest {
// (https://cloud.google.com/bigquery/docs/reference/standard-sql/lexical).
string sql_resource = 3;

// Fully qualified name (FQN) of the resource.
// [Fully Qualified Name
// (FQN)](https://cloud.google.com//data-catalog/docs/fully-qualified-names)
// of the resource.
//
// FQNs take two forms:
//
Expand All @@ -988,6 +993,16 @@ message LookupEntryRequest {
// `dataproc_metastore:{PROJECT_ID}.{LOCATION_ID}.{INSTANCE_ID}.{DATABASE_ID}.{TABLE_ID}`
string fully_qualified_name = 5;
}

// Project where the lookup should be performed. Required to lookup
// entry that is not a part of `DPMS` or `DATAPLEX` `integrated_system`
// using its `fully_qualified_name`. Ignored in other cases.
string project = 6;

// Location where the lookup should be performed. Required to lookup
// entry that is not a part of `DPMS` or `DATAPLEX` `integrated_system`
// using its `fully_qualified_name`. Ignored in other cases.
string location = 7;
}

// Entry metadata.
Expand Down Expand Up @@ -1037,25 +1052,12 @@ message Entry {
// The maximum size is 200 bytes when encoded in UTF-8.
string linked_resource = 9;

// 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}`
// [Fully Qualified Name
// (FQN)](https://cloud.google.com//data-catalog/docs/fully-qualified-names)
// of the resource. Set automatically for entries representing resources from
// synced systems. Settable only during creation, and read-only later. Can
// be used for search and lookup of the entries.
//
// * 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}`
string fully_qualified_name = 29;

// Required. Entry type.
Expand Down Expand Up @@ -1113,6 +1115,10 @@ message Entry {
// Specification that applies to Looker sysstem. Only settable when
// `user_specified_system` is equal to `LOOKER`
LookerSystemSpec looker_system_spec = 40;

// Specification that applies to Cloud Bigtable system. Only settable when
// `integrated_system` is equal to `CLOUD_BIGTABLE`
CloudBigtableSystemSpec cloud_bigtable_system_spec = 41;
}

// Type specification.
Expand Down Expand Up @@ -1157,6 +1163,9 @@ message Entry {
// Specification that applies to a fileset resource. Valid only
// for entries with the `FILESET` type.
FilesetSpec fileset_spec = 33;

// Specification that applies to a Service resource.
ServiceSpec service_spec = 42;
}

// Display name of an entry.
Expand Down Expand Up @@ -1404,6 +1413,49 @@ message LookerSystemSpec {
string parent_view_display_name = 6;
}

// Specification that applies to
// all entries that are part of `CLOUD_BIGTABLE` system
// (user_specified_type)
message CloudBigtableSystemSpec {
// Display name of the Instance. This is user specified and different from
// the resource name.
string instance_display_name = 1;
}

// Specification that applies to Instance
// entries that are part of `CLOUD_BIGTABLE` system.
// (user_specified_type)
message CloudBigtableInstanceSpec {
// Spec that applies to clusters of an Instance of Cloud Bigtable.
message CloudBigtableClusterSpec {
// Name of the cluster.
string display_name = 1;

// Location of the cluster, typically a Cloud zone.
string location = 2;

// Type of the resource. For a cluster this would be "CLUSTER".
string type = 3;

// A link back to the parent resource, in this case Instance.
string linked_resource = 4;
}

// The list of clusters for the Instance.
repeated CloudBigtableClusterSpec cloud_bigtable_cluster_specs = 1;
}

// Specification that applies to a Service resource. Valid only
// for entries with the `SERVICE` type.
message ServiceSpec {
// System spec
oneof system_spec {
// Specification that applies to Instance entries of `CLOUD_BIGTABLE`
// system.
CloudBigtableInstanceSpec cloud_bigtable_instance_spec = 1;
}
}

// Business Context of the entry.
message BusinessContext {
// Entry overview fields for rich text descriptions of entries.
Expand Down Expand Up @@ -1898,6 +1950,10 @@ message ImportEntriesRequest {
// Path to a Cloud Storage bucket that contains a dump ready for ingestion.
string gcs_bucket_path = 2;
}

// Optional. (Optional) Dataplex task job id, if specified will be used as
// part of ImportEntries LRO ID
string job_id = 3 [(google.api.field_behavior) = OPTIONAL];
}

// Response message for [long-running operation][google.longrunning.Operation]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand All @@ -16,6 +16,7 @@ syntax = "proto3";

package google.cloud.datacatalog.v1;

import "google/api/field_behavior.proto";
import "google/cloud/datacatalog/v1/datacatalog.proto";
import "google/cloud/datacatalog/v1/tags.proto";

Expand All @@ -31,18 +32,19 @@ option ruby_package = "Google::Cloud::DataCatalog::V1";
// Wrapper containing Entry and information about Tags
// that should and should not be attached to it.
message TaggedEntry {
// Required. Entry to be ingested.
oneof entry {
// Non-encrypted Data Catalog v1 Entry.
Entry v1_entry = 1;
}

// Tags that should be ingested into the Data Catalog.
// Optional. Tags that should be ingested into the Data Catalog.
// Caller should populate template name, column and fields.
repeated Tag present_tags = 2;
repeated Tag present_tags = 2 [(google.api.field_behavior) = OPTIONAL];

// Tags that should be deleted from the Data Catalog.
// Optional. Tags that should be deleted from the Data Catalog.
// Caller should populate template name and column only.
repeated Tag absent_tags = 3;
repeated Tag absent_tags = 3 [(google.api.field_behavior) = OPTIONAL];
}

// Wrapper for any item that can be contained in the dump.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -229,7 +229,7 @@ message Taxonomy {
// The Google Cloud service name.
ManagingSystem name = 1;

// P4SA Identity of the service.
// The service agent for the service.
string identity = 2;
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand Down
Loading

0 comments on commit 89c2be8

Please sign in to comment.