Cómo migrar a la recuperación ante desastres administrada

En esta página, se describe cómo migrar de la replicación entre regiones de BigQuery a la recuperación ante desastres administrada de BigQuery.

Descripción general

La replicación entre regiones (CRR) de BigQuery y la recuperación ante desastres (DR) administrada son funciones diseñadas para mejorar la disponibilidad de los datos y las capacidades de recuperación ante desastres. Sin embargo, controlan las interrupciones regionales de diferentes maneras. La CRR no permite ascender la réplica secundaria si la región principal no está disponible. En cambio, la DR ofrece una protección más integral, ya que permite una conmutación por error a la réplica secundaria, incluso si la región principal no está disponible. Con la CRR, solo se replica el almacenamiento, mientras que con la DR se replican tanto el almacenamiento como la capacidad de procesamiento.

En la siguiente tabla, se describen las funciones de CRR y DR:

Función CRR DR
Proceso de replicación inicial Usa la CRR para replicar el conjunto de datos inicialmente. La carga inicial se replica previamente con CRR antes de migrar un conjunto de datos de CRR a un conjunto de datos de DR.
Replicación de promociones Usa la replicación estándar. Usa la replicación turbo.
Proceso de promoción Se promociona a nivel del conjunto de datos. Se promociona a nivel de la reserva (conmutación por error de la reserva y promoción del conjunto de datos). Se pueden adjuntar muchos conjuntos de datos a una reserva de conmutación por error. La promoción a nivel del conjunto de datos no está disponible con la DR.
Ejecución de la promoción A través de la IU o del comando DDL basado en SQL para cada conjunto de datos No hay compatibilidad con la CLI, las bibliotecas cliente, la API ni Terraform. A través de la IU o el comando DDL basado en SQL para cada reserva de EPE. No se admite la CLI, las bibliotecas cliente, la API ni Terraform.
Modo de conmutación por error Conmutación por error suave. Conmutación por error forzada
Requisito de edición Cualquier modelo de capacidad Edición Enterprise Plus.
Limitaciones Limitaciones de la CRR. Incluye las limitaciones de la CRR y las limitaciones de la DR.
Acceso de escritura Los trabajos que se ejecutan en cualquier modelo de capacidad pueden escribir en conjuntos de datos replicados en la región principal. El secundario siempre es de solo lectura. Solo los trabajos que se ejecutan en reservas de Enterprise Plus pueden escribir en conjuntos de datos replicados en la región principal. Las réplicas de conjuntos de datos y reservas secundarios siempre son de solo lectura.
Acceso de lectura Los trabajos que se ejecutan en cualquier modelo de capacidad pueden leer de conjuntos de datos replicados. Los trabajos que se ejecutan en cualquier modelo de capacidad pueden leer de conjuntos de datos replicados.

Implicaciones de la migración

En las siguientes secciones, se proporciona una descripción general de los cambios en el costo y las capacidades que se producen cuando migras a DR.

Implicaciones de costos

Ten en cuenta las siguientes implicaciones de costos cuando migres de CRR a DR:

  • La DR solo admite acceso de escritura desde la edición Enterprise Plus, lo que genera costos de procesamiento más altos. Puedes leer desde cualquier modelo de capacidad, por lo que los costos de lectura de las tareas existentes no cambian.

  • La DR usa la replicación turbo, que genera costos adicionales según el par de regiones.

  • Los precios de almacenamiento son los mismos para la CRR y la DR.

Para obtener más información sobre los precios, consulta Precios.

Implicaciones de las capacidades

Ten en cuenta las siguientes implicaciones de capacidad cuando migres de CRR a DR:

  • La DR solo admite la conmutación por error a nivel de la reserva. Fallan todos los trabajos existentes que dependen del resguardo a nivel del conjunto de datos.

  • Solo las consultas de la edición Enterprise Plus pueden escribir en el conjunto de datos una vez que se adjunta a la reserva de DR. Fallan todos los trabajos de escritura existentes que no usan una edición Enterprise Plus para su capacidad de procesamiento.

Antes de comenzar

Antes de comenzar la migración, familiarízate con los conceptos de la replicación entre regiones y la recuperación ante desastres administrada.

Para migrar a DR, debes cumplir con los siguientes requisitos previos:

  • Tienes un proyecto Trusted Cloud by S3NS activo con BigQuery habilitado.

  • Creaste y replicaste conjuntos de datos con CRR.

  • Los conjuntos de datos tienen las mismas ubicaciones principales y secundarias que deseas usar para la DG.

  • Tienes los permisos necesarios para trabajar con DR. Para obtener más información sobre los permisos, consulta Antes de comenzar.

Cómo migrar de CRR a DR

En las siguientes secciones, se describe cómo migrar tus conjuntos de datos de CRR a DR. Se da por sentado que ya configuraste tus conjuntos de datos para CRR.

Crea una reserva de conmutación por error

Para habilitar la recuperación ante desastres, debes crear una reserva de conmutación por error en la región principal. Configura tu reserva con la región principal y secundaria adecuadas. Las regiones principal y secundaria deben coincidir con las regiones de todos los conjuntos de datos de CRR que deseas migrar a la DR. Para crear una reserva de conmutación por error, elige una de las siguientes opciones:

Console

  1. En la consola de Trusted Cloud , ve a la página BigQuery.

    Ir a BigQuery

  2. En el menú de navegación, haz clic en Administración de la capacidad y, luego, en Crear reserva.

  3. En el campo Nombre de la reserva, ingresa un nombre para la reserva.

  4. En la lista Ubicación, selecciona ubicación.

  5. En la lista Edición, selecciona la edición Enterprise Plus.

  6. En la lista Selector de tamaño máximo de reserva, selecciona el tamaño máximo de reserva.

  7. En el campo Ranuras de referencia, ingresa la cantidad de ranuras del modelo de referencia para la reserva (opcional).

    La cantidad de ranuras disponibles con ajuste de escala automático se determina restando el valor de las ranuras del modelo de referencia del valor del tamaño máximo de la reserva. Por ejemplo, si creas una reserva con 100 ranuras de referencia y un tamaño máximo de reserva de 400, la reserva tiene 300 ranuras de ajuste de escala automático. Para obtener más información sobre las ranuras de referencia, consulta Usa reservas con ranuras de referencia y de ajuste de escala automático.

  8. En la lista Ubicación secundaria, selecciona la ubicación secundaria.

  9. Para inhabilitar el uso compartido de ranuras inactivas y utilizar solamente la capacidad de ranura especificada, haz clic en el botón de activación Ignorar ranuras inactivas.

  10. Para expandir la sección Configuración avanzada, haz clic en la flecha de expansión .

  11. Opcional: Para configurar la simultaneidad de los trabajos de destino, haz clic en el botón de activación Anular la simultaneidad automática del trabajo de destino y, luego, ingresa un valor para la simultaneidad de los trabajos de destino. El desglose de ranuras se muestra en la tabla Estimación de costos. Se muestra un resumen de la reserva en la tabla Resumen de capacidad.

  12. Haz clic en Guardar.

La reserva nueva se puede ver en la pestaña Reservas de ranuras.

SQL

Para crear una reserva, usa la sentencia del lenguaje de definición de datos CREATE RESERVATION (DDL).

  1. En la consola de Trusted Cloud , ve a la página BigQuery.

    Ir a BigQuery

  2. En el editor de consultas, escribe la siguiente oración:

    CREATE RESERVATION
      `ADMIN_PROJECT_ID.region-LOCATION.RESERVATION_NAME`
    OPTIONS (
      slot_capacity = NUMBER_OF_BASELINE_SLOTS,
      edition = ENTERPRISE_PLUS,
      secondary_location = SECONDARY_LOCATION);

    Reemplaza lo siguiente:

    • ADMIN_PROJECT_ID por el ID del proyecto de administración que posee el recurso de reserva
    • LOCATION: Es la ubicación de la reserva. Si seleccionas una ubicación de BigQuery Omni, la opción de edición se limita a Enterprise Edition.
    • RESERVATION_NAME por el nombre de la reserva.

      El nombre comenzar y terminar con una letra minúscula o un número, y contener solo letras minúsculas, números y guiones.

    • NUMBER_OF_BASELINE_SLOTS: es la cantidad de ranuras del modelo de referencia que asignarás a la reserva. No puedes configurar las opciones slot_capacity y edition en la misma reserva.
    • SECONDARY_LOCATION: Es la ubicación secundaria de la reserva. En el caso de una interrupción, los conjuntos de datos conectados a esta reserva se conmutarán por error a esta ubicación.

  3. Haz clic en Ejecutar.

Para obtener más información sobre cómo ejecutar consultas, visita Ejecuta una consulta interactiva.

Adjunta el conjunto de datos a la reserva

Una vez que hayas creado la reserva de conmutación por error, adjúntalos a ella. Esto habilita la conmutación por error para todos los conjuntos de datos adjuntos. Para adjuntar el conjunto de datos a la reserva, elige una de las siguientes opciones:

Console

  1. En la consola de Trusted Cloud , ve a la página BigQuery.

    Ir a BigQuery

  2. En el menú de navegación, haz clic en Administración de la capacidad y, luego, en la pestaña Reservas de ranuras.

  3. Haz clic en la reserva a la que deseas conectar un conjunto de datos.

  4. Haz clic en la pestaña Recuperación ante desastres.

  5. Haz clic en Agregar conjunto de datos de conmutación por error.

  6. Ingresa el nombre del conjunto de datos que deseas asociar a la reserva.

  7. Haz clic en Agregar.

SQL

Para adjuntar un conjunto de datos a una reserva, usa la sentencia de DDL ALTER SCHEMA SET OPTIONS.

  1. En la consola de Trusted Cloud , ve a la página BigQuery.

    Ir a BigQuery

  2. En el editor de consultas, escribe la siguiente oración:

    ALTER SCHEMA
      `DATASET_NAME`
    SET OPTIONS (
      failover_reservation = ADMIN_PROJECT_ID.RESERVATION_NAME);

    Reemplaza lo siguiente:

    • DATASET_NAME: El nombre del conjunto de datos.

    • ADMIN_PROJECT_ID.RESERVATION_NAME: Es el nombre de la reserva a la que deseas asociar el conjunto de datos.

  3. Haz clic en Ejecutar.

Para obtener más información sobre cómo ejecutar consultas, visita Ejecuta una consulta interactiva.

Verifica la configuración

Para verificar el estado de tu configuración, consulta la vista INFORMATION_SCHEMA.SCHEMATA_REPLICAS.

PROJECT_ID.`region-REGION`.INFORMATION_SCHEMA.SCHEMATA_REPLICAS[_BY_PROJECT]

Verifica que los conjuntos de datos estén adjuntos a la reserva correcta en las regiones correctas.

Reemplaza lo siguiente:
  • Opcional: PROJECT_ID es el ID de tu proyecto de Trusted Cloud . Si no se especifica, se usa el proyecto predeterminado.
  • REGION: Cualquier nombre de región del conjunto de datos. Por ejemplo, `region-us`.

Ejemplos

En el siguiente ejemplo, se explican los pasos para migrar de CRR a DR con ejemplos prácticos con GoogleSQL. En este ejemplo, supongamos lo siguiente:

  • Estás trabajando en un proyecto llamado myproject.

  • Ya creaste un conjunto de datos llamado mydataset y lo configuraste con CRR.

  • La región principal de mydataset es us-central1 y la región secundaria es us-west1.

Para comenzar a migrar tu conjunto de datos a la DR, primero crea una reserva con la edición Enterprise Plus. En este ejemplo, el nombre de la reserva es myreservation.

CREATE RESERVATION `myproject.region-us-central1.myreservation`
OPTIONS (
  slot_capacity = 0,
  edition = ENTERPRISE_PLUS,
  autoscale_max_slots = 50,
  secondary_location = 'us-west-1');

Una vez que se crea la reserva, puedes adjuntar el conjunto de datos a la reserva. En el siguiente ejemplo, se adjunta el conjunto de datos a la reserva:

ALTER SCHEMA
  `myproject.mydataset`
SET OPTIONS (
  failover_reservation = 'myproject.myreservation');

Luego, verifica que el conjunto de datos se haya adjuntado correctamente.

SELECT
  failover_reservation_project_id,failover_reservation_name,
FROM
 `myproject`.`region-us-west1`.INFORMATION_SCHEMA.SCHEMATA_REPLICAS
WHERE
 schema_name='mydataset';

Los resultados de esta consulta deberían ser similares a los siguientes:

+---------------------------------+---------------------------+
| failover_reservation_project_id | failover_reservation_name |
+---------------------------------+---------------------------+
| myproject                       | myreservation             |
| myproject                       | myreservation             |
+---------------------------------+---------------------------+

Próximos pasos