Descripción general de los perfiles de app
Un perfil de aplicación, o perfil de app, almacena la configuración que le indica a tu instancia de Bigtable cómo controlar las solicitudes entrantes de una aplicación. Cuando tu aplicación se conecta a una instancia de Bigtable, usa el perfil de app predeterminado o un perfil de app que especifiques. Bigtable usa ese perfil de app para las solicitudes que la aplicación envía a través de esa conexión.
Un perfil de app puede ser un perfil de app estándar o un perfil de app de Data Boost, según el tipo de procesamiento que use. Un perfil de app estándar usa nodos de clúster aprovisionados para el procesamiento y, por lo general, se usa para el tráfico de servicio de aplicaciones. Un perfil de app de Data Boost usa la computación sin servidores, que está diseñada para trabajos y consultas de lectura de alta capacidad de procesamiento. Para obtener más información sobre Data Boost, consulta la descripción general de Data Boost.
En esta página, se describen los perfiles de app y se proporcionan instrucciones para usarlos.
Para obtener ejemplos de código que muestran cómo usar un perfil de app en tu aplicación, consulta Conéctate con un perfil de app personalizado.
Usa un perfil de app independiente para cada carga de trabajo
Cuando creas una instancia de Bigtable, se crea automáticamente un perfil de app predeterminado, y su configuración depende de la cantidad de clústeres que tenga la instancia. Para aprovechar al máximo los beneficios de los perfiles de app, debes crear y usar perfiles de app adicionales, y usar un perfil de app diferente para cada aplicación o carga de trabajo.
Los perfiles de app son especialmente importantes para las instancias que tienen dos o más clústeres, pero, incluso si tu instancia tiene solo un clúster, debes usar un perfil de app único para cada aplicación que ejecutes o para componentes diferentes de una sola aplicación.
En las siguientes secciones, se describen los beneficios de crear y usar varios perfiles de app.
Aislamiento de la carga de trabajo
El uso de perfiles de app independientes te permite usar diferentes políticas de procesamiento y enrutamiento de Bigtable para diferentes propósitos. Por ejemplo, considera una situación en la que deseas evitar que un trabajo de lectura por lotes (carga de trabajo A) aumente el uso de CPU en los clústeres que controlan las lecturas y escrituras constantes de una aplicación (carga de trabajo B). Puedes adoptar uno de los siguientes enfoques:
Crea un perfil de app estándar para la carga de trabajo B que se enrute a un grupo de clústeres que excluya un clúster. Luego, crea un perfil de app estándar independiente para la carga de trabajo A que especifique el enrutamiento de un solo clúster a el clúster al que la carga de trabajo B no envía solicitudes.
Usa un perfil de app estándar, que usa nodos de clúster para el procesamiento, configurado para enrutar a cualquier clúster para la carga de trabajo B, y crea un perfil de app de Data Boost para usarlo en un solo clúster con la carga de trabajo A. Data Boost usa la computación sin servidores, mientras que el tráfico de la aplicación usa nodos de clúster para el procesamiento.
Puedes cambiar la configuración de una aplicación o función sin afectar a otras aplicaciones que se conectan a los mismos datos.
Observabilidad
El uso de perfiles de app independientes para diferentes cargas de trabajo te brinda una mejor visibilidad del uso que hacen tus aplicaciones de Bigtable, ya que las métricas están disponibles por perfil de app. Este aumento en la observabilidad puede ser útil de las siguientes maneras:
Puedes observar la latencia a nivel del perfil de app para ayudarte a determinar qué aplicación podría estar afectando el rendimiento general.
Las métricas a nivel del perfil de app son útiles si necesitas solicitar asistencia, ya que puedes compartir mejor la carga de trabajo exacta que causa un problema.
Puedes usar la consola Google Cloud de Bigtable para ver gráficos distintos de las métricas de Bigtable para cada perfil de app. Para saber qué métricas están disponibles a nivel del perfil, consulta la tabla en Gráficos de estadísticas del sistema para recursos de Bigtable resources.
Perfiles de app estándar
Un perfil de app estándar enruta el tráfico a los clústeres de una instancia mediante los nodos de los clústeres.
Enrutamiento
Los perfiles de apps definen la política de enrutamiento que usa Bigtable y controlan si se permiten las transacciones de una sola fila. Un perfil de app estándar también te permite especificar el nivel de prioridad para las solicitudes enviadas con el perfil de app.
En los clústeres de Enterprise Plus, puedes configurar perfiles de app estándar para leer el tráfico desde el nivel en memoria (vista previa). Un perfil de app configurado para usar en memoria usa el enrutamiento de un solo clúster de forma predeterminada.
Prioridad de solicitud
Puedes especificar la prioridad que Bigtable debe otorgar a las solicitudes de datos de un perfil de app estándar. Para revisar los niveles de prioridad disponibles, consulta Configura las prioridades de solicitud.
Perfiles de app de Data Boost
Un perfil de app de Data Boost te permite usar la computación sin servidores de Data Boost para aislar los trabajos y las consultas de alta capacidad de procesamiento del tráfico de servicio de aplicaciones. Un perfil de app de Data Boost no te permite configurar la prioridad de solicitud, y la única política de enrutamiento disponible es la de un solo clúster. Para obtener más información, consulta la descripción general de Data Boost.
La edición Enterprise Plus extiende las capacidades de Data Boost para admitir lo siguiente:
- Consultas en SQL aisladas
- Análisis de datos en clústeres o tablas de HDD con almacenamiento por niveles habilitado
Cambios en el perfil de app
Si necesitas cambiar la política de enrutamiento o la prioridad de solicitud para una carga de trabajo, puedes actualizar el perfil de app que se usa para la carga de trabajo. También puedes convertir un perfil de app de estándar a aislamiento de Data Boost o de Data Boost a aislamiento estándar. Si conviertes un perfil de app estándar para usar Data Boost, se quita la configuración de prioridad de solicitud del perfil de app, así como cualquier política de enrutamiento que no sea de un solo clúster.
Los cambios en un perfil de app entran en vigencia de inmediato.
Sin embargo, en muchos casos, en lugar de modificar un perfil de app que está en uso, debes crear un perfil de app nuevo con una configuración diferente, como lo harías para un caso de uso nuevo, y luego cambiar el código de la aplicación para usar el nuevo perfil de app. Crear un perfil de app nuevo para realizar cambios en una carga de trabajo garantiza que no cambies de forma accidental el perfil de app para ninguna otra carga de trabajo que use el perfil de app.
Si cambias un perfil de app de estándar a Data Boost, el tipo de procesamiento que se usa para el tráfico del perfil de app cambia a sin servidores, junto con los precios. Para obtener más información, consulta la descripción general de Data Boost y los precios de Bigtable.
Del mismo modo, si cambias un perfil de app de Data Boost a estándar, el tráfico que envía el perfil de app comienza a usar nodos de clúster para el procesamiento. Esto significa que todos los clústeres a los que se enruta el perfil de app deben tener suficientes nodos para satisfacer los requisitos de uso de CPU. Para obtener más información, consulta Nodos.
Para obtener información sobre cómo ver, crear y actualizar perfiles de app, consulta Crea y configura perfiles de app.
Perfil de app predeterminado
Cuando creas una instancia, Bigtable crea automáticamente un perfil de app predeterminado para esa instancia. El perfil de app predeterminado es un perfil de app estándar, pero puedes convertirlo en un perfil de Data Boost. Si tu aplicación no especifica un perfil de app o si usas la shell de HBase para conectarte a tu instancia, Bigtable usa la configuración en el perfil de app predeterminado.
La configuración del perfil de app predeterminado de una instancia depende de la cantidad de clústeres que tenía la instancia cuando la creaste:
- Si creaste la instancia con 1 clúster, el perfil de app
defaultusa el enrutamiento de un solo clúster y habilita las transacciones de una sola fila. Esto garantiza que agregar clústeres adicionales más adelante no cambie el comportamiento de tus aplicaciones existentes. - Si creaste la instancia con 2 o más clústeres, el perfil de app
defaultusa el enrutamiento de varios clústeres a cualquier clúster. No se permite usar transacciones de una sola fila con el enrutamiento de varios clústeres.
El perfil de app predeterminado no cambia cuando agregas o quitas clústeres. Para cambiar su configuración, debes actualizarlo de forma manual. Sin embargo, se recomienda que crees y uses un perfil de app nuevo en lugar de cambiar el predeterminado.
Perfiles de app personalizados
Un perfil de app personalizado es uno que creas y configuras. Una instancia puede tener hasta 2,000 perfiles de app. Todos los perfiles de app que no son predeterminados se consideran perfiles de app personalizados.
¿Qué sigue?
- Supervisa el uso de CPU de un perfil de app estándar.
- Encuentra la configuración de replicación adecuada para tu caso práctico.
- Crea y administra perfiles de app para tu instancia.