Vertex AI Feature Online Store provides a centralized repository for serving ML features and embedding indexes at low latency. The Feature Online Store is a top-level container.
To get more information about FeatureOnlineStore, see:
resource "google_vertex_ai_feature_online_store" "feature_online_store" {
name = "example_feature_online_store"
labels = {
foo = "bar"
}
region = "us-central1"
bigtable {
auto_scaling {
min_node_count = 1
max_node_count = 3
cpu_utilization_target = 50
}
}
}
resource "google_vertex_ai_feature_online_store" "featureonlinestore" {
provider = google-beta
name = "example_feature_online_store_optimized"
labels = {
foo = "bar"
}
region = "us-central1"
optimized {}
dedicated_serving_endpoint {
private_service_connect_config {
enable_private_service_connect = true
project_allowlist = [data.google_project.project.number]
}
}
}
data "google_project" "project" {
provider = google-beta
}
resource "google_vertex_ai_feature_online_store" "featureonlinestore" {
provider = google-beta
name = "example_feature_online_store_beta_bigtable"
labels = {
foo = "bar"
}
region = "us-central1"
bigtable {
auto_scaling {
min_node_count = 1
max_node_count = 2
cpu_utilization_target = 80
}
}
embedding_management {
enabled = true
}
force_destroy = true
}
data "google_project" "project" {
provider = google-beta
}
The following arguments are supported:
name
-
(Required)
The resource name of the Feature Online Store. This value may be up to 60 characters, and valid characters are [a-z0-9_]. The first character cannot be a number.labels
-
(Optional)
The labels with user-defined metadata to organize your feature online stores.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field effective_labels
for all of the labels present on the resource.
bigtable
-
(Optional)
Settings for Cloud Bigtable instance that will be created to serve featureValues for all FeatureViews under this FeatureOnlineStore.
Structure is documented below.
optimized
-
(Optional, Beta)
Settings for the Optimized store that will be created to serve featureValues for all FeatureViews under this FeatureOnlineStore
dedicated_serving_endpoint
-
(Optional, Beta)
The dedicated serving endpoint for this FeatureOnlineStore, which is different from common vertex service endpoint. Only need to set when you choose Optimized storage type or enable EmbeddingManagement. Will use public endpoint by default.
Structure is documented below.
embedding_management
-
(Optional, Beta)
The settings for embedding management in FeatureOnlineStore. Embedding management can only be used with BigTable.
Structure is documented below.
region
-
(Optional)
The region of feature online store. eg us-central1
project
- (Optional) The ID of the project in which the resource belongs.
If it is not provided, the provider project is used.
force_destroy
- (Optional) If set to true, any FeatureViews and Features for this FeatureOnlineStore will also be deleted.
auto_scaling
-
(Required)
Autoscaling config applied to Bigtable Instance.
Structure is documented below.The auto_scaling
block supports:
min_node_count
-
(Required)
The minimum number of nodes to scale down to. Must be greater than or equal to 1.
max_node_count
-
(Required)
The maximum number of nodes to scale up to. Must be greater than or equal to minNodeCount, and less than or equal to 10 times of 'minNodeCount'.
cpu_utilization_target
-
(Optional)
A percentage of the cluster's CPU capacity. Can be from 10% to 80%. When a cluster's CPU utilization exceeds the target that you have set, Bigtable immediately adds nodes to the cluster. When CPU utilization is substantially lower than the target, Bigtable removes nodes. If not set will default to 50%.
The dedicated_serving_endpoint
block supports:
public_endpoint_domain_name
-
(Output)
Domain name to use for this FeatureOnlineStore
service_attachment
-
(Output)
Name of the service attachment resource. Applicable only if private service connect is enabled and after FeatureViewSync is created.
private_service_connect_config
-
(Optional)
Private service connect config.
Structure is documented below.
The private_service_connect_config
block supports:
enable_private_service_connect
-
(Required)
If set to true, customers will use private service connection to send request. Otherwise, the connection will set to public endpoint.
project_allowlist
-
(Optional)
A list of Projects from which the forwarding rule will target the service attachment.
The embedding_management
block supports:
enabled
-
(Optional)
Enable embedding management.In addition to the arguments listed above, the following computed attributes are exported:
id
- an identifier for the resource with format projects/{{project}}/locations/{{region}}/featureOnlineStores/{{name}}
create_time
-
The timestamp of when the feature online store was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
update_time
-
The timestamp of when the feature online store was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
etag
-
Used to perform consistent read-modify-write updates.
state
-
The state of the Feature Online Store. See the possible states in this link.
terraform_labels
-
The combination of labels configured directly on the resource
and default labels configured on the provider.
effective_labels
-
All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Terraform, other clients and services.
This resource provides the following Timeouts configuration options:
create
- Default is 20 minutes.update
- Default is 20 minutes.delete
- Default is 20 minutes.FeatureOnlineStore can be imported using any of these accepted formats:
projects/{{project}}/locations/{{region}}/featureOnlineStores/{{name}}
{{project}}/{{region}}/{{name}}
{{region}}/{{name}}
{{name}}
In Terraform v1.5.0 and later, use an import
block to import FeatureOnlineStore using one of the formats above. For example:
import {
id = "projects/{{project}}/locations/{{region}}/featureOnlineStores/{{name}}"
to = google_vertex_ai_feature_online_store.default
}
When using the terraform import
command, FeatureOnlineStore can be imported using one of the formats above. For example:
$ terraform import google_vertex_ai_feature_online_store.default projects/{{project}}/locations/{{region}}/featureOnlineStores/{{name}}
$ terraform import google_vertex_ai_feature_online_store.default {{project}}/{{region}}/{{name}}
$ terraform import google_vertex_ai_feature_online_store.default {{region}}/{{name}}
$ terraform import google_vertex_ai_feature_online_store.default {{name}}
This resource supports User Project Overrides.