Мне не удалось найти какую-либо документацию о том, как, если вообще, DynamoDB обрабатывает конфликты в типах коллекций set
, list
и map
. В настоящее время я понимаю, что DynamoDB использует стратегию победителя последней записи. То есть, если два параллельных автора добавляют оба к набору, одно из этих дополнений может быть потеряно.
Это отличается от двух других баз данных, которые я использовал, Cassandra и Riak. У обоих есть четко определенные стратегии разрешения конфликтов, поскольку они подкрепляют эти типы CRDT. Таким образом, по модулю других режимов отказа параллельные добавления к набору всегда в конечном итоге приводят к обоим добавлениям.
Поскольку эта документация Amazon не распространяется на это, я склонен полагать, что никакого управления конфликтами не существует. Но я бы хотел знать, есть ли у кого-то другая информация и / или информация из первых рук.