Resource: FeatureView
FeatureView is representation of values that the FeatureOnlineStore will serve based on its syncConfig.
JSON representation |
---|
{ "name": string, "createTime": string, "updateTime": string, "etag": string, "labels": { string: string, ... }, "syncConfig": { object ( |
Fields | |
---|---|
name |
Identifier. name of the FeatureView. Format: |
createTime |
Output only. timestamp when this FeatureView was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
updateTime |
Output only. timestamp when this FeatureView was last updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
etag |
Optional. Used to perform consistent read-modify-write updates. If not set, a blind "overwrite" update happens. |
labels |
Optional. The labels with user-defined metadata to organize your FeatureViews. label keys and values can be no longer than 64 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. See https://goo.gl/xmQnxf for more information on and examples of labels. No more than 64 user labels can be associated with one FeatureOnlineStore(System labels are excluded)." System reserved label keys are prefixed with "aiplatform.googleapis.com/" and are immutable. |
syncConfig |
Configures when data is to be synced/updated for this FeatureView. At the end of the sync the latest featureValues for each entityId of this FeatureView are made ready for online serving. |
vectorSearchConfig |
Optional. Deprecated: please use |
indexConfig |
Optional. Configuration for index preparation for vector search. It contains the required configurations to create an index from source data, so that approximate nearest neighbor (a.k.a ANN) algorithms search can be performed during online serving. |
serviceAgentType |
Optional. service agent type used during data sync. By default, the Vertex AI service Agent is used. When using an IAM Policy to isolate this FeatureView within a project, a separate service account should be provisioned by setting this field to |
serviceAccountEmail |
Output only. A service Account unique to this FeatureView. The role bigquery.dataViewer should be granted to this service account to allow Vertex AI feature Store to sync data to the online store. |
Union field
|
|
bigQuerySource |
Optional. Configures how data is supposed to be extracted from a BigQuery source to be loaded onto the FeatureOnlineStore. |
featureRegistrySource |
Optional. Configures the features from a feature Registry source that need to be loaded onto the FeatureOnlineStore. |
BigQuerySource
JSON representation |
---|
{ "uri": string, "entityIdColumns": [ string ] } |
Fields | |
---|---|
uri |
Required. The BigQuery view URI that will be materialized on each sync trigger based on FeatureView.SyncConfig. |
entityIdColumns[] |
Required. columns to construct entityId / row keys. |
FeatureRegistrySource
A feature Registry source for features that need to be synced to Online Store.
JSON representation |
---|
{
"featureGroups": [
{
object ( |
Fields | |
---|---|
featureGroups[] |
Required. List of features that need to be synced to Online Store. |
projectNumber |
Optional. The project number of the parent project of the feature Groups. |
FeatureGroup
Features belonging to a single feature group that will be synced to Online Store.
JSON representation |
---|
{ "featureGroupId": string, "featureIds": [ string ] } |
Fields | |
---|---|
featureGroupId |
Required. Identifier of the feature group. |
featureIds[] |
Required. Identifiers of features under the feature group. |
SyncConfig
Configuration for Sync. Only one option is set.
JSON representation |
---|
{ "cron": string } |
Fields | |
---|---|
cron |
Cron schedule (https://en.wikipedia.org/wiki/Cron) to launch scheduled runs. To explicitly set a timezone to the cron tab, apply a prefix in the cron tab: "CRON_TZ=${IANA_TIME_ZONE}" or "TZ=${IANA_TIME_ZONE}". The ${IANA_TIME_ZONE} may only be a valid string from IANA time zone database. For example, "CRON_TZ=America/New_York 1 * * * *", or "TZ=America/New_York 1 * * * *". |
VectorSearchConfig
Deprecated. Use IndexConfig
instead.
JSON representation |
---|
{ "embeddingColumn": string, "filterColumns": [ string ], "crowdingColumn": string, "distanceMeasureType": enum ( |
Fields | |
---|---|
embeddingColumn |
Optional. column of embedding. This column contains the source data to create index for vector search. embeddingColumn must be set when using vector search. |
filterColumns[] |
Optional. columns of features that're used to filter vector search results. |
crowdingColumn |
Optional. column of crowding. This column contains crowding attribute which is a constraint on a neighbor list produced by |
distanceMeasureType |
Optional. The distance measure used in nearest neighbor search. |
Union field algorithm_config . The configuration with regard to the algorithms used for efficient search. algorithm_config can be only one of the following: |
|
treeAhConfig |
Optional. Configuration options for the tree-AH algorithm (Shallow tree + Asymmetric Hashing). Please refer to this paper for more details: https://arxiv.org/abs/1908.10396 |
bruteForceConfig |
Optional. Configuration options for using brute force search, which simply implements the standard linear search in the database for each query. It is primarily meant for benchmarking and to generate the ground truth for approximate search. |
embeddingDimension |
Optional. The number of dimensions of the input embedding. |
TreeAHConfig
JSON representation |
---|
{ "leafNodeEmbeddingCount": string } |
Fields | |
---|---|
leafNodeEmbeddingCount |
Optional. Number of embeddings on each leaf node. The default value is 1000 if not set. |
BruteForceConfig
This type has no fields.
DistanceMeasureType
Enums | |
---|---|
DISTANCE_MEASURE_TYPE_UNSPECIFIED |
Should not be set. |
SQUARED_L2_DISTANCE |
Euclidean (L_2) Distance. |
COSINE_DISTANCE |
Cosine Distance. Defined as 1 - cosine similarity. We strongly suggest using DOT_PRODUCT_DISTANCE + UNIT_L2_NORM instead of COSINE distance. Our algorithms have been more optimized for DOT_PRODUCT distance which, when combined with UNIT_L2_NORM, is mathematically equivalent to COSINE distance and results in the same ranking. |
DOT_PRODUCT_DISTANCE |
Dot Product Distance. Defined as a negative of the dot product. |
IndexConfig
Configuration for vector indexing.
JSON representation |
---|
{ "embeddingColumn": string, "filterColumns": [ string ], "crowdingColumn": string, "distanceMeasureType": enum ( |
Fields | |
---|---|
embeddingColumn |
Optional. column of embedding. This column contains the source data to create index for vector search. embeddingColumn must be set when using vector search. |
filterColumns[] |
Optional. columns of features that're used to filter vector search results. |
crowdingColumn |
Optional. column of crowding. This column contains crowding attribute which is a constraint on a neighbor list produced by |
distanceMeasureType |
Optional. The distance measure used in nearest neighbor search. |
Union field algorithm_config . The configuration with regard to the algorithms used for efficient search. algorithm_config can be only one of the following: |
|
treeAhConfig |
Optional. Configuration options for the tree-AH algorithm (Shallow tree + Asymmetric Hashing). Please refer to this paper for more details: https://arxiv.org/abs/1908.10396 |
bruteForceConfig |
Optional. Configuration options for using brute force search, which simply implements the standard linear search in the database for each query. It is primarily meant for benchmarking and to generate the ground truth for approximate search. |
embeddingDimension |
Optional. The number of dimensions of the input embedding. |
TreeAHConfig
Configuration options for the tree-AH algorithm.
JSON representation |
---|
{ "leafNodeEmbeddingCount": string } |
Fields | |
---|---|
leafNodeEmbeddingCount |
Optional. Number of embeddings on each leaf node. The default value is 1000 if not set. |
BruteForceConfig
This type has no fields.
Configuration options for using brute force search.
DistanceMeasureType
The distance measure used in nearest neighbor search.
Enums | |
---|---|
DISTANCE_MEASURE_TYPE_UNSPECIFIED |
Should not be set. |
SQUARED_L2_DISTANCE |
Euclidean (L_2) Distance. |
COSINE_DISTANCE |
Cosine Distance. Defined as 1 - cosine similarity. We strongly suggest using DOT_PRODUCT_DISTANCE + UNIT_L2_NORM instead of COSINE distance. Our algorithms have been more optimized for DOT_PRODUCT distance which, when combined with UNIT_L2_NORM, is mathematically equivalent to COSINE distance and results in the same ranking. |
DOT_PRODUCT_DISTANCE |
Dot Product Distance. Defined as a negative of the dot product. |
ServiceAgentType
service agent type used during data sync.
Enums | |
---|---|
SERVICE_AGENT_TYPE_UNSPECIFIED |
By default, the project-level Vertex AI service Agent is enabled. |
SERVICE_AGENT_TYPE_PROJECT |
Indicates the project-level Vertex AI service Agent (https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) will be used during sync jobs. |
SERVICE_AGENT_TYPE_FEATURE_VIEW |
Enable a FeatureView service account to be created by Vertex AI and output in the field serviceAccountEmail . This service account will be used to read from the source BigQuery table during sync. |
Methods |
|
---|---|
|
Creates a new FeatureView in a given FeatureOnlineStore. |
|
Deletes a single FeatureView. |
|
Fetch feature values under a FeatureView. |
|
Gets details of a single FeatureView. |
|
Gets the access control policy for a resource. |
|
Lists FeatureViews in a given FeatureOnlineStore. |
|
Updates the parameters of a single FeatureView. |
|
Search the nearest entities under a FeatureView. |
|
Sets the access control policy on the specified resource. |
|
Bidirectional streaming RPC to fetch feature values under a FeatureView. |
|
Triggers on-demand sync for the FeatureView. |
|
Returns permissions that a caller has on the specified resource. |