Vista geral dos perfis de apps
Um perfil de aplicação, ou perfil de app, armazena definições que indicam à sua instância do Bigtable como processar pedidos recebidos de uma aplicação. Quando a sua aplicação se liga a uma instância do Bigtable, usa o perfil da app predefinido ou um perfil da app especificado por si. O Bigtable usa esse perfil da app para pedidos que a aplicação envia através dessa ligação.
Um perfil de app é um perfil de app padrão ou um perfil de app Data Boost, consoante o tipo de computação que usa. Um perfil de app padrão usa nós de cluster aprovisionados para computação e é normalmente usado para tráfego de fornecimento de aplicações. Um perfil da app Data Boost usa computação sem servidor, que foi concebida para consultas e tarefas de leitura de elevado débito. Para mais informações sobre o Aumento de dados, leia a vista geral do Aumento de dados.
Esta página descreve os perfis de apps e fornece orientações sobre a respetiva utilização.
Para ver exemplos de código que mostram como usar um perfil de app na sua aplicação, consulte o artigo Estabeleça ligação com um perfil de app personalizado.
Use um perfil de app separado para cada carga de trabalho
Quando cria uma instância do Bigtable, é criado automaticamente um perfil da app predefinido, e as respetivas definições dependem do número de clusters que a instância tem. Para tirar o máximo partido das vantagens dos perfis de apps, deve criar e usar perfis de apps adicionais, bem como usar um perfil de app diferente para cada aplicação ou carga de trabalho.
Os perfis de apps são especialmente importantes para instâncias com dois ou mais clusters, mas mesmo que a sua instância tenha apenas um cluster, deve usar um perfil de app exclusivo para cada aplicação que executa ou para diferentes componentes numa única aplicação.
As secções seguintes descrevem as vantagens de criar e usar vários perfis de apps.
Isolamento de cargas de trabalho
A utilização de perfis de apps separados permite-lhe usar políticas de computação e encaminhamento do Bigtable diferentes para finalidades diferentes. Por exemplo, considere uma situação em que quer impedir que uma tarefa de leitura em lote (carga de trabalho A) aumente a utilização da CPU em clusters que processam as leituras e as escritas estáveis de uma aplicação (carga de trabalho B). Pode adotar uma das seguintes abordagens:
Crie um perfil de app padrão para a carga de trabalho B que seja encaminhada para um grupo de clusters que exclua um cluster. Em seguida, cria um perfil de app padrão separado para a carga de trabalho A que especifica o encaminhamento de cluster único para o cluster para o qual a carga de trabalho B não envia pedidos.
Use um perfil de app padrão, que usa nós de cluster para computação, configurado para encaminhar para qualquer cluster para a carga de trabalho B, e crie um perfil de app do Data Boost para usar num único cluster com a carga de trabalho A. O aumento de dados usa computação sem servidor, enquanto o tráfego de aplicações usa nós de cluster para computação.
Pode alterar as definições de uma aplicação ou função sem afetar outras aplicações que se ligam aos mesmos dados.
Observabilidade
A utilização de perfis de apps separados para diferentes cargas de trabalho dá-lhe melhores informações sobre a utilização do Bigtable pelas suas aplicações, porque as métricas estão disponíveis por perfil de app. Este aumento na observabilidade pode ser útil das seguintes formas:
Pode analisar a latência ao nível do perfil da app para ajudar a determinar que aplicação pode estar a afetar o desempenho geral.
A monitorização da utilização da CPU por perfil de app para uma carga de trabalho através de um perfil de app padrão pode ajudar a resolver problemas de utilização da CPU ou a tomar decisões sobre o tamanho ou a localização do cluster, para que possa otimizar a utilização e reduzir os custos.
As métricas ao nível do perfil da app são úteis se precisar de procurar apoio técnico, porque pode partilhar melhor a carga de trabalho exata que está a causar um problema.
Pode usar a consola do Bigtable Google Cloud para ver gráficos separados das suas métricas do Bigtable para cada perfil de app. Para saber que métricas estão disponíveis ao nível do perfil, consulte a tabela em Gráficos de estatísticas do sistema 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 através dos nós dos clusters.
Encaminhamento
Um perfil de app padrão define a política de encaminhamento 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 para pedidos enviados através do perfil de app.
Prioridade do pedido
Pode especificar a prioridade que o Bigtable deve dar aos pedidos de dados de um perfil de app padrão. Para rever os níveis de prioridade disponíveis, consulte o artigo Configure as prioridades dos pedidos.
Perfis de apps da Otimização de dados
Um perfil de app do Data Boost permite-lhe usar a computação sem servidor do Data Boost para isolar tarefas e consultas de elevado débito do tráfego de publicação de apps. Um perfil da app Data Boost não lhe permite configurar a prioridade do pedido e a única política de encaminhamento disponível é de cluster único. Para mais informações, consulte a vista geral do aumento de dados.
Alterações ao perfil da app
Se precisar de alterar a política de encaminhamento ou a prioridade do pedido para uma carga de trabalho, pode atualizar o perfil da app usado para a carga de trabalho. Também pode converter um perfil de app de padrão para isolamento do Data Boost ou de Data Boost para isolamento padrão. A conversão de um perfil de app padrão para usar o Data Boost remove as definições de prioridade de pedidos do perfil de app, bem como quaisquer políticas de encaminhamento que não sejam de cluster único.
As alterações a um perfil de app entram em vigor imediatamente.
No entanto, em muitos casos, em vez de modificar um perfil da app que está em utilização, deve criar um novo perfil da app com uma configuração diferente, como faria para um novo exemplo de utilização, e, em seguida, alterar o código da aplicação para usar o novo perfil da app. A criação de um novo perfil da app para fazer alterações a uma carga de trabalho garante que não altera inadvertidamente o perfil da app para outras cargas de trabalho que usam o perfil da app.
Se alterar um perfil de app de padrão para Data Boost, o tipo de computação usado para o tráfego do perfil de app é alterado para sem servidor, juntamente com os preços. Para mais informações, consulte a vista geral do Data Boost e os preços do Bigtable.
Da mesma forma, se alterar um perfil de app do Data Boost para o padrão, o tráfego enviado pelo perfil de app começa a usar nós de cluster para computação. Isto significa que todos os clusters para os quais o perfil da app encaminha o tráfego têm de ter nós suficientes para satisfazer os requisitos de utilização da CPU. Para mais informações, consulte o artigo Nós.
Para saber como ver, criar e atualizar perfis de apps, consulte o artigo Crie e configure perfis de apps.
Perfil da app predefinido
Quando cria uma instância, o Bigtable cria automaticamente um perfil de app predefinido para a instância. O perfil de app predefinido é um perfil de app padrão, mas pode convertê-lo num perfil de aumento de dados. Se a sua aplicação não especificar um perfil da app ou se usar o shell do HBase para se ligar à sua instância, o Bigtable usa as definições no perfil da app predefinido.
As definições no perfil da app predefinido de uma instância dependem do número de clusters que a instância tinha quando a criou pela primeira vez:
- Se criou a instância com 1 cluster, o perfil da app
default
usa o encaminhamento de cluster único e ativa as transações de linha única. Isto garante que a adição de clusters adicionais mais tarde não altera o comportamento das suas aplicações existentes. - Se criou a instância com 2 ou mais clusters, o perfil da app
default
usa o encaminhamento de vários clusters para qualquer cluster. As transações de linha única nunca são permitidas com o encaminhamento multicluster.
O perfil da app predefinido não é alterado quando adiciona ou remove clusters. Tem de atualizar manualmente o perfil da app predefinido para alterar as respetivas definições. No entanto, como prática recomendada, deve criar e usar um novo perfil da app em vez de alterar o perfil da app predefinido.
Perfis de apps personalizadas
Um perfil de app personalizado é um perfil de app que cria e configura. Uma instância pode ter até 2000 perfis de apps. Todos os perfis de apps que não sejam o predefinido são considerados perfis de apps personalizados.
O que se segue?
- Monitorize a utilização da CPU de um perfil de app padrão.
- Encontre as definições de replicação adequadas para o seu exemplo de utilização.
- Crie e faça a gestão de perfis de apps para a sua instância.