Migrer vers la reprise après sinistre gérée
Cette page explique comment migrer de la réplication multirégionale BigQuery vers la reprise après sinistre gérée par BigQuery.
Présentation
La réplication interrégionale (CRR, cross-region replication) et la reprise après sinistre (DR, disaster recovery) gérée de BigQuery sont deux fonctionnalités conçues pour améliorer la disponibilité des données et les capacités de reprise après sinistre. Toutefois, elles gèrent les pannes régionales de différentes manières. La réplication interrégionale ne permet pas de promouvoir l'instance répliquée secondaire si la région principale est indisponible. En revanche, la reprise après sinistre offre une protection plus complète en permettant un basculement vers l'instance répliquée secondaire, même si la région principale est indisponible. Avec la réplication interrégionale, seul le stockage est répliqué, tandis qu'avec la reprise après sinistre, la capacité de stockage et de calcul est répliquée.
Le tableau suivant décrit les fonctionnalités de la CRR et de la reprise après sinistre :
Fonctionnalité | CRR | DR (reprise après sinistre) |
---|---|---|
Processus de réplication initial | Utilise CRR pour répliquer l'ensemble de données initialement. | La charge initiale est répliquée avec CRR avant de migrer un ensemble de données CRR vers un ensemble de données DR. |
Réplication des promotions | Utilise la réplication standard. | Utilise la réplication turbo. |
Processus de promotion | Promouvoir au niveau de l'ensemble de données. | Promotions au niveau de la réservation (basculement de la réservation et promotion de l'ensemble de données). Vous pouvez associer plusieurs ensembles de données à une même réservation de basculement. La promotion au niveau de l'ensemble de données n'est pas disponible avec DR. |
Exécution des promotions | À l'aide de l'interface utilisateur ou d'une commande LDD basée sur SQL pour chaque ensemble de données. La CLI, les bibliothèques clientes, l'API et Terraform ne sont pas compatibles. | Via l'UI ou une commande LDD basée sur SQL pour chaque réservation EPE. La CLI, les bibliothèques clientes, l'API et Terraform ne sont pas compatibles. |
Mode de basculement | Basculement progressif. | Basculement forcé. |
Édition requise | Tout modèle de capacité. | Édition Enterprise Plus. |
Limites | Limites du CRR | Inclut les limites de la couverture et de la fréquence et les limites de la durée et de la fréquence. |
Accès en écriture | Les jobs exécutés sous n'importe quel modèle de capacité peuvent écrire dans des ensembles de données répliqués dans la région principale. Le secondaire est toujours en lecture seule. | Seules les tâches exécutées sous des réservations Enterprise Plus peuvent écrire dans des ensembles de données répliqués dans la région principale. Les répliques secondaires d'ensembles de données et de réservations sont toujours en lecture seule. |
Accès en lecture | Les tâches exécutées sous n'importe quel modèle de capacité peuvent lire des ensembles de données répliqués. | Les tâches exécutées sous n'importe quel modèle de capacité peuvent lire des ensembles de données répliqués. |
Implications de la migration
Les sections suivantes présentent les modifications apportées aux coûts et aux fonctionnalités lorsque vous migrez vers la reprise après sinistre.
Implications en termes de coûts
Tenez compte des implications financières suivantes lorsque vous migrez de la CRR vers la reprise après sinistre :
La reprise après sinistre n'est compatible qu'avec l'accès en écriture de l'édition Enterprise Plus, qui entraîne des coûts de calcul plus élevés. Vous pouvez lire à partir de n'importe quel modèle de capacité. Les coûts de lecture pour les jobs existants ne changent donc pas.
La reprise après sinistre utilise la réplication turbo, qui entraîne des coûts supplémentaires en fonction de la paire de régions.
Les tarifs de stockage sont les mêmes pour la réplication interrégionale et la reprise après sinistre.
Pour en savoir plus sur les tarifs, consultez la page Tarifs.
Implications en termes de fonctionnalités
Tenez compte des implications suivantes en termes de fonctionnalités lorsque vous migrez de la CRR vers la reprise après sinistre :
La reprise après sinistre n'est compatible qu'avec le basculement au niveau de la réservation. Toutes les tâches existantes qui s'appuient sur le basculement au niveau de l'ensemble de données échouent.
Seules les requêtes de l'édition Enterprise Plus peuvent écrire dans l'ensemble de données une fois qu'il est associé à la réservation de reprise après sinistre. Toutes les tâches d'écriture existantes qui n'utilisent pas l'édition Enterprise Plus pour leur capacité de calcul échouent.
Avant de commencer
Avant de commencer la migration, familiarisez-vous avec les concepts de réplication interrégionale et de reprise après sinistre gérée.
Pour migrer vers la reprise après sinistre, vous devez remplir les conditions préalables suivantes :
Vous disposez d'un projet Trusted Cloud by S3NS actif pour lequel BigQuery est activé.
Vous avez créé et répliqué des ensembles de données avec la CRR.
Les ensembles de données ont les mêmes emplacements principal et secondaire que vous souhaitez utiliser pour la reprise après sinistre.
Vous disposez des autorisations nécessaires pour utiliser DR. Pour en savoir plus sur les autorisations, consultez Avant de commencer.
Migrer de CRR vers DR
Les sections suivantes décrivent comment migrer vos ensembles de données de la reprise après sinistre interrégionale vers la reprise après sinistre. Elles supposent que vous avez déjà configuré vos ensembles de données pour la reprise après sinistre interrégionale.
Créer une réservation de basculement
Pour activer la reprise après sinistre, vous devez créer une réservation de basculement dans la région principale. Configurez votre réservation avec la région principale et la région secondaire appropriées. Les régions principale et secondaire doivent correspondre à celles de tous les ensembles de données CRR que vous prévoyez de migrer vers la reprise après sinistre. Pour créer une réservation de basculement, choisissez l'une des options suivantes :
Console
Dans la console Trusted Cloud , accédez à la page BigQuery.
Dans le menu de navigation, cliquez sur Gestion de la capacité, puis sur Créer une réservation.
Dans le champ Nom de la réservation, saisissez un nom pour la réservation.
Dans la liste Emplacement, sélectionnez un emplacement.
Dans la liste Édition, sélectionnez l'édition Enterprise Plus.
Dans la liste Sélecteur de taille de réservation maximale, sélectionnez la taille de réservation maximale.
Facultatif : dans le champ Emplacements de référence, saisissez le nombre d'emplacements de référence pour la réservation.
Le nombre d'emplacements d'autoscaling disponibles est déterminé en soustrayant la valeur Emplacements de référence de la taille maximale de réservation. Par exemple, si vous créez une réservation avec 100 emplacements de référence et une taille de réservation maximale de 400, votre réservation comporte 300 emplacements d'autoscaling. Pour en savoir plus sur les emplacements de référence, consultez la section Utiliser des réservations avec des emplacements de référence et d'autoscaling.
Dans la liste Emplacement secondaire, sélectionnez l'emplacement secondaire.
Pour désactiver le partage d'emplacements inactifs et n'utiliser que la capacité d'emplacements spécifiée, cliquez sur le bouton Ignorer les emplacements inactifs.
Pour développer la section Paramètres avancés, cliquez sur la flèche de développement
.Facultatif : Pour définir la simultanéité de job cible, cliquez sur le bouton Ignorer la simultanéité de job cible automatique, puis saisissez une valeur pour la simultanéité de job cible. La répartition des emplacements est affichée dans le tableau Estimation des coûts. Un résumé de la réservation est affiché dans le tableau Récapitulatif de la capacité.
Cliquez sur Enregistrer.
La nouvelle réservation est visible dans l'onglet Réservations d'emplacements.
SQL
Pour créer une réservation, utilisez l'instruction LDD (langage de définition de données) CREATE RESERVATION
.
Dans la console Trusted Cloud , accédez à la page BigQuery.
Dans l'éditeur de requête, saisissez l'instruction suivante :
CREATE RESERVATION `ADMIN_PROJECT_ID.region-LOCATION.RESERVATION_NAME` OPTIONS ( slot_capacity = NUMBER_OF_BASELINE_SLOTS, edition = ENTERPRISE_PLUS, secondary_location = SECONDARY_LOCATION);
Remplacez les éléments suivants :
ADMIN_PROJECT_ID
: ID du projet d'administration propriétaire de la ressource de réservation.LOCATION
: emplacement de la réservation. Si vous sélectionnez un emplacement BigQuery Omni, votre option d'édition est limitée à l'édition Enterprise.RESERVATION_NAME
: nom de la réservation.Le nom doit commencer et se terminer par une lettre minuscule ou un chiffre, et ne contenir que des lettres minuscules, des chiffres et des tirets.
NUMBER_OF_BASELINE_SLOTS
: nombre d'emplacements de référence à allouer à la réservation. Vous ne pouvez pas définir les optionsslot_capacity
etedition
dans la même réservation.SECONDARY_LOCATION
: emplacement secondaire de la réservation. En cas de panne, tous les ensembles de données associés à cette réservation basculeront vers cet emplacement.
Cliquez sur
Exécuter.
Pour en savoir plus sur l'exécution des requêtes, consultez Exécuter une requête interactive.
Associer l'ensemble de données à la réservation
Une fois la réservation de basculement créée, associez-y votre ou vos ensembles de données interrégionaux. Cela permet le basculement pour tous les ensembles de données associés. Pour associer l'ensemble de données à la réservation, choisissez l'une des options suivantes :
Console
Dans la console Trusted Cloud , accédez à la page BigQuery.
Dans le menu de navigation, cliquez sur Gestion de la capacité, puis sur l'onglet Réservations d'emplacements.
Cliquez sur la réservation à laquelle vous souhaitez associer un ensemble de données.
Cliquez sur l'onglet Reprise après sinistre.
Cliquez sur Ajouter un ensemble de données de basculement.
Saisissez le nom de l'ensemble de données que vous souhaitez associer à la réservation.
Cliquez sur Ajouter.
SQL
Pour associer un ensemble de données à une réservation, utilisez l'instruction LDD ALTER SCHEMA SET OPTIONS
.
Dans la console Trusted Cloud , accédez à la page BigQuery.
Dans l'éditeur de requête, saisissez l'instruction suivante :
ALTER SCHEMA `DATASET_NAME` SET OPTIONS ( failover_reservation = ADMIN_PROJECT_ID.RESERVATION_NAME);
Remplacez les éléments suivants :
DATASET_NAME
: nom de l'ensemble de données.ADMIN_PROJECT_ID.RESERVATION_NAME
: nom de la réservation à laquelle vous souhaitez associer l'ensemble de données.
Cliquez sur
Exécuter.
Pour en savoir plus sur l'exécution des requêtes, consultez Exécuter une requête interactive.
Vérifier la configuration
Pour vérifier l'état de votre configuration, interrogez la vue INFORMATION_SCHEMA.SCHEMATA_REPLICAS
.
PROJECT_ID.`region-REGION`.INFORMATION_SCHEMA.SCHEMATA_REPLICAS[_BY_PROJECT]
Vérifiez que les ensembles de données sont associés à la bonne réservation dans les régions appropriées.
Remplacez l'élément suivant :-
PROJECT_ID
(facultatif) : ID de votre projet Trusted Cloud . Si non spécifié, le projet par défaut est utilisé. -
REGION
: tout nom de région d'ensemble de données. Par exemple,`region-us`
.
Exemples
L'exemple suivant vous explique comment migrer de la CRR vers la reprise après sinistre à l'aide d'exemples pratiques utilisant GoogleSQL. Pour cet exemple, supposons ce qui suit :
Vous travaillez sur un projet appelé
myproject
.Vous avez déjà créé un ensemble de données nommé
mydataset
et l'avez configuré avec le CRR.La région principale de
mydataset
estus-central1
et la région secondaire estus-west1
.
Pour commencer à migrer votre ensemble de données vers la reprise après sinistre, créez d'abord une réservation avec l'édition Enterprise Plus. Dans cet exemple, le nom de la réservation est myreservation
.
CREATE RESERVATION `myproject.region-us-central1.myreservation`
OPTIONS (
slot_capacity = 0,
edition = ENTERPRISE_PLUS,
autoscale_max_slots = 50,
secondary_location = 'us-west-1');
Une fois la réservation créée, vous pouvez y associer l'ensemble de données. L'exemple suivant associe l'ensemble de données à la réservation :
ALTER SCHEMA
`myproject.mydataset`
SET OPTIONS (
failover_reservation = 'myproject.myreservation');
Vérifiez ensuite que l'ensemble de données a bien été associé.
SELECT
failover_reservation_project_id,failover_reservation_name,
FROM
`myproject`.`region-us-west1`.INFORMATION_SCHEMA.SCHEMATA_REPLICAS
WHERE
schema_name='mydataset';
Les résultats de cette requête doivent ressembler à ce qui suit :
+---------------------------------+---------------------------+ | failover_reservation_project_id | failover_reservation_name | +---------------------------------+---------------------------+ | myproject | myreservation | | myproject | myreservation | +---------------------------------+---------------------------+
Étape suivante
Pour en savoir plus sur la réplication interrégionale, consultez Réplication interrégionale d'ensembles de données.
Pour en savoir plus sur la reprise après sinistre gérée, consultez Reprise après sinistre gérée.