Migrar para a recuperação de desastres gerenciada
Nesta página, descrevemos como migrar da replicação entre regiões do BigQuery para a recuperação de desastres gerenciada pelo BigQuery.
Visão geral
A replicação entre regiões (CRR) e a recuperação de desastres gerenciada (DR) do BigQuery são recursos projetados para melhorar a disponibilidade de dados e as capacidades de recuperação de desastres. No entanto, eles lidam com interrupções regionais de maneiras diferentes. A CRR não permite promover a réplica secundária se a região principal estiver indisponível. Em contraste, a DR oferece uma proteção mais abrangente, permitindo um failover para a réplica secundária mesmo que a região principal esteja indisponível. Com a CRR, apenas o armazenamento é replicado, enquanto com a DR, tanto o armazenamento quanto a capacidade de computação são replicados.
A tabela a seguir descreve os recursos do CRR e da DR:
| Recurso | CRR | DR |
|---|---|---|
| Processo inicial de replicação | Usa a CRR para replicar o conjunto de dados inicialmente. | O carregamento inicial é replicado com CRR antes de migrar um conjunto de dados de CRR para um conjunto de dados de DR. |
| Replicação de promoção | Usa replicação padrão. | Usa a replicação turbo. |
| Processo de promoção | Promove no nível do conjunto de dados. | Promove no nível da reserva (failover de reserva e promoção de conjunto de dados). Vários conjuntos de dados podem ser anexados a uma reserva de failover. A promoção no nível do conjunto de dados não está disponível com o DR. |
| Execução da promoção | Usando a interface ou um comando DDL baseado em SQL para cada conjunto de dados. Não há suporte para CLI, bibliotecas de cliente, API ou Terraform. | Usando a interface ou um comando DDL baseado em SQL para cada reserva de EPE. Não há suporte para CLI, bibliotecas de cliente, API ou Terraform. |
| Modo de failover | Failover flexível. | Failover rígido. |
| Requisito de edição | Qualquer modelo de capacidade. | Enterprise Plus. |
| Limitações | Limitações do CRR. | Inclui limitações da CRR e limitações da DR. |
| Acesso de gravação | Os jobs executados em qualquer modelo de capacidade podem gravar em conjuntos de dados replicados na região principal. A secundária é sempre somente leitura. | Somente os jobs executados em reservas do Enterprise Plus podem gravar em conjuntos de dados replicados na região principal. As réplicas secundárias de conjunto de dados e de reserva são sempre somente leitura. |
| Acesso de leitura | Os jobs executados em qualquer modelo de capacidade podem ler conjuntos de dados replicados. | Os jobs executados em qualquer modelo de capacidade podem ler conjuntos de dados replicados. |
Implicações da migração
As seções a seguir oferecem uma visão geral das mudanças de custo e capacidade que ocorrem ao migrar para a DR.
Implicações no custo
Considere as seguintes implicações de custo ao migrar do CRR para o DR:
A DR só oferece suporte ao acesso de gravação da edição Enterprise Plus, que gera custos de computação mais altos. É possível ler de qualquer modelo de capacidade, então os custos de leitura dos jobs atuais não mudam.
A DR usa a replicação turbo, que gera custos extras dependendo do par de regiões.
Os preços de armazenamento são os mesmos para CRR e DR.
Para mais informações sobre preços, consulte Preços.
Implicações de capacidade
Considere as seguintes implicações de capacidade ao migrar do CRR para o DR:
A recuperação de desastres só aceita failover no nível da reserva. Todos os jobs atuais que dependem do failover no nível do conjunto de dados vão falhar.
Somente as consultas da edição Enterprise Plus podem gravar no conjunto de dados depois que ele é anexado à reserva de DR. Todos os jobs de gravação atuais que não usam uma edição do Enterprise Plus para a capacidade de computação vão falhar.
Antes de começar
Antes de começar a migração, familiarize-se com os conceitos de replicação entre regiões e recuperação de desastres gerenciada.
Para migrar para a DR, você precisa atender aos seguintes pré-requisitos:
Você tem um projeto Google Cloud ativo com o BigQuery ativado.
Você criou e replicou conjuntos de dados com a CRR.
Os conjuntos de dados têm os mesmos locais primário e secundário que você quer usar para DR.
Você tem as permissões necessárias para trabalhar com DR. Para mais informações sobre permissões, consulte Antes de começar.
Migrar do CRR para o DR
As seções a seguir descrevem como migrar seus conjuntos de dados do CRR para o DR. Elas pressupõem que você já configurou seus conjuntos de dados para o CRR.
Criar uma reserva de failover
Para ativar a recuperação de desastres, crie uma reserva de failover na região principal. Configure sua reserva com a região primária e secundária adequadas. As regiões principal e secundária precisam corresponder às regiões de todos os conjuntos de dados de CRR que você pretende migrar para DR. Para criar uma reserva de failover, escolha uma das seguintes opções:
Console
No console do Google Cloud , acesse a página BigQuery.
No menu de navegação, clique em Gerenciamento de capacidade e em Criar reserva.
No campo Nome da reserva, insira um nome para a reserva.
Na lista Local, selecione um local.
Na lista Edição, selecione a edição Enterprise Plus.
Na lista Seletor de tamanho máximo da reserva, escolha o tamanho máximo da reserva.
Opcional: no campo Slots de valor de referência, insira o número de slots de valor de referência para a reserva.
O número de slots de escalonamento automático disponíveis é determinado subtraindo o valor Slots de referência do valor do Tamanho máximo da reserva. Por exemplo, se você criar uma reserva com 100 slots de valor de referência e um tamanho máximo de 400, sua reserva terá 300 slots de escalonamento automático. Para mais informações sobre slots de valor de referência, consulte Como usar reservas com slots de valor de referência e de escalonamento automático.
Na lista Local secundário, selecione o local secundário.
Para desativar o compartilhamento de slots inativos e usar apenas a capacidade de slot especificada, clique em Ignorar slots inativos.
Para expandir a seção Configurações avançadas, clique na seta .
Opcional: para definir a simultaneidade do job de destino, ative a opção Modificar simultaneidade automática do job de destino e insira um valor em Simultaneidade do job de destino. O detalhamento de slots é exibido na tabela Estimativa de custo. Um resumo da reserva será exibido na tabela Resumo da capacidade.
Clique em Salvar.
A nova reserva fica visível na guia Reservas de slots.
SQL
Para criar uma reserva, use a
instrução de linguagem de definição de dados (DDL) CREATE RESERVATION.
No console do Google Cloud , acesse a página BigQuery.
No editor de consultas, digite a seguinte instrução:
CREATE RESERVATION `ADMIN_PROJECT_ID.region-LOCATION.RESERVATION_NAME` OPTIONS ( slot_capacity = NUMBER_OF_BASELINE_SLOTS, edition = ENTERPRISE_PLUS, secondary_location = SECONDARY_LOCATION);
Substitua:
ADMIN_PROJECT_ID: o ID do projeto de administração que é proprietário do recurso de reserva.LOCATION: o local da reserva. Se você selecionar um local do BigQuery Omni, sua opção de edição será limitada à edição Enterprise.RESERVATION_NAME: o nome da reserva.Ele precisa começar e terminar com uma letra minúscula ou um número e conter apenas letras minúsculas, números e traços.
NUMBER_OF_BASELINE_SLOTS: o número de slots de referência que serão alocados para a reserva. Não é possível definir a opçãoslot_capacityeeditionna mesma reserva.SECONDARY_LOCATION: o local secundário da reserva. Em caso de interrupção, todos os conjuntos de dados anexados a essa reserva vão fazer failover para esse local.
Clique em Executar.
Para mais informações sobre como executar consultas, acesse Executar uma consulta interativa.
Anexar o conjunto de dados à reserva
Depois de criar a reserva de failover, anexe o conjunto de dados ou os conjuntos de dados entre regiões a ela. Isso ativa o failover para todos os conjuntos de dados anexados. Para anexar o conjunto de dados à reserva, escolha uma das seguintes opções:
Console
No console do Google Cloud , acesse a página BigQuery.
No menu de navegação, clique em Gerenciamento de capacidade e, em seguida, na guia Reservas de slot.
Clique na reserva a que você quer anexar um conjunto de dados.
Clique na guia Recuperação de desastres.
Clique em Adicionar conjunto de dados de failover.
Insira o nome do conjunto de dados que você quer associar à reserva.
Clique em Adicionar.
SQL
Para anexar um conjunto de dados a uma reserva, use a
instrução DDL ALTER SCHEMA SET OPTIONS.
No console do Google Cloud , acesse a página BigQuery.
No editor de consultas, digite a seguinte instrução:
ALTER SCHEMA `DATASET_NAME` SET OPTIONS ( failover_reservation = ADMIN_PROJECT_ID.RESERVATION_NAME);
Substitua:
DATASET_NAME: o nome do conjunto de dados.ADMIN_PROJECT_ID.RESERVATION_NAME: o nome da reserva a que você quer associar o conjunto de dados.
Clique em Executar.
Para mais informações sobre como executar consultas, acesse Executar uma consulta interativa.
Verificar a configuração
Para verificar o status da sua configuração, consulte a
visualização
INFORMATION_SCHEMA.SCHEMATA_REPLICAS.
PROJECT_ID.`region-REGION`.INFORMATION_SCHEMA.SCHEMATA_REPLICAS[_BY_PROJECT]
Verifique se os conjuntos de dados estão anexados à reserva e às regiões corretas.
Substitua:-
Opcional:
PROJECT_ID: o ID do seu projeto do Google Cloud . Se não for especificado, o projeto padrão será usado. -
REGION: qualquer nome da região do conjunto de dados. Por exemplo,`region-us`.
Exemplos
O exemplo a seguir mostra as etapas para migrar do CRR para o DR com exemplos práticos usando o GoogleSQL. Para este exemplo, considere o seguinte:
Você está trabalhando em um projeto chamado
myproject.Você já criou um conjunto de dados chamado
mydatasete o configurou com CRR.A região principal de
mydatasetéus-central1e a região secundária éus-west1.
Para começar a migrar seu conjunto de dados para a DR, primeiro crie uma reserva com a
edição Enterprise Plus. Neste exemplo, o nome da reserva é myreservation.
CREATE RESERVATION `myproject.region-us-central1.myreservation`
OPTIONS (
slot_capacity = 0,
edition = ENTERPRISE_PLUS,
autoscale_max_slots = 50,
secondary_location = 'us-west-1');
Depois que a reserva for criada, você poderá anexar o conjunto de dados a ela. O exemplo a seguir anexa o conjunto de dados à reserva:
ALTER SCHEMA
`myproject.mydataset`
SET OPTIONS (
failover_reservation = 'myproject.myreservation');
Em seguida, verifique se o conjunto de dados foi anexado.
SELECT
failover_reservation_project_id,failover_reservation_name,
FROM
`myproject`.`region-us-west1`.INFORMATION_SCHEMA.SCHEMATA_REPLICAS
WHERE
schema_name='mydataset';
Os resultados da consulta serão semelhantes a este:
+---------------------------------+---------------------------+ | failover_reservation_project_id | failover_reservation_name | +---------------------------------+---------------------------+ | myproject | myreservation | | myproject | myreservation | +---------------------------------+---------------------------+
A seguir
Para mais informações sobre a replicação entre regiões, consulte Replicação de conjuntos de dados entre regiões.
Para mais informações sobre a recuperação de desastres gerenciada, consulte Recuperação de desastres gerenciada.