Vista geral do Bigtable Data Boost

O Data Boost é um serviço de computação sem servidor concebido para executar tarefas de leitura de elevado débito nos seus dados do Bigtable sem afetar o desempenho dos clusters que processam o tráfego da sua aplicação. Permite-lhe enviar grandes tarefas de leitura e consultas usando a computação sem servidor enquanto a sua aplicação principal continua a usar nós de cluster para computação. As SKUs de computação sem servidor e as tarifas de faturação são separadas das SKUs e das tarifas dos nós aprovisionados. Não pode enviar pedidos de gravação nem de eliminação com o Data Boost.

Este documento descreve o aumento de dados e quando e como o usar. Antes de ler esta página, deve compreender o que são instâncias, clusters e nós.

Para que é útil

O Data Boost é ideal para cargas de trabalho de análise e tratamento de dados. O isolamento do tráfego de processamento e de estatísticas com o Data Boost garante que não tem de ajustar a capacidade de um cluster nem a contagem de nós para acomodar cargas de trabalho de estatísticas. Pode executar os seus trabalhos de estatísticas de elevado débito num único cluster com o Data Boost, enquanto o tráfego de aplicações em curso é encaminhado através de nós do cluster.

Seguem-se exemplos de utilização ideais para o aumento de dados:

  • Tarefas de exportação ou pipeline de ETL agendadas ou acionadas do Bigtable para o Cloud Storage para enriquecimento de dados, análise, arquivo, preparação de modelos de ML offline ou carregamento pelos parceiros externos dos seus clientes
  • ETL com uma ferramenta como o Dataflow para processos de leitura rápida ou em lote que suportam agregações no local, transformações baseadas em regras para MDM ou tarefas de ML
  • Aplicações Spark que usam o conetor do Bigtable para o Spark para ler dados do Bigtable
  • Consultas ad hoc e tarefas de análise agendadas que usam tabelas externas do BigQuery para ler dados do Bigtable.

Para que não é adequado

Leituras de pontos: o Data Boost não é a melhor opção para operações de leitura de pontos, que são pedidos de leitura enviados para linhas únicas. Isto inclui leituras de pontos em lote. Devido à estrutura de faturação, muitas leituras de pontos de linha única são consideravelmente mais caras do que uma análise longa.

Ler dados imediatamente após serem escritos: quando lê dados com a Otimização de dados, pode não ler todos os dados que foram escritos nos 35 minutos mais recentes. Isto é particularmente verdadeiro se a sua instância usar a replicação e estiver a ler dados que foram escritos num cluster numa região diferente daquela a partir da qual está a ler. Para mais informações, consulte o artigo Tokens de consistência.

Cargas de trabalho sensíveis à latência: o Data Boost está otimizado para o débito, pelo que a latência de leitura é mais lenta quando usa o Data Boost do que quando lê através de clusters e nós. Por este motivo, o aumento de dados não é adequado para cargas de trabalho de publicação de aplicações.

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

Perfis de apps da Otimização de dados

Para usar o Data Boost, envia os seus pedidos de leitura através de um perfil da app do Data Boost em vez de um perfil da app padrão.

Os perfis de apps padrão permitem-lhe especificar a política de encaminhamento e o nível de prioridade para pedidos que usam o perfil de app, bem como se as transações de linha única são permitidas. O tráfego enviado através de um perfil de app padrão é encaminhado para um cluster, e os nós desse cluster encaminham o tráfego para o disco. Para mais informações, consulte a vista geral dos perfis de apps padrão.

Por outro lado, com um perfil de app Data Boost, configura uma política de encaminhamento de cluster único para um dos clusters da sua instância, e o tráfego que usa esse perfil de app usa computação sem servidor em vez dos nós do cluster.

Pode criar um novo perfil da app do Data Boost ou converter um perfil da app padrão para usar o Data Boost. Recomendamos que use um perfil de app separado para cada carga de trabalho ou aplicação.

Símbolos de consistência

Os dados que foram escritos ou replicados no cluster de destino mais de 35 minutos antes do seu pedido de leitura são legíveis pelo Data Boost.

Pode certificar-se de que os dados de uma tarefa de gravação ou de um período específico são legíveis pelo Data Boost antes de iniciar uma carga de trabalho do Data Boost criando e usando um token de consistência. Segue-se um exemplo de fluxo de trabalho:

  1. Escrever alguns dados numa tabela.
  2. Crie um símbolo de consistência.
  3. Envie o token no modo DataBoostReadLocalWrites para determinar quando as gravações são legíveis pelo Data Boost no cluster de destino.

Opcionalmente, pode verificar a consistência da replicação antes de verificar a consistência do Data Boost enviando primeiro um token de consistência no modo StandardReadRemoteWrites.

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

Quota e faturação

A utilização do Data Boost é medida em unidades de processamento sem servidor (SPUs) e 1000 SPUs = um nó no desempenho. Ao contrário dos nós aprovisionados, só lhe são cobrados SPUs quando usa o Data Boost. Cada pedido é faturado por um mínimo de 60 segundos de SPUs e são-lhe cobrados, pelo menos, 10 SPUs por segundo. Para mais informações sobre os preços do Data Boost, consulte os preços do Bigtable.

É-lhe atribuída uma quota e a faturação das SPUs é feita separadamente da quota e dos custos dos nós.

Métricas de elegibilidade

A Otimização de dados foi concebida para análises de elevado débito, e as cargas de trabalho têm de ser compatíveis para poderem usar a Otimização de dados. Antes de converter um perfil de app padrão para usar o aumento de dados ou criar um perfil de app de aumento de dados para uma carga de trabalho existente, veja as métricas de elegibilidade do aumento de dados para se certificar de que a sua configuração e utilização cumprem os critérios necessários. Também deve rever as limitações.

Monitorização

Para monitorizar o tráfego do Data Boost, pode verificar as métricas do perfil da app do Data Boost na página de estatísticas do sistema do Bigtable naGoogle Cloud consola. Para ver uma lista das métricas disponíveis por perfil de app, consulte o artigo Gráficos de estatísticas do sistema para recursos do Bigtable.

Pode monitorizar a sua utilização de unidades de processamento sem servidor (SPUs) verificando a métrica de contagem de utilização de SPUs (data_boost/spu_usage_count) no separador Perfil da app na página de estatísticas do sistema do Bigtable.

Também pode continuar a monitorizar as métricas de elegibilidade do perfil da app depois de começar a usar o aumento de dados.

Limitações

As seguintes propriedades da carga de trabalho e configurações de recursos não são suportadas para o Data Boost.

  • Escreve e elimina
  • Tráfego que é maioritariamente de leituras de pontos (leituras de linhas únicas)
  • Mais de 1000 leituras por segundo por cluster
  • Inverter digitalizações
  • Altere as streams
  • Prioridades dos pedidos
  • Encaminhamento em vários clusters
  • Transações de linha única
  • Endpoints regionais
  • Instâncias de HDD
  • Consultas do GoogleSQL para Bigtable
  • Consultas do criador de consultas do Bigtable Studio
  • Instâncias que usam a encriptação CMEK
  • Bibliotecas de cliente incompatíveis. Tem de usar a versão 2.31.0 ou posterior do cliente do Bigtable para Java.
    • Para tarefas do Dataflow que usam BigtableIO para ler dados do Bigtable, tem de usar a versão 2.54.0 ou posterior do Apache Beam.
    • Para tarefas do Dataflow que usam CloudBigtableIO para ler dados do Bigtable, tem de usar a versão 2.14.1 ou posterior do bigtable-hbase-beam.

O que se segue?