Visão geral do Data Boost do Bigtable

O Data Boost (em inglês) é um serviço de computação sem servidor projetado para executar jobs de leitura de alta capacidade nos dados do Bigtable sem afetar o desempenho dos clusters que gerenciam o tráfego do seu aplicativo. Ele permite enviar grandes jobs de leitura e consultas usando computação sem servidor enquanto o aplicativo principal continua usando nós de cluster para computação. As SKUs de computação sem servidor e as taxas de faturamento são separadas das SKUs e das taxas para nós provisionados. Não é possível enviar solicitações de gravação ou exclusão com o Data Boost.

Este documento descreve o Data Boost e quando e como usá-lo. Antes de ler esta página, é preciso entender Instâncias, clusters e nós.

Indicações de uso

O Data Boost é ideal para cargas de trabalho de análise e processamento de dados. Isolar o tráfego de análise e processamento com o Data Boost garante que você não precise ajustar a capacidade ou a contagem de nós de um cluster para acomodar cargas de trabalho de análise. É possível executar jobs de análise de alta capacidade em um único cluster com o Data Boost enquanto o tráfego em andamento do aplicativo é roteado pelos nós do cluster.

Confira a seguir os casos de uso ideais para o Data Boost:

  • Jobs de pipeline de exportação ou ETL programados ou acionados do Bigtable para o Cloud Storage para enriquecimento de dados, análise, arquivamento, treinamento de modelo de ML off-line ou ingestão pelos parceiros terceirizados dos seus clientes
  • ETL usando uma ferramenta como o Dataflow para processos de verificação curta ou leitura em lote compatíveis com agregações no local, transformações baseadas em regras para MDM ou jobs de ML

Não é bom para

Leituras de ponto: o Data Boost não é a melhor opção para operações de leitura de ponto, que são solicitações de leitura enviadas para linhas únicas. Isso inclui leituras de pontos em lote. Devido à estrutura de faturamento, muitas leituras de ponto de linha única são consideravelmente mais caras do que uma verificação longa.

Leitura de dados imediatamente após a gravação: ao ler dados com o Data Boost, talvez não leia todos os dados gravados na meia hora mais recente. Isso é especialmente verdadeiro se a instância usar replicação e você estiver lendo dados que foram gravados em um cluster em uma região diferente da atual. Para saber mais, consulte Consistência.

Cargas de trabalho sensíveis à latência: o Data Boost é otimizado para capacidade de processamento. Portanto, a latência de leitura é mais lenta quando você usa o Data Boost do que ao ler usando clusters e nós. Por esse motivo, o Data Boost não é adequado para cargas de trabalho de veiculação de aplicativos.

Para mais informações sobre cargas de trabalho, configurações e recursos que não são compatíveis com o Data Boost, consulte Limitações.

Perfis do app Data Boost

Para usar o Data Boost, envie suas solicitações de leitura usando um perfil de app do Data Boost em vez de um perfil de app padrão.

Os perfis de aplicativo padrão permitem especificar a política de roteamento e o nível de prioridade para solicitações que usam o perfil de aplicativo, bem como se transações de linha única são permitidas. O tráfego enviado usando um perfil de app padrão é roteado para um cluster, e os nós desse cluster encaminham o tráfego para o disco. Para mais informações, consulte Visão geral de perfis de app padrão.

Com um perfil de aplicativo do Data Boost, por outro lado, você configura uma política de roteamento de cluster único para um dos clusters da instância, e o tráfego usando esse perfil de aplicativo usa computação sem servidor em vez dos nós do cluster.

Você pode criar um novo perfil do app Data Boost ou converter um perfil padrão para usar o Data Boost. Recomendamos o uso de um perfil de aplicativo separado para cada carga de trabalho ou aplicativo.

Tokens de consistência

Os dados gravados ou replicados no cluster de destino mais de 35 minutos antes da solicitação de leitura podem ser lidos pelo Data Boost.

Antes de iniciar uma carga de trabalho, crie e use um token de consistência para garantir que os dados de um job ou período de gravação específico sejam lidos pelo Data Boost antes de iniciar uma carga de trabalho. Veja a seguir um exemplo de fluxo de trabalho:

  1. Gravar alguns dados em uma tabela.
  2. Crie um token de consistência.
  3. Envie o token no modo DataBoostReadLocalWrites para determinar quando as gravações podem ser lidas pelo Data Boost no cluster de destino.

Se quiser, verifique a consistência da replicação antes de verificar a consistência do Data Boost. Para isso, primeiro envie um token de consistência no modo StandardReadRemoteWrites.

Para mais informações, consulte a referência da API para CheckConsistencyRequest.

Cota e faturamento

O Data Boost usa unidades de processamento sem servidor (SPUs, na sigla em inglês), recursos de computação independentes e sob demanda, para medir o poder de computação usado para ler dados com o Data Boost. Ao contrário dos nós, você só é cobrado pelas SPUs quando as usa. Cada solicitação é faturada por no mínimo 60 segundos SPU, e você recebe uma cobrança de pelo menos 10 SPUs por segundo. Para mais informações sobre os preços do Data Boost, consulte Preços do Bigtable.

A cota é alocada e a cobrança pelas SPUs é separada da cota e das cobranças pelos nós.

Métricas de qualificação

O Data Boost foi projetado para verificações de alta capacidade, e as cargas de trabalho precisam ser compatíveis para que sejam usadas. Antes de converter um perfil de app padrão para usar o Data Boost ou de criar um perfil para uma carga de trabalho atual, confira as métricas de qualificação do Data Boost para garantir que a configuração e o uso atendam aos critérios necessários. Confira também as limitações.

Monitoramento

Para monitorar o tráfego do Data Boost, verifique as métricas do perfil do aplicativo na página de monitoramento do Bigtable no console do Google Cloud. Para ver uma lista de métricas disponíveis por perfil de app, consulte Como monitorar gráficos para recursos do Bigtable.

É possível monitorar o uso de unidades de processamento sem servidor (SPUs, na sigla em inglês) verificando a métrica de contagem de uso de SPU (data_boost/spu_usage_count) no Metrics Explorer.

Também é possível continuar monitorando as métricas de qualificação do perfil de app depois de começar a usar o Data Boost.

Limitações

As propriedades de carga de trabalho e as configurações de recursos a seguir não são compatíveis com o Data Boost.

  • Gravações e exclusões
  • Tráfego que é principalmente leituras de ponto (leituras de linha única)
  • Mais de 1.000 leituras por segundo por cluster
  • Reverter verificações
  • Alterar streams
  • Prioridades de solicitação
  • Roteamento de vários clusters
  • Transações de linha única
  • Endpoints regionais
  • Instâncias de HDD
  • Instâncias que usam criptografia CMEK
  • Bibliotecas de cliente incompatíveis. Use o cliente do Bigtable para Java versão 2.31.0 ou posterior. Para jobs do Dataflow que leem dados do Bigtable, use o Apache Beam versão 2.54.0 ou posterior.

Os itens a seguir não são compatíveis com a visualização.

  • Criação e configuração do perfil do app Data Boost no console do Google Cloud
  • ler dados do Bigtable do BigQuery ou do Spark

A seguir