2015-09-06 11 views
6

Precedentemente, DynamoDB forniva solo "consistenza finale", obbedendo alla porzione "Disponibilità" e "Tolleranza della partizione" del teorema CAP.DynamoDB sta ancora seguendo il teorema CAP con le sue promesse "Strong Consistency"?

Ma ora, DynamoDB offre un'opzione di "consistenza forte" oltre alla "coerenza finale". Ciò significa che DynamoDB non sta seguendo il teorema CAP?

+0

Sei confuso dalla carta Dynamo che ha rinunciato alla coerenza per la disponibilità. Ma DynamoDB è un servizio totalmente diverso da Dynamo. Nasce con una forte coerenza. – user8303658

risposta

11

DynamoDB, in modalità fortemente coerente, trades against availability:

Quando si invia una richiesta di lettura fortemente coerente, DynamoDB restituisce una risposta con i dati più aggiornati che riflette gli aggiornamenti di tutte le operazioni di scrittura connessi precedenti a cui DynamoDB ha restituito una risposta positiva. Una lettura fortemente coerente potrebbe essere meno disponibile in caso di ritardo o interruzione della rete. Per le operazioni GetItem, Query o Scan, è possibile richiedere un risultato di lettura consistente consistente specificando i parametri opzionali nella richiesta.

Quindi, non vi sono vincoli teorici.

+1

Si potrebbe anche considerare le risposte ProvisionedThroughputExceeded (throttling) e InternalServerError (dinamica di replica lato servizio, problema di rete, ecc.) Dal servizio come indisponibilità. –