6.4 C
New York

Présentation du verrouillage et des écritures conditionnelles dans AWS DynamoDB


Verrouillage optimiste est une stratégie pour garantir que l’élément côté shopper que vous mettez à jour (ou supprimez) est le même que l’élément dans DynamoDB. La simultanéité optimiste dépend de la vérification d’une valeur lors de l’enregistrement pour s’assurer qu’elle n’a pas changé. Si vous utilisez cette stratégie, vos écritures de base de données sont protégées contre l’écrasement par les écritures d’autres personnes, et vice-versa.

Par défaut, les opérations d’écriture DynamoDB (PutItem, UpdateItem, DeleteItem) sont inconditionnel: chacune de ces opérations écrasera un élément existant qui a la clé primaire spécifiée.

DynamoDB prend éventuellement en cost les écritures conditionnelles pour ces opérations. Une écriture conditionnelle ne réussira que si les attributs de l’élément remplissent une ou plusieurs circumstances attendues. Sinon, il renvoie une erreur. Les écritures conditionnelles sont utiles dans de nombreuses conditions. Par exemple, vous voudrez peut-être un PutItem l’opération ne réussisse que s’il n’y a pas déjà un élément avec la même clé primaire. Ou vous pourriez empêcher un UpdateItem opération de modifier un élément si l’un de ses attributs a une certaine valeur. Les écritures conditionnelles sont utiles dans les cas où plusieurs utilisateurs tentent de modifier le même élément.

Dans le equipment AWS SDK pour PHP, il existe un PessimisticLockingStrategy classe pour DynamoDB. Cette stratégie de verrouillage utilise un verrouillage pessimiste (similaire au fonctionnement du gestionnaire de session PHP natif) pour garantir que les periods ne sont pas modifiées pendant qu’un autre processus y lit/écrit. Le verrouillage pessimiste peut être coûteux et peut augmenter les latences, en particulier dans les cas où l’utilisateur peut accéder à la session plusieurs fois en même temps (par exemple, ajax, iframes ou plusieurs onglets de navigateur).

Related Articles

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici

Latest Articles