Visão geral do Data Boost do Bigtable

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

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

Indicações de uso

O Data Boost é ideal para análises de dados e cargas de trabalho de processamento de dados. Isolar o tráfego de análise e processamento com o Data Boost garante que não seja necessário 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 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 aprimoramento de dados, análise, arquivamento, treinamento de modelo de ML off-line ou ingestão pelos parceiros terceirizados de 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 pontuais: o Data Boost não é a melhor opção para operações de leitura pontual, 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 imediata de dados após a gravação: ao ler dados com o Data Boost, talvez não seja possível ler todos os dados gravados na última meia hora. Isso é especialmente verdadeiro se a instância usa replicação e você está lendo dados que foram gravados em um cluster em uma região diferente da que você está lendo. Para mais informações, 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 quando a leitura é feita usando clusters e nós. Por esse motivo, o Data Boost não é adequado para cargas de trabalho de disponibilizaçã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 aplicativo padrão.

Os perfis de app 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 saber mais, consulte Visão geral dos 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 sua instância, e o tráfego que usa esse perfil de aplicativo usa computação sem servidor em vez dos nós do cluster.

É possível criar um novo perfil de app do Data Boost ou converter um perfil de app 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. Confira abaixo um exemplo de fluxo de trabalho:

  1. Grave alguns dados em uma tabela.
  2. Criar 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.

Como opção, é possível verificar 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 a capacidade de computação usada para ler dados com o Data Boost. Ao contrário dos nós, as SPUs são cobradas somente quando usadas. Cada solicitação é faturada por um mínimo de 60 SPUs-segundos e você recebe pelo menos 10 SPUs por segundo. Para mais informações sobre os preços do Data Boost, consulte Preços do Bigtable.

Você recebe uma cota alocada e a cobrança pelas SPUs é separada da cota e das cobranças dos 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 usar o Data Boost. Antes de converter um perfil de app padrão para usar o Data Boost ou criar um perfil de aplicativo do Data Boost para uma carga de trabalho atual, consulte as métricas de qualificação do Data Boost para garantir que sua configuração e seu uso atendam aos critérios necessários. Leia também as limitações.

Monitoramento

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

Para monitorar o uso de unidades de processamento sem servidor (SPUs, na sigla em inglês), verifique 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 aplicativo depois de começar a usar o Data Boost.

Limitações

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

  • Gravações e exclusões
  • Tráfego principalmente de leituras pontuais (leituras de linha única)
  • Mais de 1.000 leituras por segundo por cluster
  • Reverter verificações
  • Alterar streams
  • Prioridades de solicitações
  • Roteamento de vários clusters
  • Transações de linha única
  • Endpoints regionais
  • Instâncias de HDD
  • Instâncias que usam criptografia CMEK
  • As bibliotecas de cliente são incompatíveis. Use o cliente do Bigtable para Java versão 2.31.0 ou posterior.
    • Para jobs do Dataflow que usam BigtableIO para ler dados do Bigtable, é necessário usar o Apache Beam versão 2.54.0 ou posterior.
    • Para jobs do Dataflow que usam CloudBigtableIO para ler dados do Bigtable, é necessário usar bigtable-hbase-beam versão 2.14.1 ou posterior.

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

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

A seguir