Crear una instancia de tienda online

Para configurar el servicio online, primero debe crear una instancia de tienda online para el servicio online de Bigtable o el servicio online optimizado. Para entender las diferencias entre la entrega online de Bigtable y la entrega online optimizada, consulta Tipos de entrega online.

Ten en cuenta que no puedes cambiar el tipo de servicio online después de elegir Servicio online de Bigtable o Servicio online optimizado al crear tu tienda online. Sin embargo, puede cambiar la configuración del endpoint de publicación de una instancia de tienda online creada para la publicación online optimizada.

Una vez que haya creado la tienda online, podrá añadir vistas de características y asociarlas a fuentes de datos de características en BigQuery.

Puedes cifrar tu instancia de tienda online especificando una clave de cifrado gestionada por el cliente (CMEK) al crearla. Solo la entrega online de Bigtable admite el cifrado con una CMEK. Para obtener más información sobre las ventajas de usar una clave de cifrado gestionada por el cliente y saber si te conviene usarla en tu tienda online, consulta el artículo Ventajas de las claves de cifrado gestionadas por el cliente.

El uso de una CMEK puede conllevar costes de uso adicionales, en función del tipo de clave que se utilice. Para obtener más información sobre los precios, consulta la página Precios de Cloud Key Management Service.

Antes de empezar

Autentícate en Vertex AI, a menos que ya lo hayas hecho.

Select the tab for how you plan to use the samples on this page:

Console

When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

Python

Para usar las Python muestras de esta página en un entorno de desarrollo local, instala e inicializa la CLI de gcloud y, a continuación, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.

    Instala Google Cloud CLI.

    Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

    If you're using a local shell, then create local authentication credentials for your user account:

    gcloud auth application-default login

    You don't need to do this if you're using Cloud Shell.

    If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.

Para obtener más información, consulta Set up authentication for a local development environment.

REST

Para usar las muestras de la API REST de esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la CLI de gcloud.

    Instala Google Cloud CLI.

    Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre autenticación de Google Cloud .

Crear una tienda online para la entrega online de Bigtable

Cuando usas el servicio online de Bigtable, tienes la opción de cifrar el almacenamiento online con una CMEK.

Crear una tienda online para el servicio online de Bigtable sin CMEK

Para crear una instancia de tienda online para el servicio online de Bigtable con autoescalado sin especificar una CMEK, usa la consola Google Cloud o la API REST.

Consola

Sigue estas instrucciones para crear una tienda online para el servicio online de Bigtable mediante la Google Cloud consola.

  1. En la sección Vertex AI de la Google Cloud consola, ve a la página Feature Store.

    Ir a la página Feature Store

  2. Haga clic en Tienda online para ir a la sección Tienda online.

  3. Haz clic en Crear para abrir la página Crear tienda online.

  4. Especifica un nombre para la tienda online.

  5. Opcional: Para añadir etiquetas, haz clic en Añadir etiqueta y especifica el nombre y el valor de la etiqueta. Puede añadir varias etiquetas a una tienda online.

  6. En el campo Elige una solución de almacenamiento para tu tienda online, haz clic en Bigtable.

  7. Modifica los valores de Número mínimo de nodos, Número máximo de nodos y Objetivo de utilización de la CPU según sea necesario.

  8. Haz clic en Crear.

Python

Para saber cómo instalar o actualizar el SDK de Vertex AI para Python, consulta Instalar el SDK de Vertex AI para Python. Para obtener más información, consulta la documentación de referencia de la API Python.


from google.cloud import aiplatform
from vertexai.resources.preview import feature_store


def create_bigtable_feature_online_store_sample(
    project: str,
    location: str,
    feature_online_store_id: str,
):
    aiplatform.init(project=project, location=location)
    fos = feature_store.FeatureOnlineStore.create_bigtable_store(
        feature_online_store_id
    )
    return fos

  • project: tu ID de proyecto.
  • location: región en la que se encuentra la tienda online, como us-central1.
  • feature_online_store_id: el nombre de la nueva instancia de FeatureOnlineStore.

REST

Para crear un recurso FeatureOnlineStore, envía una solicitud POST mediante el método featureOnlineStores.create.

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • LOCATION_ID: región en la que quieres crear la tienda online, como us-central1.
  • PROJECT_ID: tu ID de proyecto.
  • FEATUREONLINESTORE_NAME: nombre de la nueva instancia de tienda online.
  • BOOLEAN: Opcional: para crear una tienda online que admita la gestión de inserciones, introduce true. El valor predeterminado es false.

Método HTTP y URL:

POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME

Cuerpo JSON de la solicitud:

{
  "bigtable": {
    "auto_scaling": {
      "min_node_count": 1,
      "max_node_count": 3,
      "cpu_utilization_target": 50
    }
  }
}

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/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME"

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/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la siguiente:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureOnlineStoreOperationMetadata",
    "genericMetadata": {
      "createTime": "2023-09-18T17:49:23.847496Z",
      "updateTime": "2023-09-18T17:49:23.847496Z"
    }
  }
}

Crear una tienda online que use una CMEK

Sigue estos pasos para crear una instancia de tienda online para el servicio online de Bigtable cifrada con una CMEK.

El uso del cifrado con CMEK puede conllevar costes de uso adicionales, en función del tipo de clave que se utilice. Para obtener más información sobre los precios, consulta la página Precios de Cloud Key Management Service.

  1. Usa Cloud Key Management Service para configurar una clave de cifrado gestionada por el cliente.

  2. Para crear un recurso FeatureOnlineStore, envía la siguiente solicitud POST mediante el método featureOnlineStores.create y especifica la CMEK.

    Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

    • LOCATION_ID: región en la que quieres crear la tienda online, como us-central1.
    • PROJECT_ID: tu ID de proyecto.
    • FEATUREONLINESTORE_NAME: nombre de la nueva instancia de tienda online.
    • BOOLEAN: Opcional: para crear una tienda online que admita la gestión de inserciones, introduce true. El valor predeterminado es false.
    • KEY_NAME: nombre de la clave de cifrado que quieres usar en este almacén de metadatos.

    Método HTTP y URL:

    POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME

    Cuerpo JSON de la solicitud:

    {
      "bigtable": {
        "auto_scaling": {
          "min_node_count": 1,
          "max_node_count": 3,
          "cpu_utilization_target": 50
        }
      },
      "encryption_spec": {
        "kms_key_name": "KEY_NAME"
      }
    }
    

    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/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME"

    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/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME" | Select-Object -Expand Content

    Deberías recibir una respuesta JSON similar a la siguiente:

    {
      "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/operations/OPERATION_ID",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureOnlineStoreOperationMetadata",
        "genericMetadata": {
          "createTime": "2023-09-18T17:49:23.847496Z",
          "updateTime": "2023-09-18T17:49:23.847496Z"
        }
      }
    }
    

Crear una tienda online para la entrega online optimizada

Si usas el servicio online optimizado, puedes configurar la tienda online para que sirva funciones desde un endpoint público o desde un endpoint de Private Service Connect específico. Usa un punto final de Private Service Connect si quieres ofrecer funciones en una red de VPC con latencias más bajas que las de un punto final público.

Crear una tienda online para la entrega online optimizada con un endpoint público

Usa los siguientes ejemplos para crear una tienda online para la publicación online optimizada con un endpoint público.

Consola

Sigue estas instrucciones para crear una tienda online para el servicio online optimizado con la consola Google Cloud .

  1. En la sección Vertex AI de la Google Cloud consola, ve a la página Feature Store.

    Ir a la página Feature Store

  2. Haga clic en Tienda online para ir a la sección Tienda online.

  3. Haz clic en Crear para abrir la página Crear tienda online.

  4. Especifica un nombre para la tienda online.

  5. Opcional: Para añadir etiquetas, haz clic en Añadir etiqueta y especifica el nombre y el valor de la etiqueta. Puede añadir varias etiquetas a una tienda online.

  6. En el campo Elige una solución de almacenamiento para tu tienda online, haz clic en Optimizado.

  7. Haz clic en Crear.

Python

Para saber cómo instalar o actualizar el SDK de Vertex AI para Python, consulta Instalar el SDK de Vertex AI para Python. Para obtener más información, consulta la documentación de referencia de la API Python.


from google.cloud import aiplatform
from vertexai.resources.preview import feature_store


def create_optimized_public_feature_online_store_sample(
    project: str,
    location: str,
    feature_online_store_id: str,
):
    aiplatform.init(project=project, location=location)
    fos = feature_store.FeatureOnlineStore.create_optimized_store(
        feature_online_store_id
    )
    return fos

  • project: tu ID de proyecto.
  • location: región en la que quieres crear la instancia de FeatureOnlineStore, como us-central1.
  • feature_online_store_id: el nombre de la nueva instancia de FeatureOnlineStore.

REST

Para crear una instancia de tienda online, envíe una solicitud POST mediante el método featureOnlineStores.create.

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • LOCATION_ID: región en la que quieres crear la instancia de FeatureOnlineStore, como us-central1.
  • PROJECT_ID: tu ID de proyecto.
  • FEATUREONLINESTORE_NAME: el nombre de la nueva instancia de FeatureOnlineStore.

Método HTTP y URL:

POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME

Cuerpo JSON de la solicitud:

{
  "optimized": {}
}

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/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME"

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/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la siguiente:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureOnlineStoreOperationMetadata",
    "genericMetadata": {
      "createTime": "2023-09-18T17:49:23.847496Z",
      "updateTime": "2023-09-18T17:49:23.847496Z"
    }
  }
}

Crear una tienda online para el servicio online optimizado con un endpoint de Private Service Connect

Usa los siguientes ejemplos para crear una tienda online para el servicio online optimizado con Private Service Connect.

Python

Para saber cómo instalar o actualizar el SDK de Vertex AI para Python, consulta Instalar el SDK de Vertex AI para Python. Para obtener más información, consulta la documentación de referencia de la API Python.


from typing import List

from google.cloud import aiplatform
from vertexai.resources.preview import feature_store


def create_optimized_private_feature_online_store_sample(
    project: str,
    location: str,
    feature_online_store_id: str,
    project_allowlist: List[str],
):
    aiplatform.init(project=project, location=location)
    fos = feature_store.FeatureOnlineStore.create_optimized_store(
        name=feature_online_store_id,
        enable_private_service_connect=True,
        project_allowlist=project_allowlist,
    )
    return fos

  • project: tu ID de proyecto.
  • location: región en la que quieres crear la instancia de FeatureOnlineStore, como us-central1.
  • feature_online_store_id: el nombre de la nueva instancia de FeatureOnlineStore.
  • project_allowlist: la lista de nombres de proyectos que se incluirán en la lista de permitidos para Private Service Connect (PSC).

REST

Para crear una instancia de tienda online, envíe una solicitud POST mediante el método featureOnlineStores.create.

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • LOCATION_ID: región en la que quieres crear la instancia de FeatureOnlineStore, como us-central1.
  • PROJECT_ID: tu ID de proyecto.
  • FEATUREONLINESTORE_NAME: el nombre de la nueva instancia de FeatureOnlineStore.
  • PROJECT_NAMES: la lista de nombres de proyectos que se incluirán en la lista de permitidos para Private Service Connect (PSC).

Método HTTP y URL:

POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME

Cuerpo JSON de la solicitud:

{
  "optimized": {},
  "dedicated_serving_endpoint": {
    "private_service_connect_config": {
      "enable_private_service_connect": true,
      "project_allowlist": ["PROJECT_NAMES"]
    }
  }
}

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/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME"

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/featureOnlineStores?feature_online_store_id=FEATUREONLINESTORE_NAME" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la siguiente:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/featureOnlineStores/FEATUREONLINESTORE_NAME/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateFeatureOnlineStoreOperationMetadata",
    "genericMetadata": {
      "createTime": "2023-09-18T17:49:23.847496Z",
      "updateTime": "2023-09-18T17:49:23.847496Z"
    }
  }
}

Siguientes pasos