Skip to content

Commit b643f04

Browse files
feat: add CompositeKey message and composite_key field to FeatureViewDataKey (#5072)
* feat: enable FeatureView Service Agents PiperOrigin-RevId: 609447516 Source-Link: googleapis/googleapis@694219f Source-Link: googleapis/googleapis-gen@3586010 Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNsb3VkLWFpcGxhdGZvcm0vLk93bEJvdC55YW1sIiwiaCI6IjM1ODYwMTAyMDJlOGQ1NTY0MjRlYmYxZWRlYWNiMjFlMWEzNjdmNDMifQ== * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * feat: add CompositeKey message and composite_key field to FeatureViewDataKey PiperOrigin-RevId: 609467767 Source-Link: googleapis/googleapis@64392a1 Source-Link: googleapis/googleapis-gen@7535266 Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNsb3VkLWFpcGxhdGZvcm0vLk93bEJvdC55YW1sIiwiaCI6Ijc1MzUyNjYxMGI5ODk0MTYwNTg5MWY4Yjk3Y2I5NWFiNzdlZWY2MzAifQ== * feat: add CompositeKey message and composite_key field to FeatureViewDataKey PiperOrigin-RevId: 609491914 Source-Link: googleapis/googleapis@7767447 Source-Link: googleapis/googleapis-gen@5920b28 Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNsb3VkLWFpcGxhdGZvcm0vLk93bEJvdC55YW1sIiwiaCI6IjU5MjBiMjg1YjM2ODI4YTA1ZDQ4NGVkYzUwMjE2ODAwZDkwY2E2NjYifQ== * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * 🦉 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>
1 parent 02fb6a5 commit b643f04

6 files changed

Lines changed: 939 additions & 8 deletions

File tree

packages/google-cloud-aiplatform/protos/google/cloud/aiplatform/v1/feature_online_store_service.proto

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,9 +73,20 @@ enum FeatureViewDataFormat {
7373

7474
// Lookup key for a feature view.
7575
message FeatureViewDataKey {
76+
// ID that is comprised from several parts (columns).
77+
message CompositeKey {
78+
// Parts to construct Entity ID. Should match with the same ID columns as
79+
// defined in FeatureView in the same order.
80+
repeated string parts = 1;
81+
}
82+
7683
oneof key_oneof {
7784
// String key to use for lookup.
7885
string key = 1;
86+
87+
// The actual Entity ID will be composed from this struct. This should match
88+
// with the way ID is defined in the FeatureView spec.
89+
CompositeKey composite_key = 2;
7990
}
8091
}
8192

packages/google-cloud-aiplatform/protos/google/cloud/aiplatform/v1beta1/feature_online_store_service.proto

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,9 +73,20 @@ enum FeatureViewDataFormat {
7373

7474
// Lookup key for a feature view.
7575
message FeatureViewDataKey {
76+
// ID that is comprised from several parts (columns).
77+
message CompositeKey {
78+
// Parts to construct Entity ID. Should match with the same ID columns as
79+
// defined in FeatureView in the same order.
80+
repeated string parts = 1;
81+
}
82+
7683
oneof key_oneof {
7784
// String key to use for lookup.
7885
string key = 1;
86+
87+
// The actual Entity ID will be composed from this struct. This should match
88+
// with the way ID is defined in the FeatureView spec.
89+
CompositeKey composite_key = 2;
7990
}
8091
}
8192

packages/google-cloud-aiplatform/protos/google/cloud/aiplatform/v1beta1/feature_view.proto

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,22 @@ message FeatureView {
147147
[(google.api.field_behavior) = REQUIRED];
148148
}
149149

150+
// Service agent type used during data sync.
151+
enum ServiceAgentType {
152+
// By default, the project-level Vertex AI Service Agent is enabled.
153+
SERVICE_AGENT_TYPE_UNSPECIFIED = 0;
154+
155+
// Indicates the project-level Vertex AI Service Agent
156+
// (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents)
157+
// will be used during sync jobs.
158+
SERVICE_AGENT_TYPE_PROJECT = 1;
159+
160+
// Enable a FeatureView service account to be created by Vertex AI and
161+
// output in the field `service_account_email`. This service account will
162+
// be used to read from the source BigQuery table during sync.
163+
SERVICE_AGENT_TYPE_FEATURE_VIEW = 2;
164+
}
165+
150166
oneof source {
151167
// Optional. Configures how data is supposed to be extracted from a BigQuery
152168
// source to be loaded onto the FeatureOnlineStore.
@@ -199,4 +215,19 @@ message FeatureView {
199215
// online serving.
200216
VectorSearchConfig vector_search_config = 8
201217
[(google.api.field_behavior) = OPTIONAL];
218+
219+
// Optional. Service agent type used during data sync. By default, the Vertex
220+
// AI Service Agent is used. When using an IAM Policy to isolate this
221+
// FeatureView within a project
222+
// (https://cloud.google.com/vertex-ai/docs/featurestore/latest/resource-policy)
223+
// a separate service account should be provisioned by
224+
// setting this field to `SERVICE_AGENT_TYPE_FEATURE_VIEW`. This will generate
225+
// a separate service account to access the BigQuery source table.
226+
ServiceAgentType service_agent_type = 14
227+
[(google.api.field_behavior) = OPTIONAL];
228+
229+
// Output only. A Service Account unique to this FeatureView. The role
230+
// bigquery.dataViewer should be granted to this service account to allow
231+
// Vertex AI Feature Store to sync data to the online store.
232+
string service_account_email = 13 [(google.api.field_behavior) = OUTPUT_ONLY];
202233
}

packages/google-cloud-aiplatform/protos/protos.d.ts

Lines changed: 233 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)