Abstract

Internet has become so widespread that most popular websites are accessed by hundreds of millions of people on a daily basis. Monolithic architectures, which were frequently used in the past, were mostly composed of traditional relational database management systems, but quickly have become incapable of sustaining high data traffic very common these days. Meanwhile, NoSQL databases have emerged to provide some missing properties in relational databases like the schema-less design, horizontal scaling, and eventual consistency. This paper analyzes and compares the consistency model implementation on five popular NoSQL databases: Redis, Cassandra, MongoDB, Neo4j, and OrientDB. All of which offer at least eventual consistency, and some have the option of supporting strong consistency. However, imposing strong consistency will result in less availability when subject to network partition events.

Highlights

  • Consistency can be defined by how the copies from the same data may vary within the same replicated database system [1]

  • Our study is different from all these works by purposing a comparative theoretical analysis of the five of the most popular NoSQL databases in the industry, Redis, MongoDB, Cassandra, Neo4j, and OrientDB, and evaluate how they implement consistency

  • We studied the consistency models implemented by five popular NoSQL database systems: Redis, Cassandra, MongoDB, Neo4j, and OrientDB

Read more

Summary

Introduction

Consistency can be defined by how the copies from the same data may vary within the same replicated database system [1]. The “traditional” monolithic database architecture, based on a powerful server, does not guarantees the high availability and network partition required by today’s web-scale systems, as demonstrated by the CAP (Consistency, Availability, and Network Partition Tolerance) theorem [3]. To achieve such requirements, systems cannot impose strong consistency. Horizontal scaling may seem preferable, CAP theorem shows that when network partitions occur, one has to opt between availability and consistency [4] To help solve this problem, NoSQL database systems have emerged.

Related Work
Consistency Models
Strong Consistency
Weak Consistency
Eventual Consistency
Causal Consistency
Read-your-writes Consistency
Session Consistency
Monotonic Reads Consistency
Monotonic Writes Consistency
NoSQL Databases Background
Cassandra
MongoDB
OrientDB
NoSQL Consistency Implementations
QUORUM Read Consistency Level and ONE Write Consistency Level
ONE Read Consistency Level and ONE Write Consistency Level
Summary
Findings
Conclusions and Future Work
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.