Classification
Last updated
Last updated
Redis
ACID (partly)
caching, queing, stats
persistence: in-memory (but snapshoting and append only log) replication: master-slave (for read scalability) clustering is supported
Memcached
no ACID
HTML page cache, SQL result cache
No schema, no joins
Usecase: time series, historical records, high frequent writes low frequent reads
Best for: queries by primary keys, highly partitionable
Cassandra
HBase
Mongo DB
Couchbase
Dynamo DB
Tree-like form. One-to-many relationship. Parent-child relationship. Deletion problem (when parent is deleted all child nodes follow suit). Pointers.
Two-dimensional tables (rows and columns).
Group of objects. Images and other media types (that cannot be kept in relational db). Any object can link to any object. Not the best option for numerical analysis.
Hierarchical model + many-to-many relationships (multiple parent records).
One two-dimensional array of data elements makes up the float data model. The whole table is read to access data. Efficient for minor models only.
Relationships are established in this database model by classifying the object of interest as an entity, and its properties as attributes and these relationships are used to connect various entities. ER diagram is used to show the database’s logical structure simply.
Generalised version of the relational model that enables flexible data representation, it is impossible to distinguish between data and schema in this model because some entities may lack one or more attributes. In contrast, other entities may have additional characteristics that simplify updating the database’s schema.
PostgreSQL
MySQL
MongoDB
SQL vs NoSQL classification
NoSQL distributed document database (JSON) with many of the best features of a relational DBMS: SQL, distributed ACID transactions, and more
These are SQL databases that scale and distribute globally while still providing transactional processing.
CockroachDB is a distributed SQL database built on a transactional and strongly-consistent key-value store. It scales horizontally; survives disk, machine, rack, and even datacenter failures with minimal latency disruption and no manual intervention; supports strongly-consistent ACID transactions; and provides a familiar SQL API for structuring, manipulating, and querying data.
CockroachDB is inspired by Google's Spanner and F1 technologies, and the source code is freely available.
Fully managed relational database with unlimited scale, strong consistency, and up to 99.999% availability.
only in-memory, replication it is common to use consistent hashing and client-side sharding to distribute data across multiple Memcached servers. This approach requires the application to manage data distribution and handle server failures.