Crea y configura perfiles de app

En esta página, se explica cómo crear y administrar los perfiles de aplicación, o perfiles de app, de una instancia de Bigtable. Además, se muestra cómo usar un perfil de la app personalizado para conectarse con Bigtable.

Antes de leer esta página, debes comprender qué son los perfiles de app y cómo funcionan. En particular, asegúrate de comprender la diferencia entre un perfil de app estándar (un perfil de app configurado para usar la computación estándar) y un perfil de app de Data Boost (un perfil de app que usa la computación sin servidores de Data Boost para ejecutar trabajos de lectura de alta capacidad de procesamiento). Para obtener más información sobre Data Boost y en qué se diferencia del procesamiento con nodos de clúster aprovisionados, consulta la descripción general de Data Boost.

Si usas perfiles de app estándar para configurar la replicación, debes estar familiarizado con la descripción general de la replicación de Bigtable y debes revisar los ejemplos de configuración de la replicación, a fin de decidir qué configuración es la más adecuada para tu caso de uso.

Roles obligatorios

Para obtener los permisos que necesitas para crear, configurar o borrar un perfil de app, pídele a tu administrador que te otorgue el rol de IAM Administrador de Bigtable (roles/bigtable.admin) en la instancia. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.

Crea un perfil de aplicación

Puedes crear muchos perfiles de app personalizados para cada instancia. Úsalos para controlar la manera en que las aplicaciones o las funciones de estas interactúan con una instancia. Por ejemplo, puedes usar un perfil de app en una aplicación por lote para separar su tráfico en un solo clúster, y otro para proporcionar una alta disponibilidad a otra aplicación.

Crea un perfil de app estándar

Para crear un perfil de app estándar, sigue estos pasos:

Console

  1. Abre la lista de instancias de Bigtable en la consola de Google Cloud.

    Abrir la lista de instancias

  2. Haz clic en la instancia en la que deseas crear el perfil de la app.

  3. En el panel izquierdo, haz clic en Perfiles de aplicación.

  4. Haz clic en Crear perfil de aplicación.

  5. Selecciona Estándar.

  6. Haz clic en Siguiente.

  7. Ingresa el ID de perfil de aplicación.

    El ID de perfil de la aplicación es un identificador permanente para el perfil de la app. Tu aplicación proporciona este ID cuando se conecta a Bigtable.

  8. Ingresa una descripción del perfil de la app.

  9. En Enrutamiento del clúster, selecciona el enrutamiento de un solo clúster o de varios clústeres. Obtenga más información.

  10. Si eliges Un solo clúster, sigue estos pasos:

    1. Usa el menú desplegable para seleccionar el clúster al que se enrutarán las solicitudes.

    2. Si necesitas habilitar las transacciones de fila única, selecciona la casilla de verificación Permitir transacciones de fila única.

  11. Si eliges Varios clústeres:

    1. Para enrutar solicitudes a cualquier clúster de la instancia, selecciona Cualquier clúster en el menú desplegable Grupo de clústeres.
    2. Para limitar el enrutamiento de solicitudes a solo algunos clústeres de la instancia (enrutamiento de grupo de clústeres), selecciona la casilla de verificación de cada clúster que desees incluir en el grupo de enrutamiento y, luego, haz clic en Aceptar.
  12. Haz clic en Crear para crear el perfil de la app.

  13. Actualiza el código de tu aplicación para conectarte a Bigtable a fin de usar el nuevo perfil de la aplicación.

gcloud

  1. Si no conoces el ID de la instancia, usa el comando bigtable instances list para ver una lista de las instancias de tu proyecto:

    gcloud bigtable instances list
    
  2. Usa el comando bigtable app-profiles create para crear un perfil de app:

    gcloud bigtable app-profiles create APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        [--description=DESCRIPTION] \
        [--force] \
        [--route-any] \
        [--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...]
        [--route-to=CLUSTER_ID] \
        [--transactional-writes] \
        [--priority=PRIORITY]
    

    Proporcione lo siguiente:

    • APP_PROFILE_ID: Es el identificador permanente del perfil de la app.
    • INSTANCE_ID: Es el identificador permanente de la instancia.

    El comando acepta las siguientes marcas opcionales:

    • --description=DESCRIPTION: Una descripción detallada del perfil de la app.
    • --force: Ignora las advertencias sobre posibles problemas y conflictos con otros perfiles de app.
    • --route-any: Habilita el enrutamiento de varios clústeres para enrutar las solicitudes a cualquier clúster disponible.

      No puedes combinar esta marca con las marcas --route-to o --transactional-writes.

    • --restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...: Es una lista de clústeres a los que se deben enrutar las solicitudes. Usa esta opción si deseas enrutar solicitudes solo a algunos de los clústeres de la instancia.

      No puedes combinar esta marca con las marcas --route-to o --transactional-writes.

    • --route-to=CLUSTER_ID: El ID del clúster al que se deben enrutar todas las solicitudes. Esta marca habilita el enrutamiento de un solo clúster.

      No puedes combinar esta marca con la marca --route-any.

    • --transactional-writes: Habilita las transacciones de fila única en el perfil de la app.

      No puedes combinar esta marca con las marcas --route-any o --restrict-to.

    • --priority=PRIORITY: Es el nivel de prioridad que debe usar el perfil de la app. Los valores aceptados son PRIORITY_HIGH, PRIORITY_MEDIUM o PRIORITY_LOW.

  3. Actualiza el código de tu aplicación para conectarte a Bigtable a fin de usar el nuevo perfil de la aplicación.

Crea un perfil de app de Data Boost

Para crear un perfil de app de Data Boost (un perfil de app que usa la computación sin servidores de Data Boost), sigue estos pasos. Para asegurarte de que tu carga de trabajo sea compatible con Data Boost, revisa las limitaciones.

Console

  1. Abre la lista de instancias de Bigtable en la consola de Google Cloud.

    Abrir la lista de instancias

  2. Haz clic en la instancia en la que deseas crear el perfil de la app.

  3. En el panel izquierdo, haz clic en Perfiles de aplicación.

  4. Haz clic en Crear perfil de aplicación.

  5. Selecciona Data Boost.

  6. Haz clic en Siguiente.

  7. Ingresa el ID de perfil de aplicación.

    El ID de perfil de la aplicación es un identificador permanente para el perfil de la app. Tu aplicación proporciona este ID cuando se conecta a Bigtable.

  8. Ingresa una descripción del perfil de la app.

  9. En Enrutamiento de clúster, selecciona el clúster al que se enrutarán las solicitudes.

  10. Haz clic en Crear perfil de app para crear el perfil de la app.

  11. Actualiza el código de tu aplicación para conectarte a Bigtable a fin de usar el nuevo perfil de la aplicación.

gcloud

  1. Si no conoces el ID de la instancia, usa el comando bigtable instances list para ver una lista de las instancias de tu proyecto:

    gcloud bigtable instances list
    
  2. Usa el comando gcloud beta bigtable app-profiles create para crear un perfil de app:

    gcloud bigtable app-profiles create APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        --data-boost \
        --data-boost-compute-billing-owner=HOST_PAYS \
        --route-to=CLUSTER_ID
    

    Proporcione lo siguiente:

    • APP_PROFILE_ID: Es el identificador permanente del perfil de la app.
    • INSTANCE_ID: Es el identificador permanente de la instancia.
    • CLUSTER_ID: El ID del clúster al que se deben enrutar todas las solicitudes. Esta marca habilita el enrutamiento de un solo clúster.

Conéctate con un perfil de app personalizado

Después de crear un perfil de app personalizado, puedes actualizar tu código para que la aplicación use este perfil cuando se conecte a Bigtable.

En los siguientes ejemplos se muestra cómo especificar un perfil de la app cuando tu app crea un cliente de Bigtable y se conecta a una instancia. Reemplaza [APP_PROFILE_ID] con el valor apropiado.

C#

var client = BigtableClient.Create(appProfileId: "[APP_PROFILE_ID]");

Comienza a usarlo

clientConf := bigtable.ClientConfig{AppProfile:"[APP_PROFILE_ID]"}
client, err = bigtable.NewClientWithConfig(ctx, project, instance, clientConf)

Java de HBase

// If using BigtableOptions directly:
optionsBuilder.setAppProfileId("[APP_PROFILE_ID]");

// If using BigtableOptionsFactory:
configuration.set(BigtableOptionsFactory.APP_PROFILE_ID_KEY, "[APP_PROFILE_ID]");

// If using system properties, set "google.bigtable.app_profile.id" to
// "[APP_PROFILE_ID]"

// If using CloudBigtableIO for Cloud Dataflow:
config.withConfiguration(BigtableOptionsFactory.APP_PROFILE_ID_KEY,
                         "[APP_PROFILE_ID]");

Node.js

const bigtable = new Bigtable({appProfileId: '[APP_PROFILE_ID]'});

Python

from google.cloud import bigtable

client = bigtable.Client(project=project_id)
instance = client.instance(instance_id)
table = bigtable.table.Table(table_id, instance, '[APP_PROFILE_ID]')

Actualiza un perfil de aplicación

Puedes ver los perfiles de app de una instancia y actualizar su configuración en cualquier momento. Bigtable te advierte sobre cualquier actualización que pueda causar cambios de comportamiento inesperados.

Para obtener información sobre cómo actualizar un perfil de app de estándar a Data Boost o de Data Boost a estándar, consulta Cómo convertir un perfil de app.

Actualiza un perfil de app estándar

Para actualizar un perfil de app estándar, sigue estos pasos:

Console

  1. Abre la lista de instancias de Bigtable en la consola de Google Cloud.

    Abrir la lista de instancias

  2. En la columna Perfiles de la aplicación, haz clic en el perfil de la app que deseas ver o actualizar.

    Si no ves el perfil de la app que deseas editar, puedes ver la lista completa si haces clic en el nombre de la instancia y, luego, en Perfiles de la aplicación en el panel izquierdo.

  3. Actualiza la configuración según sea necesario, luego haz clic en Guardar, o puedes hacer clic en Cancelar para salir sin guardar.

gcloud

  1. Si no conoces el ID de la instancia, usa el comando bigtable instances list para ver una lista de las instancias de tu proyecto:

    gcloud bigtable instances list
    
  2. Si no conoces el ID del perfil de app, usa el comando bigtable app-profiles list para ver una lista de los perfiles de app de la instancia:

    gcloud bigtable app-profiles list --instance=INSTANCE_ID
    

    Reemplaza INSTANCE_ID con el identificador permanente de la instancia.

  3. (Opcional) Usa el comando bigtable app-profiles describe para ver la configuración del perfil de la app:

    gcloud bigtable app-profiles describe APP_PROFILE_ID \
        --instance=INSTANCE_ID
    

    Proporcione lo siguiente:

    • APP_PROFILE_ID: Es el identificador permanente del perfil de la app.
    • INSTANCE_ID: Es el identificador permanente de la instancia.
  4. Usa el comando bigtable app-profiles update para actualizar la configuración del perfil de la app:

    gcloud bigtable app-profiles update APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        [--description=DESCRIPTION] \
        [--force] \
        [--route-any] \
        [--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...]
        [--route-to=CLUSTER_ID] \
        [--transactional-writes]
    

    Proporcione lo siguiente:

    • APP_PROFILE_ID: Es el identificador permanente del perfil de la app.
    • INSTANCE_ID: Es el identificador permanente de la instancia.

    El comando acepta las siguientes marcas opcionales:

    • --description=DESCRIPTION: Una descripción detallada del perfil de la app.
    • --force: Ignora las advertencias sobre posibles problemas y conflictos con otros perfiles de app.
    • --route-any: Habilita el enrutamiento de varios clústeres para enrutar las solicitudes a cualquier clúster disponible.

      No puedes combinar esta marca con las marcas --route-to o --transactional-writes.

    • --restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...: Es una lista de clústeres a los que se deben enrutar las solicitudes. Usa esta opción si deseas enrutar solicitudes solo a algunos de los clústeres de la instancia.

      No puedes combinar esta marca con las marcas --route-to o --transactional-writes.

    • --route-to=CLUSTER_ID: El ID del clúster al que se deben enrutar todas las solicitudes. Esta marca habilita el enrutamiento de un solo clúster.

      No puedes combinar esta marca con la marca --route-any.

    • --transactional-writes: Habilita las transacciones de fila única en el perfil de la app.

      No puedes combinar esta marca con la marca --route-any.

    • --priority=PRIORITY: Es el nivel de prioridad que usa el perfil de la app. Los valores aceptados son PRIORITY_HIGH, PRIORITY_MEDIUM o PRIORITY_LOW.

Actualiza un perfil de app de Data Boost

Para actualizar el clúster del que lee un perfil de app de Data Boost, sigue estos pasos:

Console

  1. Abre la lista de instancias de Bigtable en la consola de Google Cloud.

    Abrir la lista de instancias

  2. En la columna Perfiles de la aplicación, haz clic en el perfil de la app que deseas ver o actualizar.

    Si no ves el perfil de la app que deseas editar, puedes ver la lista completa si haces clic en el nombre de la instancia y, luego, en Perfiles de aplicación en el panel izquierdo.

  3. Selecciona el nuevo clúster al que se debe enrutar el tráfico y, luego, haz clic en Guardar.

gcloud

  1. Si no conoces el ID de la instancia, usa el comando bigtable instances list para ver una lista de las instancias de tu proyecto:

    gcloud bigtable instances list
    
  2. Si no conoces el ID del perfil de app, usa el comando bigtable app-profiles list para ver una lista de los perfiles de app de la instancia:

    gcloud bigtable app-profiles list --instance=INSTANCE_ID
    

    Reemplaza INSTANCE_ID con el identificador permanente de la instancia.

  3. (Opcional) Usa el comando bigtable app-profiles describe para ver la configuración del perfil de la app:

    gcloud bigtable app-profiles describe APP_PROFILE_ID \
        --instance=INSTANCE_ID
    

    Proporcione lo siguiente:

    • APP_PROFILE_ID: Es el identificador permanente del perfil de la app.
    • INSTANCE_ID: Es el identificador permanente de la instancia.
  4. Usa el comando gcloud beta bigtable app-profiles update para actualizar la configuración del perfil de la app:

    gcloud beta bigtable app-profiles update APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        --route-to=CLUSTER_ID
    

    Proporcione lo siguiente:

    • APP_PROFILE_ID: Es el identificador permanente del perfil de la app.
    • INSTANCE_ID: Es el identificador permanente de la instancia.
    • CLUSTER_ID: Es el ID del clúster nuevo del que se leerá.

Cómo convertir un perfil de app

Puedes convertir un perfil de app estándar en un perfil de app de Data Boost o viceversa. Antes de convertir un perfil de app, revisa la guía en Cambios en el perfil de app.

Cómo cambiar de la versión estándar a Data Boost

Antes de actualizar un perfil de app de estándar (nodos aprovisionados para el procesamiento) a la computación sin servidores de Data Boost, verifica las métricas de elegibilidad de Data Boost. También debes tener en cuenta las limitaciones de Data Boost.

Console

  1. Abre la lista de instancias de Bigtable en la consola de Google Cloud.

    Abrir la lista de instancias

  2. En la columna Perfiles de aplicación, haz clic en el perfil de la app que deseas actualizar.

    Si no ves el perfil de la app que deseas editar, puedes ver la lista completa si haces clic en el nombre de la instancia y, luego, en Perfiles de la aplicación en el panel izquierdo.

  3. Selecciona Data Boost.

  4. Selecciona el clúster al que se deben enrutar las solicitudes.

  5. Haz clic en Guardar.

gcloud

  1. Si no conoces el ID de la instancia, usa el comando bigtable instances list para ver una lista de las instancias de tu proyecto:

    gcloud bigtable instances list
    
  2. Si no conoces el ID del perfil de app, usa el comando bigtable app-profiles list para ver una lista de los perfiles de app de la instancia:

    gcloud bigtable app-profiles list --instance=INSTANCE_ID
    

    Reemplaza INSTANCE_ID con el identificador permanente de la instancia.

  3. (Opcional) Usa el comando bigtable app-profiles describe para ver la configuración del perfil de la app:

    gcloud bigtable app-profiles describe APP_PROFILE_ID \
        --instance=INSTANCE_ID
    

    Proporcione lo siguiente:

    • APP_PROFILE_ID: Es el identificador permanente del perfil de la app.
    • INSTANCE_ID: Es el identificador permanente de la instancia.
  4. Usa el comando gcloud beta bigtable app-profiles update para convertir un perfil de app de estándar a Data Boost:

    gcloud bigtable app-profiles update APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        --data-boost \
        --data-boost-compute-billing-owner=HOST_PAYS \
        --route-to=CLUSTER_ID
    

    Proporcione lo siguiente:

    • APP_PROFILE_ID: Es el identificador permanente del perfil de la app.
    • INSTANCE_ID: Es el identificador permanente de la instancia.
    • CLUSTER_ID: El ID del clúster al que se deben enrutar todas las solicitudes. Esta marca habilita el enrutamiento de un solo clúster.

Cómo cambiar de Data Boost a la versión estándar

Para cambiar un perfil de app de usar Data Boost (computación sin servidores) a uno estándar (nodos aprovisionados para procesamiento), sigue estos pasos:

Console

  1. Abre la lista de instancias de Bigtable en la consola de Google Cloud.

    Abrir la lista de instancias

  2. En la columna Perfiles de aplicación, haz clic en el perfil de la app que deseas actualizar.

    Si no ves el perfil de la app que deseas editar, puedes ver la lista completa si haces clic en el nombre de la instancia y, luego, en Perfiles de la aplicación en el panel izquierdo.

  3. Selecciona Estándar.

  4. Haz clic en Siguiente.

  5. Opcional: Edita la descripción del perfil de la app.

  6. En Enrutamiento del clúster, selecciona el enrutamiento de un solo clúster o de varios clústeres. Obtenga más información.

  7. Si eliges Un solo clúster, sigue estos pasos:

    1. Usa el menú desplegable para seleccionar el clúster al que se enrutarán las solicitudes.

    2. Si necesitas habilitar las transacciones de fila única, selecciona la casilla de verificación Permitir transacciones de fila única.

  8. Si eliges Varios clústeres:

    1. Para enrutar solicitudes a cualquier clúster de la instancia, selecciona Cualquier clúster en el menú desplegable Grupo de clústeres.
    2. Para limitar el enrutamiento de solicitudes a solo algunos clústeres de la instancia (enrutamiento de grupo de clústeres), selecciona la casilla de verificación de cada clúster que desees incluir en el grupo de enrutamiento y, luego, haz clic en Aceptar.
  9. Haz clic en Guardar.

gcloud

  1. Si no conoces el ID de la instancia, usa el comando bigtable instances list para ver una lista de las instancias de tu proyecto:

    gcloud bigtable instances list
    
  2. Si no conoces el ID del perfil de app, usa el comando bigtable app-profiles list para ver una lista de los perfiles de app de la instancia:

    gcloud bigtable app-profiles list --instance=INSTANCE_ID
    

    Reemplaza INSTANCE_ID con el identificador permanente de la instancia.

  3. (Opcional) Usa el comando bigtable app-profiles describe para ver la configuración del perfil de la app:

    gcloud bigtable app-profiles describe APP_PROFILE_ID \
        --instance=INSTANCE_ID
    
  4. Usa el comando gcloud beta bigtable app-profiles update para convertir el perfil de la app:

    gcloud bigtable app-profiles update APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        --standard \
        [--route-any] \
        [--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...]
        [--route-to=CLUSTER_ID] \
        [--transactional-writes]
    

Proporcione lo siguiente:

  • APP_PROFILE_ID: Es el identificador permanente del perfil de la app.
  • INSTANCE_ID: Es el identificador permanente de la instancia.

El comando acepta las siguientes marcas opcionales:

  • --route-any: Habilita el enrutamiento de varios clústeres para enrutar las solicitudes a cualquier clúster disponible.

    No puedes combinar esta marca con las marcas --route-to o --transactional-writes.

  • --restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...: Es una lista de clústeres a los que se deben enrutar las solicitudes. Usa esta opción si deseas enrutar solicitudes solo a algunos de los clústeres de la instancia.

    No puedes combinar esta marca con las marcas --route-to o --transactional-writes.

  • --route-to=CLUSTER_ID: El ID del clúster al que se deben enrutar todas las solicitudes. Esta marca habilita el enrutamiento de un solo clúster.

    No puedes combinar esta marca con la marca --route-any.

  • --transactional-writes: Habilita las transacciones de fila única en el perfil de la app.

    No puedes combinar esta marca con las marcas --route-any o --restrict-to.

Borra un perfil de actualización

Puedes borrar los perfiles de app personalizados de una instancia, pero no el perfil de la app predeterminado.

Sigue estos pasos para borrar un perfil de la app personalizado:

Console

  1. Abre la lista de instancias de Bigtable en la consola de Google Cloud.

    Abrir la lista de instancias

  2. Haz clic en la instancia que contiene el perfil de la app que deseas borrar.

  3. En el panel izquierdo, haz clic en Perfiles de aplicación.

  4. Abre el menú Más acciones y haz clic en Borrar perfil de aplicación. Aparecerá un diálogo de confirmación.

  5. Sigue las instrucciones del diálogo de confirmación y haz clic en Borrar.

gcloud

  1. Si no conoces el ID de la instancia, usa el comando bigtable instances list para ver una lista de las instancias de tu proyecto:

    gcloud bigtable instances list
    
  2. Si no conoces el ID del perfil de app, usa el comando bigtable app-profiles list para ver una lista de los perfiles de app de la instancia:

    gcloud bigtable app-profiles list --instance=INSTANCE_ID
    

    Reemplaza INSTANCE_ID con el identificador permanente de la instancia.

  3. Usa el comando bigtable app-profiles delete para borrar el perfil de la app:

    gcloud bigtable app-profiles delete APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        [--force]
    

    Proporcione lo siguiente:

    • APP_PROFILE_ID: Es el identificador permanente del perfil de la app.
    • INSTANCE_ID: Es el identificador permanente de la instancia.

    El comando acepta la siguiente marca opcional:

    --force: Ignora las advertencias sobre posibles problemas y conflictos con otros perfiles de app.