Mode Écrire dans une région (primaire unique) - AWS Directives prescriptives

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Mode Écrire dans une région (primaire unique)

Le mode d'écriture dans une région est actif-passif et achemine toutes les opérations d'écriture de table vers une seule région active. (DynamoDB n'a pas la notion d'une région active unique ; c'est la couche externe à DynamoDB qui gère cela.) Le mode d'écriture dans une région évite les conflits d'écriture en garantissant que les opérations d'écriture ne concernent qu'une région à la fois. Ce mode d'écriture est utile lorsque vous souhaitez utiliser des expressions conditionnelles ou des transactions. Ces expressions ne sont pas possibles à moins que vous ne sachiez que vous agissez à l'encontre des données les plus récentes. Elles nécessitent donc d'envoyer toutes les demandes d'écriture à une seule région disposant des données les plus récentes.

À terme, des opérations de lecture cohérentes peuvent être effectuées vers n'importe laquelle des régions de réplication pour réduire les latences. Les opérations de lecture hautement cohérentes doivent être effectuées vers la seule région principale.

Mode d'écriture principal unique

Il est parfois nécessaire de modifier la région active en réponse à une défaillance régionale, comme nous le verrons plus loin. Certains utilisateurs modifient régulièrement la région actuellement active, par exemple en mettant en œuvre un follow-the-sundéploiement. Cela place la région active à proximité de la zone géographique la plus active (généralement là où il fait jour, d'où son nom), ce qui se traduit par la latence la plus faible des opérations de lecture et d'écriture. Cela présente également l'avantage d'appeler quotidiennement le code qui change de région et de s'assurer qu'il est bien testé avant toute reprise après sinistre.

La ou les régions passives peuvent conserver une infrastructure réduite autour de DynamoDB qui ne se développe que si elle devient la région active. Ce guide ne couvre pas les modèles de veilleuse et de veille chaude. Pour plus d'informations, vous pouvez lire le billet de blog Disaster Recovery (DR) surAWS, Part III : Pilot Light and Warm Standby.

L'utilisation du mode d'écriture dans une région fonctionne bien lorsque vous utilisez des tables globales pour des opérations de lecture à faible latence et distribuées dans le monde entier. Prenons l'exemple d'une grande entreprise de réseaux sociaux qui doit disposer des mêmes données de référence dans toutes les régions du monde. Ils ne mettent pas souvent à jour les données, mais lorsqu'ils le font, ils écrivent dans une seule région afin d'éviter tout conflit d'écriture potentiel. Les opérations de lecture sont toujours autorisées depuis n'importe quelle région.

À titre d'autre exemple, prenons l'exemple de la société de services financiers évoquée précédemment qui a mis en œuvre le calcul des remises en argent quotidiennes. Ils ont utilisé le mode écriture vers n'importe quelle région pour calculer le solde, mais le mode écriture vers une région pour suivre les remboursements. S'ils veulent récompenser un centime pour chaque tranche de 10$ dépensée, ils doivent, Query pour toutes les transactions effectuées la veille, calculer le total dépensé, inscrire la décision de remboursement dans un nouveau tableau, supprimer l'ensemble d'articles demandé pour les marquer comme consommés, et les remplacer par un article unique contenant le reste qui devrait être pris en compte dans les calculs du lendemain. Ce travail nécessite des transactions. Il fonctionne donc mieux avec le mode d'écriture dans une seule région. Une application peut mélanger les modes d'écriture, même sur la même table, tant que les charges de travail ne risquent pas de se chevaucher.