# System components

we will discuss the following core components and techniques used to build a key-value store:&#x20;

* Data partition&#x20;
* Data replication&#x20;
* Consistency&#x20;
* Inconsistency resolution&#x20;
* Handling failures&#x20;
* System architecture diagram&#x20;
* Write path&#x20;
* Read path

The content below is largely based on three popular key-value store systems: Dynamo, Cassandra, and BigTable.
