Visão geral dos perfis de apps
Um perfil de app, ou perfil de app, armazena configurações que informam à instância do Bigtable como processar solicitações de entrada com base em 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 padrão ou um perfil 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 fornecimento de aplicativos. Um perfil do app Data Boost usa a computação sem servidor, que é projetada para jobs de leitura e consultas de alto volume. Para mais informações sobre o Data Boost (pré-lançamento), leia a Visão geral do Data Boost.
Esta página descreve os perfis de app e fornece orientações sobre o uso deles.
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 políticas de roteamento e computação do Bigtable distintas para finalidades diferentes. Por exemplo, considere uma situação em que você queira 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 seguir uma destas abordagens:
Crie um perfil de app padrão para a carga de trabalho B que seja roteado para um grupo de clusters que exclua um cluster. Em seguida, você cria um perfil de app padrão separado para a carga de trabalho A que especifica o roteamento de cluster único para o cluster para o qual a carga de trabalho B não envia solicitações.
Use um perfil de app padrão, que usa 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 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.
Monitorar a utilização da CPU por perfil de app de uma carga de trabalho usando um perfil de app padrão pode ajudar a resolver problemas de utilização da CPU ou tomar decisões sobre o tamanho ou a localização do cluster para 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 apps 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 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 por ele.
Prioridade da solicitação
É possível especificar a prioridade que o Bigtable deve 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 de app do Data Boost
Um perfil do app Data Boost permite usar a computação sem servidor do Data Boost para isolar jobs e consultas de alto volume do tráfego de veiculação do app. Um perfil de app do 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 mudar a política de roteamento ou solicitar prioridade para uma carga de trabalho, atualize o perfil de app usado para a carga de trabalho. Também é possível converter um perfil de app do isolamento padrão para o Data Boost ou do Data Boost para o isolamento padrão. A conversão de um perfil de app padrão para usar o Data Boost remove as configurações de prioridade de solicitação do perfil de app, bem como todas as políticas de roteamento que não são de cluster único.
As mudanças em um perfil de app entram em vigor imediatamente.
No entanto, em muitos casos, em vez de modificar um perfil de app que está em uso, é necessário criar um novo perfil de app 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 de app. Criar um novo perfil de app para fazer mudanças em uma carga de trabalho garante que você não altere o perfil de app acidentalmente para outras cargas de trabalho que o usam.
Se você mudar um perfil de app de padrão para Data Boost, o tipo de computação usado para o tráfego do perfil de app 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 o padrão, o tráfego enviado pelo perfil de app vai começar a usar nós de cluster para computação. Isso significa que todos os clusters para os quais o perfil do app é roteado 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 app, consulte Criar e configurar perfis de app.
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 de app padrão, mas você pode convertê-lo em um perfil do Data Boost. Se o aplicativo não especificar um perfil de app ou você usar o shell do HBase para se conectar à instância, o Bigtable vai usar as configurações no perfil de app 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
- Monitore 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.