Visão geral dos perfis de app
Um perfil de aplicativo, ou perfil de app, armazena configurações que informam à instância do Bigtable como processar solicitações de entrada de um aplicativo. Quando o aplicativo se conecta a uma instância do Bigtable, ele usa o perfil de app padrão ou um perfil de app especificado por você. O Bigtable usa esse perfil de app para as solicitações que o aplicativo envia por essa conexão.
Um perfil de app é um perfil de app padrão ou um perfil de app do Data Boost, dependendo do tipo de computação usado. Um perfil de app padrão usa nós de cluster provisionados para computação e geralmente é usado para tráfego de veiculação de aplicativos. Um perfil de aplicativo Data Boost usa computação sem servidor, projetada para jobs e consultas de leitura de alta capacidade. Para mais informações sobre o Data Boost (Prévia), leia a Visão geral do Data Boost.
Esta página descreve perfis de aplicativos e fornece orientações sobre como usá-los.
Para exemplos de código que mostram como usar um perfil de app no seu aplicativo, consulte Conectar a um perfil de app personalizado.
Use um perfil de app separado para cada carga de trabalho
Quando você cria uma instância do Bigtable, um perfil de app padrão é criado automaticamente, e as configurações dele dependem do número de clusters que a instância tem. Para aproveitar ao máximo os benefícios dos perfis de app, você deve criar e usar perfis de app adicionais e usar um perfil de app diferente para cada aplicativo ou carga de trabalho.
Os perfis de app são especialmente importantes para instâncias que têm dois ou mais clusters. No entanto, mesmo que a instância tenha apenas um cluster, use um perfil de app exclusivo para cada aplicativo executado ou para diferentes componentes dentro de um único aplicativo.
As seções a seguir descrevem os benefícios de criar e usar vários perfis de app.
Isolamento da carga de trabalho
O uso de perfis de app separados permite usar diferentes políticas de computação e roteamento do Bigtable para diferentes fins. Por exemplo, considere uma situação em que você quer impedir que um job de leitura em lote (carga de trabalho A) aumente o uso da CPU em clusters que processam leituras e gravações estáveis de um aplicativo (carga de trabalho B). Você pode adotar uma das seguintes abordagens:
Crie um perfil de app padrão para a carga de trabalho B, que é encaminhado para um grupo que exclui um cluster. Em seguida, você cria um perfil de aplicativo padrão separado para a carga de trabalho A que especifica o roteamento de cluster único para o cluster ao qual a carga de trabalho B não envia solicitações.
Use um perfil de app padrão, que use nós de cluster para computação, configurado para rotear para qualquer cluster para a carga de trabalho B, e crie um perfil de app do Data Boost para uso em um único cluster com a carga de trabalho A. O Data Boost usa computação sem servidor, enquanto o tráfego do aplicativo usa nós de cluster para computação.
É possível alterar as configurações de um aplicativo ou função sem afetar outros aplicativos conectados aos mesmos dados.
Observabilidade
O uso de perfis de app separados para diferentes cargas de trabalho oferece um insight melhor sobre o uso do Bigtable dos seus aplicativos, porque as métricas estão disponíveis por perfil de app. Esse aumento na observabilidade pode ser útil das seguintes maneiras:
É possível observar a latência no nível do perfil de aplicativo para ajudar a determinar qual aplicativo pode estar afetando o desempenho geral.
O monitoramento da utilização da CPU por perfil de app de uma carga de trabalho com um perfil de app padrão pode ajudar a solucionar problemas de utilização da CPU ou tomar decisões sobre o tamanho ou o local do cluster. Assim, é possível otimizar o uso e reduzir custos.
As métricas no nível do perfil de app serão úteis se você precisar buscar suporte, porque é mais fácil compartilhar a carga de trabalho exata que está causando um problema.
É possível usar o console do Google Cloud para Bigtable para visualizar gráficos separados das métricas do Bigtable de cada perfil de app. Para saber quais métricas estão disponíveis no nível do perfil, consulte a tabela em Gráficos de monitoramento para recursos do Bigtable.
Perfis de aplicativo padrão
Um perfil de app padrão encaminha o tráfego para os clusters de uma instância usando os nós dos clusters.
Roteamento
Um perfil de app padrão define a política de roteamento que o Bigtable usa e controla se as transações de linha única são permitidas. Um perfil de app padrão também permite especificar o nível de prioridade das solicitações enviadas usando esse perfil.
Prioridade da solicitação
É possível especificar a prioridade que o Bigtable precisa dar às solicitações de dados de um perfil de app padrão. Para revisar os níveis de prioridade disponíveis, consulte Configurar prioridades de solicitação.
Perfis do app Data Boost
Um perfil de aplicativo do Data Boost permite que você use a computação sem servidor do Data Boost para isolar jobs e consultas de alta capacidade do tráfego de veiculação do aplicativo. Um perfil de aplicativo Data Boost não permite configurar a prioridade da solicitação, e a única política de roteamento disponível é de cluster único. Para mais informações, consulte a Visão geral do Data Boost.
Mudanças no perfil de app
Se você precisar alterar a política de roteamento ou a prioridade de solicitação de uma carga de trabalho, atualize o perfil de aplicativo usado para a carga de trabalho. Também é possível converter um perfil de app do padrão para o isolamento do Data Boost ou do Data Boost para o padrão. A conversão de um perfil de aplicativo padrão para usar o Data Boost remove as configurações de prioridade de solicitação do perfil de aplicativo, bem como todas as políticas de roteamento que não são de cluster único.
As alterações em um perfil de aplicativo têm efeito imediato.
No entanto, em muitos casos, em vez de modificar um perfil de app que está em uso, é necessário criar um novo perfil com uma configuração diferente, como você faria para um novo caso de uso, e mudar o código do aplicativo para usar o novo perfil. A criação de um novo perfil de aplicativo para fazer alterações em uma carga de trabalho garante que você não altere acidentalmente o perfil de aplicativo para outras cargas de trabalho que usem o perfil de aplicativo.
Se você alterar um perfil de aplicativo de padrão para o Data Boost, o tipo de computação usado para o tráfego do perfil de aplicativo será alterado para sem servidor, junto com o preço. Para mais informações, consulte a Visão geral do Data Boost e os Preços do Bigtable.
Da mesma forma, se você mudar um perfil de app do Data Boost para padrão, o tráfego enviado pelo perfil vai começar a usar os nós do cluster para computação. Isso significa que todos os clusters encaminhados pelo perfil de app precisam ter nós suficientes para atender aos requisitos de uso da CPU. Para mais informações, consulte Nós.
Para saber como visualizar, criar e atualizar perfis de aplicativo, consulte Criar e configurar perfis de aplicativo.
Perfil de app padrão
Quando você cria uma instância, o Bigtable cria automaticamente um perfil de app padrão para a instância. O perfil de app padrão é um perfil, mas você pode convertê-lo em um perfil do Data Boost. Se o aplicativo não especificar um perfil de aplicativo ou se você usar o shell do HBase para se conectar à instância, o Bigtable usará as configurações no perfil de aplicativo padrão.
As configurações no perfil de app padrão de uma instância dependem do número de clusters que a instância tinha quando você a criou:
- Se você criou a instância com um cluster, o perfil de app
default
usará o roteamento de cluster único e ativará transações de linha única. Isso garante que, ao adicionar mais clusters posteriormente, o comportamento de seus aplicativos atuais não será alterado. - Se você criou a instância com dois ou mais clusters, o perfil de aplicativo
default
usará o roteamento de vários clusters para qualquer cluster. As transações de linha única não são permitidas com roteamento de vários clusters.
O perfil de app padrão não é alterado ao adicionar ou remover clusters. Você precisa atualizar o perfil de app padrão manualmente para alterar as configurações. No entanto, recomendamos que você crie e use um novo perfil de aplicativo em vez de alterar o perfil de aplicativo padrão.
Perfis de app personalizados
Um perfil de app personalizado é um perfil de app que você cria e configura. Uma instância pode ter até 2.000 perfis de aplicativo. Todo perfil de app que não seja o padrão é considerado personalizado.
A seguir
- Monitorar o uso da CPU de um perfil de app padrão
- Encontre as configurações de replicação certas para o caso de uso.
- Crie e gerencie perfis de app para a instância.