A non-relational database that typically includes the following underlying data structures:

  • K/V pair
    • Essentially a giant, distributed hash table/associative array
    • Consistency models can be in a range from eventual consistency to serializability
    • Some are all in-memory and other a combination of in-memory and disk based.
    • Example implementations and Projects
      • CouchDB
      • etcd
      • memcached
      • Redis
      • Riak
  • Wide Column
    • Wide-column, or an extensible record store, uses tables, rows, and columns in a manner that enables heterogeneity of columns between rows in the same table. Sometimes described as a two dimensional key/value store.
    • Example implementations and Projects
  • Graph
    • A database that uses a graph structure comprised of nodes and edges to store data.
    • Example implementations and Projects
      • ArangoDB
      • Neo4j
      • RedisGraph
  • Document Stores
    • Also known a semi-structured databases or one that stores and retrieves document based data structures.
    • All data for a given object is stored in a separate document that can have a unique structure.
    • Example implementations and Projects
      • CouchDB
      • Elasticsearch
      • MongoDB
      • RedisJSON

SSTables and LSM (Log Structured Merge Trees)

Sorted Strings Table