Cassandra is a leading NoSQL database. This follows leaderless architecture. Following leaderless architecture helps it with high availability but this acts against the consistency. In CAP theorem it is AP, available and partition tolerant.
Cassandra is a collection of peer nodes where every node is equivalent. This database supports write intensive use cases and can scale linearly to support varying write loads.
It is key-value and column-family database.
Table Structure
Every table should have a primary key or row key. This is made of two portions; partition key and cluster key. Consistent hashing is used to determine the node position of a row in a cluster. Partition key is used for consistent hashing.
Write path of cassandra
Every write should tell the table and partition key and cluster key. Partition key determines the node location. Then on that node first the data is written to commit log. Then this data is stored in memtable in sorted string table (SSTable) format. This data structure can be thought as AVL or red-black tree, where the key of the tree node is partition key and the value tree node is a row. This row will have various cells. Each cells’s key will be
Read path of cassandra
Replication and quorum