Se a loja on-line usa a exibição on-line do Bigtable, é possível atualizar diretamente os valores de atributos em uma visualização de atributos sem atualizar a fonte de dados de atributos em tempo real. É possível atualizar os valores de atributos de um ID existente ou adicionar um novo ID de entidade com os valores de atributos correspondentes. Use esse recurso nos seguintes cenários:
Você quer gravar recursos em um armazenamento on-line mais rápido do que a sincronização em lote, mantendo a atualização dos dados em 100 ms ou menos.
Você quer recuperar o carimbo de data/hora em que o recurso é gravado no armazenamento on-line.
O Feature Store da Vertex AI não atualiza a fonte de dados de atributos no BigQuery com base nos dados de atributos gravados diretamente em uma instância de visualização de atributos. Durante a sincronização de dados, o Feature Store da Vertex AI atualiza a visualização de recurso com o valor de recurso que tem o carimbo de data/hora mais recente. Por exemplo, se você atualizar um valor de atributo diretamente em uma visualização de recurso e, em seguida, atualizar o mesmo atributo na fonte do BigQuery, o Vertex AI Feature Store vai atualizar a visualização de recurso com o valor de atributo atualizado mais recentemente do BigQuery durante a próxima sincronização de dados.
Se você quiser adicionar ou atualizar valores de recursos para uma coluna de recursos usada em várias visualizações de recursos, faça as mesmas atualizações em cada visualização de recursos separadamente.
Se uma instância de loja on-line estiver configurada para veiculação on-line otimizada, não será possível gravar recursos diretamente em uma visualização de recursos nessa loja.
Essa capacidade não permite adicionar ou remover colunas de recursos em uma visualização de recursos. Além disso, não é possível excluir valores de atributos ou IDs de entidades.
Antes de começar
Faça a autenticação na Vertex AI, a menos que já tenha feito isso.
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Instale a CLI do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando:
gcloud init
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud .
Atualizar recursos diretamente em uma visualização de recursos
Use o exemplo a seguir para gravar recursos em uma entidade em uma visualização de recursos.
REST
Para gravar valores de recursos diretamente em uma instância
FeatureView
, envie uma solicitação POST
usando o método
featureViews.directWrite
.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- LOCATION_ID: região da visualização de recurso em que você quer gravar os recursos, como
us-central1
. - PROJECT_ID: o ID do projeto.
- FEATUREONLINESTORE_NAME: o nome da instância da loja on-line que contém a visualização do recurso.
- FEATUREVIEW_NAME: o nome da nova instância de visualização de recurso em que você quer gravar os recursos.
- ENTITY_ID: o ID da entidade a que você quer adicionar valores de atributo.
- FEATURE_1 e FEATURE_2: os recursos que você quer adicionar.
- FEATURE_1_VALUE e FEATURE_2_VALUE: os valores de atributo para FEATURE_1 e FEATURE_2, respectivamente.
Método HTTP e URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:directWrite
Corpo JSON da solicitação:
[ { "feature_view": "LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME", "data_key_and_feature_values": { "data_key": { "key": "ENTITY_ID" }, "features": [{ "name": "FEATURE_1", "value_and_timestamp": { "value": { "string_value": "FEATURE_1_VALUE" } } }, { "name": "FEATURE_2", "value_and_timestamp": { "value": { "string_value": "FEATURE_2_VALUE" } } } ] } } ]
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando abaixo:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:directWrite"
PowerShell
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION_ID-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/featureViews/FEATUREVIEW_NAME:directWrite" | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a esta:
{ "status": {}, "writeResponses": [ { "dataKey": { "key": "ENTITY_ID" }, "onlineStoreWriteTime": "2025-04-01T01:30:09.525061Z" } ] }
A seguir
Saiba como iniciar uma sincronização de dados manualmente.
Saiba como atualizar uma visualização de recurso.