Exporta los valores de las características de todas las entidades de un solo tipo de entidad a una tabla de BigQuery o a un segmento de Cloud Storage. Puedes obtener una instantánea o exportar los valores de las funciones por completo. Una instantánea devuelve un solo valor por cada elemento, mientras que una exportación completa puede devolver varios valores por elemento. No puede seleccionar IDs de entidad concretos ni incluir varios tipos de entidad al exportar valores de características.
Exportar los valores de las funciones es útil para archivar o para realizar análisis ad hoc de sus datos. Por ejemplo, puedes almacenar copias de seguridad periódicas de tu almacén de características para guardar su estado en diferentes momentos. Si necesitas obtener valores de características para crear un conjunto de datos de entrenamiento, usa batch serving.
Comparación de exportaciones completas y de fragmentos
Tanto la opción de instantánea como la de exportación completa te permiten consultar datos especificando una sola marca de tiempo (la hora de inicio o la de finalización) o ambas. En el caso de las capturas, Vertex AI Feature Store (antigua) devuelve el valor de característica más reciente dentro de un intervalo de tiempo determinado. En la salida, la marca de tiempo asociada a cada valor de la función es la marca de tiempo de la instantánea (no la marca de tiempo del valor de la función).
En el caso de las exportaciones completas, Vertex AI Feature Store (antigua) devuelve todos los valores de las características en un intervalo de tiempo determinado. En la salida, la marca de tiempo asociada a cada valor de la función es la marca de tiempo de la función (la marca de tiempo especificada cuando se ingirió el valor de la función).
En la siguiente tabla se resume lo que devuelve Vertex AI Feature Store (antigua) en función de la opción que elijas y de las marcas de tiempo que proporciones.
Opción | Solo hora de inicio (incluida) | Solo hora de finalización (incluida) | Hora de inicio y de finalización (incluidas) |
---|---|---|---|
Captura | Empezando por la hora actual (cuando se recibió la solicitud), devuelve el valor más reciente, retrocediendo hasta la hora de inicio. La marca de tiempo de la captura se establece en la hora actual. |
Empezando por la hora de finalización, devuelve el valor más reciente de cada característica, empezando por el primero. La marca de tiempo de la vista general se establece en la hora de finalización especificada. |
Devuelve el valor más reciente del intervalo de tiempo especificado. La marca de tiempo de la vista general se establece en la hora de finalización especificada. |
Exportación completa | Devuelve todos los valores a partir de la hora de inicio y hasta la hora actual (cuando se envió la solicitud). | Devuelve todos los valores hasta la hora de finalización, retrocediendo hasta el primer valor de cada función. | Devuelve todos los valores del intervalo de tiempo especificado. |
valores nulos
En el caso de las capturas, si el valor de la característica más reciente es nulo en una marca de tiempo determinada, Vertex AI Feature Store (antigua) devuelve el valor de la característica anterior que no sea nulo. Si no hay valores anteriores no nulos, Vertex AI Feature Store (antigua) devuelve un valor nulo.
En el caso de las exportaciones completas, si el valor de una característica es nulo en una marca de tiempo determinada, Vertex AI Feature Store (antigua) devuelve el valor nulo para esa marca de tiempo.
Ejemplos
Por ejemplo, supongamos que tiene los siguientes valores en un almacén de características, donde los valores de Feature_A
y Feature_B
comparten la misma marca de tiempo:
ID de entidad | Marca de tiempo del valor de la característica | Feature_A | Feature_B |
---|---|---|---|
123 | T1 | A_T1 | B_T1 |
123 | T2 | A_T2 | NULL |
123 | T3 | A_T3 | NULL |
123 | T4 | A_T4 | B_T4 |
123 | T5 | NULL | B_T5 |
Captura
En el caso de las capturas, Vertex AI Feature Store (antigua) devuelve los siguientes valores en función de los valores de marca de tiempo proporcionados:
- Si solo se asigna el valor
T3
a la hora de inicio, la instantánea devuelve los siguientes valores:
ID de entidad | Marca de tiempo de la captura | Feature_A | Feature_B |
---|---|---|---|
123 | CURRENT_TIME | A_T4 | B_T5 |
- Si solo se asigna el valor
T3
a la hora end, la instantánea devuelve los siguientes valores:
ID de entidad | Marca de tiempo de la captura | Feature_A | Feature_B |
---|---|---|---|
123 | T3 | A_T3 | B_T1 |
- Si las horas de inicio y fin son
T2
yT3
, la instantánea devuelve los siguientes valores:
ID de entidad | Marca de tiempo de la captura | Feature_A | Feature_B |
---|---|---|---|
123 | T3 | A_T3 | NULL |
Exportación completa
En el caso de las exportaciones completas, Vertex AI Feature Store (antigua) devuelve los siguientes valores en función de los valores de marca de tiempo proporcionados:
- Si solo se define la hora de inicio como
T3
, la exportación completa devuelve los siguientes valores:
ID de entidad | Marca de tiempo del valor de la característica | Feature_A | Feature_B |
---|---|---|---|
123 | T3 | A_T3 | NULL |
123 | T4 | A_T4 | B_T4 |
123 | T5 | NULL | B_T5 |
- Si solo se define la hora de finalización en
T3
, la exportación completa devuelve los siguientes valores:
ID de entidad | Marca de tiempo del valor de la característica | Feature_A | Feature_B |
---|---|---|---|
123 | T1 | A_T1 | B_T1 |
123 | T2 | A_T2 | NULL |
123 | T3 | A_T3 | NULL |
- Si las horas de inicio y finalización se definen como
T2
yT4
, la exportación completa devuelve los siguientes valores:
ID de entidad | Marca de tiempo del valor de la característica | Feature_A | Feature_B |
---|---|---|---|
123 | T2 | A_T2 | NULL |
123 | T3 | A_T3 | NULL |
123 | T4 | A_T4 | B_T4 |
Exportar valores de funciones
Cuando exporta valores de funciones, elige qué funciones quiere consultar y si se trata de una instantánea o de una exportación completa. En las siguientes secciones se muestra un ejemplo de cada opción.
En ambos casos, el destino de salida debe estar en la misma región que el almacén de características de origen. Por ejemplo, si tu almacén de características está en us-central1
, el segmento de Cloud Storage o la tabla de BigQuery de destino también deben estar en us-central1
.
Captura
Exporta los valores de las funciones más recientes de un periodo determinado.
UI web
Utiliza otro método. No puedes exportar valores de funciones desde la Google Cloud consola.
REST
Para exportar valores de funciones, envíe una solicitud POST mediante el método entityTypes.exportFeatureValues.
En el siguiente ejemplo se muestra una tabla de BigQuery, pero también puedes usar un segmento de Cloud Storage. Cada destino de salida puede tener algunos requisitos previos antes de que puedas enviar una solicitud. Por ejemplo, si especifica un nombre de tabla para el campo bigqueryDestination
, debe tener un conjunto de datos. Estos requisitos se documentan en la referencia de la API.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- LOCATION_ID: región en la que se encuentra el almacén de características. Por ejemplo,
us-central1
. - PROJECT_ID: tu ID de proyecto.
- FEATURESTORE_ID: ID del almacén de características.
- ENTITY_TYPE_ID: ID del tipo de entidad.
- START_TIME y END_TIME: (opcional) si solo especifica la hora de inicio, se devuelve el valor más reciente a partir de la hora actual (cuando se envía la solicitud) y hacia atrás hasta la hora de inicio. Si solo especificas la hora de finalización, se devuelve el valor más reciente a partir de la hora de finalización (incluida) y se busca el primer valor. Si especificas una hora de inicio y una hora de finalización, devuelve el valor más reciente dentro del intervalo de tiempo especificado (incluidas las horas de inicio y finalización). Si no especifica ninguno, devuelve los valores más recientes de cada función, empezando por la hora actual y retrocediendo hasta el primer valor.
- DATASET_NAME: nombre del conjunto de datos de BigQuery de destino.
- TABLE_NAME: nombre de la tabla de BigQuery de destino.
- FEATURE_ID: ID de una o varias funciones. Especifica un solo
*
(asterisco) para seleccionar todas las funciones.
Método HTTP y URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID:exportFeatureValues
Cuerpo JSON de la solicitud:
{ "snapshotExport": { "start_time": "START_TIME", "snapshot_time": "END_TIME" }, "destination" : { "bigqueryDestination": { "outputUri": "bq://PROJECT_ID.DATASET_NAME.TABLE_NAME" } }, "featureSelector": { "idMatcher": { "ids": ["FEATURE_ID", ...] } } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
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/v1/projects/PROJECT_ID/locations/LOCATION_ID/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID:exportFeatureValues"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$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/v1/projects/PROJECT_ID/locations/LOCATION_ID/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID:exportFeatureValues" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la siguiente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.ExportFeatureValuesOperationMetadata", "genericMetadata": { "createTime": "2021-12-03T22:55:25.974976Z", "updateTime": "2021-12-03T22:55:25.974976Z" } } }
Java
Antes de probar este ejemplo, sigue las Java instrucciones de configuración de la guía de inicio rápido de Vertex AI con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Java de Vertex AI.
Para autenticarte en Vertex AI, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Node.js
Antes de probar este ejemplo, sigue las Node.js instrucciones de configuración de la guía de inicio rápido de Vertex AI con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Node.js de Vertex AI.
Para autenticarte en Vertex AI, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Idiomas adicionales
Para saber cómo instalar y usar el SDK de Vertex AI para Python, consulta el artículo Usar el SDK de Vertex AI para Python. Para obtener más información, consulta la documentación de referencia de la API del SDK de Vertex AI para Python.
Exportación completa
Exporta todos los valores de las funciones en un intervalo de tiempo determinado.
UI web
Utiliza otro método. No puedes exportar valores de funciones desde la Google Cloud consola.
REST
Para exportar valores de funciones, envíe una solicitud POST mediante el método entityTypes.exportFeatureValues.
En el siguiente ejemplo se muestra una tabla de BigQuery, pero también puedes usar un segmento de Cloud Storage. Cada destino de salida puede tener algunos requisitos previos antes de que puedas enviar una solicitud. Por ejemplo, si especifica un nombre de tabla para el campo bigqueryDestination
, debe tener un conjunto de datos. Estos requisitos se documentan en la referencia de la API.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- LOCATION_ID: región en la que se encuentra el almacén de características. Por ejemplo,
us-central1
. - PROJECT_ID: .
- FEATURESTORE_ID: ID del almacén de características.
- ENTITY_TYPE_ID: ID del tipo de entidad.
- START_TIME y END_TIME: (opcional) Si solo especifica la hora de inicio, se devuelven todos los valores entre la hora actual (cuando se envía la solicitud) y la hora de inicio (incluida). Si solo especifica la hora de finalización, se devuelven todos los valores entre la hora de finalización (inclusive) y la primera marca de tiempo de valor (de cada característica). Si especificas una hora de inicio y una hora de finalización, se devuelven todos los valores dentro del intervalo de tiempo especificado (incluidas las horas de inicio y finalización). Si no especifica ninguno, se devuelven todos los valores entre la hora actual y la marca de tiempo del primer valor (de cada función).
- DATASET_NAME: nombre del conjunto de datos de BigQuery de destino.
- TABLE_NAME: nombre de la tabla de BigQuery de destino.
- FEATURE_ID: ID de una o varias funciones. Especifica un solo
*
(asterisco) para seleccionar todas las funciones.
Método HTTP y URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION_ID/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID:exportFeatureValues
Cuerpo JSON de la solicitud:
{ "fullExport": { "start_time": "START_TIME", "end_time": "END_TIME" }, "destination" : { "bigqueryDestination": { "outputUri": "bq://PROJECT.DATASET_NAME.TABLE_NAME" } }, "featureSelector": { "idMatcher": { "ids": ["FEATURE_ID", ...] } } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
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/v1/projects/PROJECT/locations/LOCATION_ID/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID:exportFeatureValues"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$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/v1/projects/PROJECT/locations/LOCATION_ID/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID:exportFeatureValues" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la siguiente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featurestores/FEATURESTORE_ID/entityTypes/ENTITY_TYPE_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.ExportFeatureValuesOperationMetadata", "genericMetadata": { "createTime": "2021-12-03T22:55:25.974976Z", "updateTime": "2021-12-03T22:55:25.974976Z" } } }
Java
Antes de probar este ejemplo, sigue las Java instrucciones de configuración de la guía de inicio rápido de Vertex AI con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Java de Vertex AI.
Para autenticarte en Vertex AI, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Node.js
Antes de probar este ejemplo, sigue las Node.js instrucciones de configuración de la guía de inicio rápido de Vertex AI con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Node.js de Vertex AI.
Para autenticarte en Vertex AI, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Idiomas adicionales
Para saber cómo instalar y usar el SDK de Vertex AI para Python, consulta el artículo Usar el SDK de Vertex AI para Python. Para obtener más información, consulta la documentación de referencia de la API del SDK de Vertex AI para Python.
Siguientes pasos
- Consulta cómo ingestar valores de características por lotes.
- Consulta cómo servir funciones mediante servicios online.
- Consulta la cuota de trabajos por lotes simultáneos de Vertex AI Feature Store (antigua).
- Soluciona problemas habituales de Vertex AI Feature Store (antigua).