Introdução às reservas antigas

As reservas do BigQuery permitem-lhe mudar dos preços a pedido para os preços baseados na capacidade. Com os preços baseados na capacidade, paga pela capacidade de processamento de consultas dedicada ou com escalabilidade automática, em vez de pagar por cada consulta individualmente.

As reservas permitem-lhe atribuir capacidade de consulta, medida em ranhuras, a diferentes cargas de trabalho ou a diferentes partes da sua organização.

A criação de um compromisso de capacidade é opcional quando trabalha com reservas que tiram partido das edições do BigQuery, mas pode poupar custos para cargas de trabalho de estado estável.

Vista geral

O BigQuery oferece dois modelos de preços de computação (análise):

Por predefinição, a faturação é feita de acordo com o modelo de preços a pedido. Com as reservas, pode mudar para preços baseados na capacidade e usar o dimensionamento automático de slots e comprar compromissos de capacidade com desconto. Não existe qualquer custo para os bytes processados quando usa o modelo baseado na capacidade.

Pode combinar ambos os modelos de faturação. Por exemplo, pode executar algumas cargas de trabalho com preços consoante a procura e outras com preços baseados na capacidade. Como o modelo de faturação é especificado por projeto, isto requer que use vários projetos para as suas tarefas de consulta.

Vantagens das reservas

As vantagens da utilização de reservas do BigQuery incluem:

  • Previsibilidade. Os preços baseados na capacidade oferecem custos previsíveis e consistentes. Especifica o orçamento de custo máximo antecipadamente e também pode tirar partido dos compromissos de espaço, que oferecem capacidade contínua dedicada a uma taxa com desconto.

  • Flexibilidade. Escolhe a quantidade de capacidade dedicada a atribuir a uma carga de trabalho ou permite que o BigQuery ajuste automaticamente a capacidade com base nos requisitos da carga de trabalho. A faturação é feita com base nos espaços consumidos em incrementos de, pelo menos, um segundo.

  • Gestão da carga de trabalho. Cada carga de trabalho tem um conjunto especificado de recursos computacionais do BigQuery disponíveis para utilização. Ao mesmo tempo, se uma carga de trabalho não usar todos os respetivos espaços dedicados, os espaços não usados são partilhados automaticamente entre as suas outras cargas de trabalho.

  • Compras centralizadas: pode comprar e atribuir vagas para toda a sua organização. Não tem de comprar slots para cada projeto que use o BigQuery.

Reservas

A capacidade do BigQuery é medida em slots, que representam CPUs virtuais usadas por consultas. Geralmente, se aprovisionar mais ranhuras, pode executar mais consultas simultâneas e as consultas complexas podem ser executadas mais rapidamente.

Os slots são atribuídos em conjuntos denominados reservas. As reservas permitem-lhe atribuir os horários de formas que façam sentido para a sua organização específica.

Por exemplo, pode criar uma reserva denominada prod para cargas de trabalho de produção e uma reserva separada denominada test para testes. Desta forma, as suas tarefas de teste não competem por recursos de que as cargas de trabalho de produção precisam. Em alternativa, pode criar reservas para diferentes departamentos na sua organização.

As reservas podem incluir espaços de base, que são sempre atribuídos, bem como espaços com dimensionamento automático, que são adicionados ou removidos dinamicamente com base nas exigências da sua carga de trabalho.

É criada automaticamente uma reserva com o nome default se comprar compromissos de horários disponíveis antes de criar uma reserva. Não existe nada de especial na reserva. Esta é criada por conveniência.default Pode decidir se precisa de reservas adicionais ou se usa apenas a reserva predefinida.

Para usar os espaços que atribui, tem de atribuir um ou mais projetos a uma reserva, conforme descrito na secção seguinte.

Uma reserva é o nível mais baixo no qual pode especificar a atribuição de espaços. A atribuição de slots numa reserva é processada pelo programador do BigQuery.

Tarefas

Para usar os espaços que atribui, tem de atribuir um ou mais projetos, pastas ou organizações a uma reserva. Cada nível na hierarquia de recursos herda a atribuição do nível acima. Por outras palavras, se um projeto ou uma pasta não for atribuído, esse projeto ou pasta herda a atribuição da respetiva pasta principal ou organização, se existir. Para mais informações acerca da hierarquia de recursos, consulte o artigo Organizar recursos do BigQuery.

Quando uma tarefa é iniciada a partir de um projeto atribuído a uma reserva, a tarefa usa as vagas dessa reserva. Se um projeto não estiver atribuído a uma reserva (direta ou indiretamente, através da herança da respetiva pasta ou organização principal), os trabalhos nesse projeto usam os preços a pedido.

As atribuições None representam a ausência de uma atribuição. Os projetos atribuídos a None usam preços segundo a procura. O exemplo de utilização comum para atribuições de None é atribuir uma organização à reserva e desativar alguns projetos ou pastas dessa reserva atribuindo-os a None. Para mais informações, consulte o artigo Atribua um projeto a Nenhum.

Quando cria uma atribuição, especifica o tipo de trabalho para essa atribuição:

  • QUERY: use esta reserva para tarefas de consulta, incluindo SQL, DDL, DML e consultas do BigQuery ML.

  • PIPELINE: use esta reserva para tarefas de carregamento e extração.

    Por predefinição, os trabalhos de carregamento e extração são gratuitos e usam um conjunto partilhado de espaços. O BigQuery não oferece garantias sobre a capacidade disponível deste conjunto partilhado nem sobre o débito que vê. Se estiver a carregar grandes quantidades de dados, a sua tarefa pode aguardar até que fiquem disponíveis slots. Nesse caso, pode querer comprar slots dedicados e atribuir-lhes tarefas de pipeline. Recomendamos que crie uma reserva dedicada adicional com a partilha de espaços inativos desativada.

    Quando as tarefas de carregamento são atribuídas a uma reserva, perdem o acesso ao conjunto gratuito. Monitorize o desempenho para se certificar de que as tarefas têm capacidade suficiente. Caso contrário, o desempenho pode ser pior do que usar o conjunto gratuito.

  • BACKGROUND: use esta reserva quando optar por usar a sua própria reserva para executar tarefas de gestão do índice de pesquisa do BigQuery ou tarefas em segundo plano de captura de dados de alterações (CDC) do BigQuery. Use também esta reserva quando replicar bases de dados de origem para o BigQuery com as operações de aplicação em segundo plano do Datastream. As reservas de BACKGROUND não estão disponíveis na edição Standard.

  • ML_EXTERNAL: use esta reserva para consultas do BigQuery ML que usam serviços externos ao BigQuery. Para mais informações, consulte o artigo Atribua slots a cargas de trabalho do BigQuery ML. As reservas de ML_EXTERNAL não estão disponíveis na edição Standard.

Não pode atribuir horários a tarefas específicas. O agendador do BigQuery processa a atribuição de slots para as atribuições numa reserva.

Compromissos

Conceitos de reservas.

Uma consolidação de capacidade é uma compra de uma quantidade fixa de capacidade de computação do BigQuery durante um período mínimo. Os compromissos de capacidade são opcionais para reservas criadas com uma edição, mas podem poupar custos para cargas de trabalho de estado estável.

O BigQuery oferece vários planos de compromisso à escolha. Diferem principalmente no custo e na duração mínima do seu compromisso. Para ver informações de preços atuais, consulte os preços de compromisso de capacidade.

  • Compromisso anual. Compra um compromisso de 365 dias. Pode optar por renovar ou converter o plano de compromisso num tipo diferente após 365 dias.

  • Compromisso mensal. Compra um compromisso mínimo de 30 dias. Após 30 dias, pode eliminar o plano em qualquer altura.

  • Espaços flexíveis. Compra um compromisso de 60 segundos. Pode eliminá-la em qualquer altura após 60 segundos. Os slots flexíveis são uma boa forma de testar o desempenho das suas cargas de trabalho com a faturação de taxa fixa antes de comprar um compromisso de prazo mais longo. Também são úteis para processar a procura cíclica ou sazonal, ou eventos de carga elevada, como a época fiscal.

Qualquer que seja o plano que selecionar, os seus espaços não expiram no final do período de compromisso. Mantém os espaços e recebe faturação pelos mesmos até os eliminar. Também pode alterar o tipo de plano após a duração mínima.

Os slots estão sujeitos à disponibilidade de capacidade. Quando tenta comprar compromissos de slots, o sucesso desta compra não é garantido. No entanto, assim que a compra de compromisso for bem-sucedida, a sua capacidade é garantida até eliminar o compromisso.

Para mais detalhes sobre estes planos, consulte o artigo Planos de compromisso.

Atribuição de horários disponíveis nas reservas

O BigQuery atribui capacidade de slots numa única reserva através de um algoritmo denominado agendamento justo.

O agendador do BigQuery aplica a partilha igual de slots entre projetos com consultas em execução numa reserva e, em seguida, entre tarefas de um determinado projeto. O agendador oferece equidade eventual. Podem existir períodos curtos em que algumas tarefas recebem uma quota desproporcionada de vagas, mas o agendador acaba por corrigir esta situação. O objetivo do programador é encontrar um meio-termo entre ser demasiado agressivo na remoção de tarefas em execução (o que resulta no desperdício de tempo de intervalo) e ser demasiado tolerante (o que resulta em tarefas de execução prolongada a receberem uma quota desproporcionada do tempo de intervalo).

Se um trabalho importante precisar sempre de mais espaços do que os que recebe do programador, considere criar uma reserva adicional com um número garantido de espaços e atribuir o trabalho a essa reserva. Para mais informações, consulte o artigo Gestão de cargas de trabalho.

Espaços inativos

Em qualquer altura, algumas ranhuras podem estar inativas. Isto pode incluir:

  • Compromissos de horários que não estão atribuídos a nenhuma reserva.
  • Intervalos atribuídos a uma base de referência de reservas, mas que não estão atualmente em utilização.

Por predefinição, as consultas executadas numa reserva usam automaticamente as vagas inativas de outras reservas no mesmo projeto de administração. Isto significa que uma tarefa pode ser sempre executada desde que haja capacidade. A capacidade inativa é imediatamente anulável para a reserva atribuída originalmente, conforme necessário, independentemente da prioridade da consulta que precisa dos recursos. Isto acontece automaticamente em tempo real.

Para desativar esta funcionalidade e forçar uma reserva a usar apenas os espaços disponibilizados para ela, defina ignore_idle_slots como true. As reservas com o valor ignore_idle_slots definido como true não recebem horários disponíveis.

Não pode partilhar espaços disponíveis entre reservas de diferentes edições. Só pode partilhar os espaços base ou os espaços comprometidos. Os espaços com escalamento automático podem estar temporariamente disponíveis, mas não são partilháveis, uma vez que podem ser reduzidos.

Enquanto ignore_idle_slots for falso, uma reserva pode ter uma contagem de horários disponíveis de 0 e continuar a ter acesso a horários disponíveis não usados. Se estiver a usar apenas a default reserva, recomendamos que a configure desta forma. Em seguida, pode atribuir um projeto ou uma pasta a essa reserva, que só vai usar espaços disponíveis.

As atribuições do tipo ML_EXTERNAL são uma exceção ao comportamento descrito anteriormente. Os espaços usados por tarefas de criação de modelos externos do BigQuery ML não são preemptíveis, ou seja, os espaços numa reserva com os tipos de atribuição ml_external e query só estão disponíveis para outras tarefas de consulta quando os espaços não estão ocupados pelas tarefas ML_EXTERNAL. Além disso, estas tarefas não usam espaços inativos de outras reservas.

Limitações

  • As reservas que comprar não podem ser partilhadas com outras organizações.
  • Tem de criar uma reserva separada e um projeto de administração separado para cada organização.
  • Cada organização pode ter um máximo de 10 projetos de administração com compromissos ativos numa única localização.
  • A capacidade inativa não pode ser partilhada entre organizações nem entre diferentes projetos de administração numa única organização.
  • Os compromissos são um recurso regional. Não é possível usar compromissos comprados numa região ou em várias regiões noutras regiões ou em várias regiões. Não é possível mover compromissos entre regiões ou entre regiões e multirregiões.
  • Não é possível mover compromissos comprados num projeto de administração para um projeto de administração diferente.
  • Os compromissos comprados com uma edição não podem ser usados com reservas de outra edição.
  • Os espaços inativos não são partilhados entre reservas de diferentes edições.
  • Os espaços com escala automática não são partilháveis, uma vez que são reduzidos quando já não são necessários.

Quotas

A sua quota de espaços é o número máximo de espaços que pode comprar numa localização. As quotas não estão sujeitas a cobrança. Só paga pelas reservas e pelos compromissos. Para mais informações, consulte quotas e limites de reservas. Para informações sobre como aumentar a quota de espaços, consulte o artigo Pedir um aumento da quota.

Preços

Para ver informações sobre os preços das reservas, consulte o artigo Preços fixos.

O que se segue?