Types de région

Cette page décrit les différents types de régions disponibles dans Spanner :

  • Régions de lecture/écriture
  • Régions de lecture seule
  • Régions témoins

Régions de lecture/écriture

Chaque configuration birégionale comporte deux régions en lecture/écriture, chacune contenant deux instances répliquées en lecture/écriture et une instance répliquée témoin. Les instances répliquées en lecture/écriture se comportent de la même manière que celles d'une configuration multirégionale.

Chaque configuration multirégionale contient deux régions de lecture/écriture, chacune contenant deux instances répliquées en lecture/écriture.

L'une de ces régions en lecture/écriture est désignée comme région principale par défaut. Une instance principale est sélectionnée parmi les répliques de la région principale par défaut pour chaque fractionnement. En cas de défaillance de l'instance dupliquée principale, l'autre instance dupliquée de la région principale par défaut prend sa place. En réalité, les instances principales procèdent elles-mêmes à des vérifications d'état et peuvent renoncer de façon préemptive au leadership si elles se rendent compte qu'elles ne sont pas opérationnelles. Dans la plupart des cas, lorsque la région principale par défaut revient à un état opérationnel, une instance répliquée de cette région reprend automatiquement le rôle d'instance principale.

Les écritures sont d'abord traitées dans la région principale par défaut. Vous pouvez surveiller le pourcentage de réplicas dans une région donnée à l'aide de la métrique de surveillance instance/leader_percentage_by_region. Pour en savoir plus, consultez Métriques Spanner.

La deuxième région de lecture/écriture contient des répliques supplémentaires qui traitent les lectures et participent aux votes de validation des écritures. Ces instances répliquées supplémentaires dans la deuxième région en lecture-écriture peuvent être des instances principales. Dans le cas peu probable où toutes les instances répliquées de la région principale par défaut seraient perdues, de nouvelles instances répliquées principales sont choisies dans la deuxième région de lecture/écriture.

Vous pouvez configurer la région principale d'une base de données en suivant les instructions de la section Modifier la région principale d'une base de données. Pour en savoir plus, consultez Configurer la région principale par défaut.

Si vous le souhaitez, vous pouvez attribuer l'état Région de bail de lecture aux régions de lecture/écriture non principales. Les régions de bail de lecture aident votre base de données à réduire la latence de lecture forte dans les instances birégionales ou multirégionales. Toutefois, les écritures présentent une latence plus élevée lorsque vous utilisez un bail de lecture.

Régions de lecture seule

Les régions de lecture seule contiennent des instances dupliquées en lecture seule qui peuvent diffuser des opérations de lecture à faible latence aux clients situés en dehors des régions de lecture/écriture. Les instances répliquées en lecture seule conservent une copie complète de vos données, qui est répliquée à partir des instances répliquées en lecture/écriture. Ils ne participent pas aux votes de validation des écritures et ne contribuent pas à la latence d'écriture.

Certaines configurations multirégionales de base contiennent des instances répliquées en lecture seule. Vous pouvez également créer une configuration d'instance personnalisée et ajouter des instances répliquées en lecture seule à vos configurations d'instance régionales et multirégionales personnalisées pour mettre à l'échelle les lectures et prendre en charge les lectures non actualisées à faible latence. Les instances répliquées avec accès en lecture ne fonctionnent pas comme une solution de reprise après sinistre autonome. La disponibilité des instances est déterminée par le quorum des répliques votantes. Si l'instance Spanner est mise hors connexion, les répliques en lecture seule le sont également peu de temps après et ne peuvent pas traiter les lectures, y compris les lectures non actualisées. Toutes les répliques en lecture seule sont soumises aux coûts de capacité de calcul et de stockage de base de données.

De plus, l'ajout d'instances répliquées en lecture seule à une configuration d'instance ne modifie pas les SLA Spanner de la configuration d'instance. Pour en savoir plus, consultez Instances répliquées avec accès en lecture.

Si vous le souhaitez, pour réduire la latence de lecture des transactions qui nécessitent une cohérence forte, vous pouvez accorder le statut de région de bail de lecture aux régions en lecture seule qui ne sont pas des régions responsables. Les régions de bail de lecture aident votre base de données à réduire la latence des lectures fortes dans les instances birégionales ou multirégionales. Toutefois, les écritures présentent une latence plus élevée lorsque vous utilisez un bail de lecture.

Régions témoins

Une région témoin contient une instance répliquée témoin, qui est utilisée pour former un quorum d'écriture et voter sur les écritures. Chaque mutation Spanner nécessite un quorum d'écriture composé d'une majorité d'instances répliquées votantes (pour les configurations birégionales, le quorum nécessite deux instances répliquées de chaque région). Les témoins deviennent importants dans le cas rare où les régions en lecture et en écriture deviennent indisponibles. Seules les configurations birégionales et multirégionales contiennent des régions témoins. Pour en savoir plus sur les régions principales et les instances répliquées de vote, consultez Réplication.

Étapes suivantes