Skip to content
This repository has been archived by the owner on Jul 20, 2023. It is now read-only.

Commit

Permalink
feat: add timestamp_outside_retention_rows_count, RemoveContextChildr…
Browse files Browse the repository at this point in the history
…en, order_by, InputArtifact, read_mask, TransferLearningConfig (#450)

* feat: add timestamp_outside_retention_rows_count to ImportFeatureValuesResponse and ImportFeatureValuesOperationMetadata in aiplatform v1beta1 featurestore_service.proto
feat: add RemoveContextChildren rpc to aiplatform v1beta1 metadata_service.proto
feat: add order_by to ListArtifactsRequest, ListContextsRequest, and ListExecutionsRequest in aiplatform v1beta1 metadata_service.proto
feat: add InputArtifact to RuntimeConfig in aiplatform v1beta1 pipeline_job.proto
feat: add read_mask to ListPipelineJobsRequest in aiplatform v1beta1 pipeline_service.proto
feat: add TransferLearningConfig in aiplatform v1beta1 study.proto

PiperOrigin-RevId: 475580307

Source-Link: googleapis/googleapis@dbc83bd

Source-Link: googleapis/googleapis-gen@26c1205
Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMjZjMTIwNTk0ZDYwNDlkNDAwNjEwMjNjYWUzNDVkYTgwMTgxMDc3YyJ9

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* feat: add timestamp_outside_retention_rows_count to ImportFeatureValuesResponse and ImportFeatureValuesOperationMetadata in aiplatform v1 featurestore_service.proto
feat: add RemoveContextChildren rpc to aiplatform v1 metadata_service.proto
feat: add order_by to ListArtifactsRequest, ListContextsRequest, and ListExecutionsRequest in aiplatform v1 metadata_service.proto

PiperOrigin-RevId: 475580702

Source-Link: googleapis/googleapis@af65a19

Source-Link: googleapis/googleapis-gen@023d431
Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMDIzZDQzMTU2OWE1M2Y5YjVjZDBkNDdjNmFmODViOGE0NmNlYTVlOCJ9

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

* test: use fully qualified request type name in tests

PiperOrigin-RevId: 475685359

Source-Link: googleapis/googleapis@7a12973

Source-Link: googleapis/googleapis-gen@370c729
Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMzcwYzcyOWUyYmEwNjJhMTY3NDQ5YzI3ODgyYmE1ZjM3OWM1YzM0ZCJ9

* 🦉 Updates from OwlBot post-processor

See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md

Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
  • Loading branch information
gcf-owl-bot[bot] and gcf-owl-bot[bot] committed Sep 21, 2022
1 parent e1c5cd6 commit 3a3f71f
Show file tree
Hide file tree
Showing 88 changed files with 10,523 additions and 10,178 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ message BatchPredictionJob {
// Required. The user-defined name of this BatchPredictionJob.
string display_name = 2 [(google.api.field_behavior) = REQUIRED];

// The name of the Model resoure that produces the predictions via this job,
// The name of the Model resource that produces the predictions via this job,
// must share the same ancestor Location.
// Starting this job has no impact on any existing deployments of the Model
// and their resources.
Expand Down
1 change: 0 additions & 1 deletion protos/google/cloud/aiplatform/v1/custom_job.proto
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,6 @@ message CustomJob {
}

// Represents the spec of a CustomJob.
// Next Id: 15
message CustomJobSpec {
// Required. The spec of the worker pools including machine type and Docker image.
// All worker pools except the first one are optional and can be skipped by
Expand Down
8 changes: 8 additions & 0 deletions protos/google/cloud/aiplatform/v1/featurestore_service.proto
Original file line number Diff line number Diff line change
Expand Up @@ -525,6 +525,10 @@ message ImportFeatureValuesResponse {
// * Having a null timestamp.
// * Not being parsable (applicable for CSV sources).
int64 invalid_row_count = 6;

// The number rows that weren't ingested due to having feature timestamps
// outside the retention boundary.
int64 timestamp_outside_retention_rows_count = 4;
}

// Request message for [FeaturestoreService.BatchReadFeatureValues][google.cloud.aiplatform.v1.FeaturestoreService.BatchReadFeatureValues].
Expand Down Expand Up @@ -1193,6 +1197,10 @@ message ImportFeatureValuesOperationMetadata {
// * Having a null timestamp.
// * Not being parsable (applicable for CSV sources).
int64 invalid_row_count = 6;

// The number rows that weren't ingested due to having timestamps outside the
// retention boundary.
int64 timestamp_outside_retention_rows_count = 7;
}

// Details of operations that exports Features values.
Expand Down
25 changes: 25 additions & 0 deletions protos/google/cloud/aiplatform/v1/job_service.proto
Original file line number Diff line number Diff line change
Expand Up @@ -388,13 +388,18 @@ message ListCustomJobsRequest {
// * `state` supports `=`, `!=` comparisons.
// * `create_time` supports `=`, `!=`,`<`, `<=`,`>`, `>=` comparisons.
// `create_time` must be in RFC 3339 format.
// * `labels` supports general map functions that is:
// `labels.key=value` - key:value equality
// `labels.key:* - key existence
//
// Some examples of using the filter are:
//
// * `state="JOB_STATE_SUCCEEDED" AND display_name:"my_job_*"`
// * `state!="JOB_STATE_FAILED" OR display_name="my_job"`
// * `NOT display_name="my_job"`
// * `create_time>"2021-05-18T00:00:00Z"`
// * `labels.keyA=valueA`
// * `labels.keyB:*`
string filter = 2;

// The standard list page size.
Expand Down Expand Up @@ -493,13 +498,18 @@ message ListDataLabelingJobsRequest {
// * `state` supports `=`, `!=` comparisons.
// * `create_time` supports `=`, `!=`,`<`, `<=`,`>`, `>=` comparisons.
// `create_time` must be in RFC 3339 format.
// * `labels` supports general map functions that is:
// `labels.key=value` - key:value equality
// `labels.key:* - key existence
//
// Some examples of using the filter are:
//
// * `state="JOB_STATE_SUCCEEDED" AND display_name:"my_job_*"`
// * `state!="JOB_STATE_FAILED" OR display_name="my_job"`
// * `NOT display_name="my_job"`
// * `create_time>"2021-05-18T00:00:00Z"`
// * `labels.keyA=valueA`
// * `labels.keyB:*`
string filter = 2;

// The standard list page size.
Expand Down Expand Up @@ -603,13 +613,18 @@ message ListHyperparameterTuningJobsRequest {
// * `state` supports `=`, `!=` comparisons.
// * `create_time` supports `=`, `!=`,`<`, `<=`,`>`, `>=` comparisons.
// `create_time` must be in RFC 3339 format.
// * `labels` supports general map functions that is:
// `labels.key=value` - key:value equality
// `labels.key:* - key existence
//
// Some examples of using the filter are:
//
// * `state="JOB_STATE_SUCCEEDED" AND display_name:"my_job_*"`
// * `state!="JOB_STATE_FAILED" OR display_name="my_job"`
// * `NOT display_name="my_job"`
// * `create_time>"2021-05-18T00:00:00Z"`
// * `labels.keyA=valueA`
// * `labels.keyB:*`
string filter = 2;

// The standard list page size.
Expand Down Expand Up @@ -711,13 +726,18 @@ message ListBatchPredictionJobsRequest {
// * `state` supports `=`, `!=` comparisons.
// * `create_time` supports `=`, `!=`,`<`, `<=`,`>`, `>=` comparisons.
// `create_time` must be in RFC 3339 format.
// * `labels` supports general map functions that is:
// `labels.key=value` - key:value equality
// `labels.key:* - key existence
//
// Some examples of using the filter are:
//
// * `state="JOB_STATE_SUCCEEDED" AND display_name:"my_job_*"`
// * `state!="JOB_STATE_FAILED" OR display_name="my_job"`
// * `NOT display_name="my_job"`
// * `create_time>"2021-05-18T00:00:00Z"`
// * `labels.keyA=valueA`
// * `labels.keyB:*`
string filter = 2;

// The standard list page size.
Expand Down Expand Up @@ -891,13 +911,18 @@ message ListModelDeploymentMonitoringJobsRequest {
// * `state` supports `=`, `!=` comparisons.
// * `create_time` supports `=`, `!=`,`<`, `<=`,`>`, `>=` comparisons.
// `create_time` must be in RFC 3339 format.
// * `labels` supports general map functions that is:
// `labels.key=value` - key:value equality
// `labels.key:* - key existence
//
// Some examples of using the filter are:
//
// * `state="JOB_STATE_SUCCEEDED" AND display_name:"my_job_*"`
// * `state!="JOB_STATE_FAILED" OR display_name="my_job"`
// * `NOT display_name="my_job"`
// * `create_time>"2021-05-18T00:00:00Z"`
// * `labels.keyA=valueA`
// * `labels.keyB:*`
string filter = 2;

// The standard list page size.
Expand Down
60 changes: 60 additions & 0 deletions protos/google/cloud/aiplatform/v1/metadata_service.proto
Original file line number Diff line number Diff line change
Expand Up @@ -228,6 +228,17 @@ service MetadataService {
option (google.api.method_signature) = "context,child_contexts";
}

// Remove a set of children contexts from a parent Context. If any of the
// child Contexts were NOT added to the parent Context, they are
// simply skipped.
rpc RemoveContextChildren(RemoveContextChildrenRequest) returns (RemoveContextChildrenResponse) {
option (google.api.http) = {
post: "/v1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:removeContextChildren"
body: "*"
};
option (google.api.method_signature) = "context,child_contexts";
}

// Retrieves Artifacts and Executions within the specified Context, connected
// by Event edges and returned as a LineageSubgraph.
rpc QueryContextLineageSubgraph(QueryContextLineageSubgraphRequest) returns (LineageSubgraph) {
Expand Down Expand Up @@ -549,6 +560,14 @@ message ListArtifactsRequest {
//
// For example: `display_name = "test" AND metadata.field1.bool_value = true`.
string filter = 4;

// How the list of messages is ordered. Specify the values to order by and an
// ordering operation. The default sorting order is ascending. To specify
// descending order for a field, users append a " desc" suffix; for example:
// "foo desc, bar".
// Subfields are specified with a `.` character, such as foo.bar.
// see https://google.aip.dev/132#ordering for more details.
string order_by = 5;
}

// Response message for [MetadataService.ListArtifacts][google.cloud.aiplatform.v1.MetadataService.ListArtifacts].
Expand Down Expand Up @@ -735,6 +754,14 @@ message ListContextsRequest {
//
// For example: `display_name = "test" AND metadata.field1.bool_value = true`.
string filter = 4;

// How the list of messages is ordered. Specify the values to order by and an
// ordering operation. The default sorting order is ascending. To specify
// descending order for a field, users append a " desc" suffix; for example:
// "foo desc, bar".
// Subfields are specified with a `.` character, such as foo.bar.
// see https://google.aip.dev/132#ordering for more details.
string order_by = 5;
}

// Response message for [MetadataService.ListContexts][google.cloud.aiplatform.v1.MetadataService.ListContexts].
Expand Down Expand Up @@ -890,6 +917,31 @@ message AddContextChildrenResponse {

}

// Request message for
// [MetadataService.DeleteContextChildrenRequest][].
message RemoveContextChildrenRequest {
// Required. The resource name of the parent Context.
//
// Format:
// `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}`
string context = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "aiplatform.googleapis.com/Context"
}
];

// The resource names of the child Contexts.
repeated string child_contexts = 2 [(google.api.resource_reference) = {
type: "aiplatform.googleapis.com/Context"
}];
}

// Response message for [MetadataService.RemoveContextChildren][google.cloud.aiplatform.v1.MetadataService.RemoveContextChildren].
message RemoveContextChildrenResponse {

}

// Request message for [MetadataService.QueryContextLineageSubgraph][google.cloud.aiplatform.v1.MetadataService.QueryContextLineageSubgraph].
message QueryContextLineageSubgraphRequest {
// Required. The resource name of the Context whose Artifacts and Executions
Expand Down Expand Up @@ -999,6 +1051,14 @@ message ListExecutionsRequest {
// logical operators (`AND` & `OR`).
// For example: `display_name = "test" AND metadata.field1.bool_value = true`.
string filter = 4;

// How the list of messages is ordered. Specify the values to order by and an
// ordering operation. The default sorting order is ascending. To specify
// descending order for a field, users append a " desc" suffix; for example:
// "foo desc, bar".
// Subfields are specified with a `.` character, such as foo.bar.
// see https://google.aip.dev/132#ordering for more details.
string order_by = 5;
}

// Response message for [MetadataService.ListExecutions][google.cloud.aiplatform.v1.MetadataService.ListExecutions].
Expand Down
3 changes: 3 additions & 0 deletions protos/google/cloud/aiplatform/v1/pipeline_service.proto
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,9 @@ message ListTrainingPipelinesRequest {
// * `training_task_definition` `=`, `!=` comparisons, and `:` wildcard.
// * `create_time` supports `=`, `!=`,`<`, `<=`,`>`, `>=` comparisons.
// `create_time` must be in RFC 3339 format.
// * `labels` supports general map functions that is:
// `labels.key=value` - key:value equality
// `labels.key:* - key existence
//
// Some examples of using the filter are:
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ message BatchPredictionJob {
// Required. The user-defined name of this BatchPredictionJob.
string display_name = 2 [(google.api.field_behavior) = REQUIRED];

// The name of the Model resoure that produces the predictions via this job,
// The name of the Model resource that produces the predictions via this job,
// must share the same ancestor Location.
// Starting this job has no impact on any existing deployments of the Model
// and their resources.
Expand Down
1 change: 0 additions & 1 deletion protos/google/cloud/aiplatform/v1beta1/custom_job.proto
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,6 @@ message CustomJob {
}

// Represents the spec of a CustomJob.
// Next Id: 15
message CustomJobSpec {
// Required. The spec of the worker pools including machine type and Docker image.
// All worker pools except the first one are optional and can be skipped by
Expand Down
55 changes: 42 additions & 13 deletions protos/google/cloud/aiplatform/v1beta1/featurestore_service.proto
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ import "google/cloud/aiplatform/v1beta1/operation.proto";
import "google/longrunning/operations.proto";
import "google/protobuf/field_mask.proto";
import "google/protobuf/timestamp.proto";
import "google/type/interval.proto";

option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1";
option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform";
Expand Down Expand Up @@ -290,8 +291,7 @@ service FeaturestoreService {
// returned from reads and exports may be inconsistent. If consistency is
// required, the caller must retry the same delete request again and wait till
// the new operation returned is marked as successfully done.
rpc DeleteFeatureValues(DeleteFeatureValuesRequest)
returns (google.longrunning.Operation) {
rpc DeleteFeatureValues(DeleteFeatureValuesRequest) returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1beta1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:deleteFeatureValues"
body: "*"
Expand Down Expand Up @@ -548,6 +548,10 @@ message ImportFeatureValuesResponse {
// * Having a null timestamp.
// * Not being parsable (applicable for CSV sources).
int64 invalid_row_count = 6;

// The number rows that weren't ingested due to having feature timestamps
// outside the retention boundary.
int64 timestamp_outside_retention_rows_count = 4;
}

// Request message for [FeaturestoreService.BatchReadFeatureValues][google.cloud.aiplatform.v1beta1.FeaturestoreService.BatchReadFeatureValues].
Expand Down Expand Up @@ -1216,6 +1220,10 @@ message ImportFeatureValuesOperationMetadata {
// * Having a null timestamp.
// * Not being parsable (applicable for CSV sources).
int64 invalid_row_count = 6;

// The number rows that weren't ingested due to having timestamps outside the
// retention boundary.
int64 timestamp_outside_retention_rows_count = 7;
}

// Details of operations that exports Features values.
Expand Down Expand Up @@ -1254,27 +1262,47 @@ message BatchCreateFeaturesOperationMetadata {
GenericOperationMetadata generic_metadata = 1;
}

// Request message for
// [FeaturestoreService.DeleteFeatureValues][google.cloud.aiplatform.v1beta1.FeaturestoreService.DeleteFeatureValues].
// Request message for [FeaturestoreService.DeleteFeatureValues][google.cloud.aiplatform.v1beta1.FeaturestoreService.DeleteFeatureValues].
message DeleteFeatureValuesRequest {
// Message to select entity.
// If an entity id is selected, all the feature values corresponding to the
// entity id will be deleted, including the entityId.
message SelectEntity {
// Required. Selectors choosing feature values of which entity id to be
// deleted from the EntityType.
EntityIdSelector entity_id_selector = 1
[(google.api.field_behavior) = REQUIRED];
// Required. Selectors choosing feature values of which entity id to be deleted from
// the EntityType.
EntityIdSelector entity_id_selector = 1 [(google.api.field_behavior) = REQUIRED];
}

// Message to select time range and feature.
// Values of the selected feature generated within an inclusive time range
// will be deleted.
message SelectTimeRangeAndFeature {
// Required. Select feature generated within a half-inclusive time range.
// The time range is lower inclusive and upper exclusive.
google.type.Interval time_range = 1 [(google.api.field_behavior) = REQUIRED];

// Required. Selectors choosing which feature values to be deleted from the
// EntityType.
FeatureSelector feature_selector = 2 [(google.api.field_behavior) = REQUIRED];

// If set, data will not be deleted from online storage.
// When time range is older than the data in online storage, setting this to
// be true will make the deletion have no impact on online serving.
bool skip_online_storage_delete = 3;
}

// Defines options to select feature values to be deleted.
oneof DeleteOption {
// Select feature values to be deleted by specifying entities.
SelectEntity select_entity = 2;

// Select feature values to be deleted by specifying time range and
// features.
SelectTimeRangeAndFeature select_time_range_and_feature = 3;
}

// Required. The resource name of the EntityType grouping the Features for
// which values are being deleted from. Format:
// Required. The resource name of the EntityType grouping the Features for which values
// are being deleted from. Format:
// `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entityType}`
string entity_type = 1 [
(google.api.field_behavior) = REQUIRED,
Expand All @@ -1284,9 +1312,10 @@ message DeleteFeatureValuesRequest {
];
}

// Response message for
// [FeaturestoreService.DeleteFeatureValues][google.cloud.aiplatform.v1beta1.FeaturestoreService.DeleteFeatureValues].
message DeleteFeatureValuesResponse {}
// Response message for [FeaturestoreService.DeleteFeatureValues][google.cloud.aiplatform.v1beta1.FeaturestoreService.DeleteFeatureValues].
message DeleteFeatureValuesResponse {

}

// Selector for entityId. Getting ids from the given source.
message EntityIdSelector {
Expand Down
Loading

0 comments on commit 3a3f71f

Please sign in to comment.