Questions tagged [eventual-consistency]

Eventual consistency is a consistency model used in distributed computing that informally guarantees that, if no new updates are made to a given data item, eventually all accesses to that item will return the last updated value.

Eventual consistency is widely deployed in distributed systems (often under the moniker of optimistic replication) and has origins in early mobile computing projects. A system that has achieved eventual consistency is often said to have converged, or achieved replica convergence. While stronger models, like linearizability are trivially eventually consistent, the converse does not hold.

Eventually consistent services are often classified as providing BASE (Basically Available, Soft state, Eventual consistency) semantics (in contrast to traditional ACID (Atomicity, Consistency, Isolation, Durability) guarantees).Eventual consistency is sometimes criticized as increasing the complexity of distributed software applications. This is partly because eventual consistency is purely a liveness guarantee (reads eventually return the same value) and does not make safety guarantees: an eventually consistent system can return any value before it converges.

Wikipedia

278 questions
2
votes
1 answer

Cassandra - order of consistency

I know that in Cassandra, there's no strong consistency unless you explicitly request it (and even then, there're no transactions). However, I'm interested in the "order" of consistency. Take the following example: In a database node, there are 3…
cutsoy
  • 10,127
  • 4
  • 40
  • 57
2
votes
1 answer

What is the difference between MonotonicRead and ReadYourWrites in RavenDB?

The default ctor for DocumentConvention in RavenDB (build 888) sets the DefaultQueryingConsistency to MonotonicRead. As I understand it, this means that by default, we'll be waiting for indexes to be updated following a write. Don't get me wrong -…
2
votes
2 answers

Store everything in MongoDB or not? Use SQL alongside? (Eventual consistency)

Me and my colleges are having second thoughts on using MongoDB to store al the data for our application. Some think that because of Mongo's eventual consistency when user register or updates his profile (or something similar but more important) the…
Matjaz Muhic
  • 5,328
  • 2
  • 16
  • 34
1
vote
3 answers

Is S3 Object's Metadata strongly consistent

S3 Objects have eventual consistency for overwrites PUTS and DELETES as mentioned here - http://aws.amazon.com/s3/faqs/#What_data_consistency_model_does_Amazon_S3_employ Is this applicable for both S3 Object and metadata or Object's metadata is read…
vivek garg
  • 283
  • 1
  • 2
  • 15
1
vote
1 answer

What happens to the writetime when 2 rows with the same primary key are inserted at the same time in different nodes?

I wonder if the consistency level used in cassandra has an effect on the WriteTime (time a cell is inserted/updated in cassandra). Context If you have the following table... CREATE TABLE IF NOT EXISTS table1 ( field_1 INT, field_2 …
1
vote
2 answers

Optimistic Locking in BASE style databases

BASE style databases are Soft State and Eventually Consistent. I'm aware that different database management systems vary and their configurations make a huge difference. But let's imagine this: Let's say I have a NoSQL cluster with 2 nodes. It's…
1
vote
1 answer

best practices for One to One relationship by Eventual Consistency

I know eventual consistency, but I would like to know it by simple and practical problem. Assumptions: Assuming these tables: Table microservice_A.ACCOUNT { int AccountId, string AccountName } Table microservice_B.CUSTOMER { int CustomerId, …
1
vote
1 answer

How to resolve Order and Warehouse bounded contexts dependency when eventual consistency is not an option?

I'm working on an order system based on DDD concepts. I'm unsure how to implement the communication between the two bounded contexts Warehouse and Order when eventual consistency is not an option. All examples I found advocate for eventual…
1
vote
1 answer

CQRS Inventory management how to manage eventual consistency when getting stock balance from read store?

How can I manage eventual consistency when getting stock balance (or like bank account balance) from read database when implementing CQRS? I dont want to playback events as I believe it will be a bottleneck. Trying to Implement CQRS for inventory…
1
vote
3 answers

Does using NoSQL make sense for a non-distributed system? (trying to understand eventual consistency)

I have been reading and learning about NoSQL and MongoDB, CouchDB, etc, for the last two days, but I still can't tell if this is the right kind of storage for me. What worries me is the eventual consistency thing. Does that type of consistency only…
HappyDeveloper
  • 12,480
  • 22
  • 82
  • 117
1
vote
1 answer

Applying SAGA pattern in situations where immediate feedback to user is required

Imagine there is an app where a user has a wallet which they can top it up with cash, cash it out or make purchases from an external system, when the user creates a new purchase order, we first deduct the amount from the user’s wallet. Then send an…
1
vote
0 answers

What happens when deleting a not-yet-propagated object in Amazon S3?

Consider an unversioned bucket with only eventual consistency. Suppose I just uploaded an object, and now I delete it. The delete request goes to a server to which the object has not yet propagated. Now, it seems to me, there are just three things…
Nikratio
  • 2,338
  • 2
  • 29
  • 43
1
vote
2 answers

Quorum vs Consensus vs Vector Clock

I am reading about distributed system and getting confused between Quorum, Consensus and Vector Clock. Can someone please explain them with examples?
Kumar
  • 1,536
  • 2
  • 23
  • 33
1
vote
0 answers

Consistently replicate mysql state using debezium

I have multiple DB tables and have setup Debezium connector on the top of it. I want to create denormalized view of original table while keeping consistency of entities (let's say pushing data to elastic search for search). What do i mean by…
best wishes
  • 5,789
  • 1
  • 34
  • 59
1
vote
1 answer

What rules to follow when designing aggragates in DDD?

I am re-designing my side-project to utilize DDD. I am doing this for learning purposes. It's an application for planning home budget and analysis of spendings. One of functionalities of the app is that user registers expenses and divides them into…