Key Value Stores

Essentially, Key Value stores map keys to their assigned values. From data model perspective, they are considered most basic NoSQL data stores because every item in the data store is stored as a key together with its value where data can only be queried by the key (Strauch et al. 2011). Therefore, their application is limited to areas that only query data by a single primary key.

Data model for Key value stores (Adapted from Strauch et al. 2011)

For instance, online retailers such as AMAZON can store information about their products by mapping each Product ID (Key) with information associated with it such as description, price, and quantity available (Values). Companies such as Facebook can store messages by assigning ID to each message and mapping these with associated information such as who send the message, what message was sent and when the message was sent.

Unlike traditional RDBMS, these are schema-less data stores that only support simple operations such as add (key, value), set(key, value), get(key), and delete(key), that do not support joins and real queries, that have high horizontal scalability, and that could handle high variety of simple data with no operational complexity (Seeger 2009; Strauch et al. 2011, Cattell, 2011). Moreover, unlike document-oriented data stores, they cannot support complex data such as nested objects (Cattell, 2011).

Overall, key value stores have following internal strengths and weaknesses, and external opportunities and threats: