Proceedings of the 2019 International Conference on Management of Data 2019
DOI: 10.1145/3299869.3314049
|View full text |Cite
|
Sign up to set email alerts
|

Implementation of Cluster-wide Logical Clock and Causal Consistency in MongoDB

Abstract: MongoDB is a distributed database that supports replication and horizontal partitioning (sharding). MongoDB replica sets consist of a primary that accepts all client writes and then propagates those writes to the secondaries. Each member of the replica set contains the same set of data. For horizontal partitioning, each shard (or partition) is a replica set. This paper discusses the design and rationale behind MongoDB's implementation of a cluster-wide logical clock and causal consistency. The design leveraged… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
16
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
5
4
1

Relationship

2
8

Authors

Journals

citations
Cited by 22 publications
(16 citation statements)
references
References 21 publications
0
16
0
Order By: Relevance
“…There has been a great deal of work both in industry and in the literature to support distributed transactions with varying levels of consistency and scalability. Over the years, many systems with reduced consistency levels have been proposed with the goal of overcoming the scalability challenges of traditional relational database systems [5,15,19,32,35,44,61,64,71]. For many applications, however, isolation levels below serializable permit dangerous anomalies, which may manifest as security vulnerabilities [73].…”
Section: Related Workmentioning
confidence: 99%
“…There has been a great deal of work both in industry and in the literature to support distributed transactions with varying levels of consistency and scalability. Over the years, many systems with reduced consistency levels have been proposed with the goal of overcoming the scalability challenges of traditional relational database systems [5,15,19,32,35,44,61,64,71]. For many applications, however, isolation levels below serializable permit dangerous anomalies, which may manifest as security vulnerabilities [73].…”
Section: Related Workmentioning
confidence: 99%
“…[7] A single snapshot of the data is used for the duration of the transaction. A snapshot is a single point in time view of the data at a distinct cluster time maintained via a cluster-wide logical clock [34]. Once a transaction begins with a snapshot at cluster time, no subsequent writes outside of that transaction's context occurring after that cluster time will be seen within the transaction.…”
Section: Mongodb Transactionsmentioning
confidence: 99%
“…The CAP theorem [Gilbert and Lynch 2002] states that a distributed database cannot at the same time provide consistency, availability, and partition (failure) tolerance. Hence, many such systems choose to sacrifice aspects of data consistency for the sake of availability and fault tolerance [Bailis et al 2013;Chang et al 2008;Lloyd et al 2011;Tyulenev et al 2019]. In those systems different replicas of the database may, at the same point in time, observe different, inconsistent data.…”
Section: Introductionmentioning
confidence: 99%