Key-Value data stores are getting more and more popular besides traditional relational database systems, outstripping the relational data model to create an easily scalable and maintainable service, primarily driven by fast growing web based solutions.
Storing the data in memory rather than disks, the response times can be much faster while the Key-Value architecture scales well with the huge size of data.
More than giving an overview about the existing and industry-wide used Key-Value database solutions, this paper is introducing a self-developed prototype, able to store and retrieve data in a distributed environment. The topics this research is focusing on are the optimal storage model in memory and the coordination of the distributed service.
The key challenge of distributed database systems is to provide the proper level of consistency while storing huge amount of data in replicated service architecture. Aware of the limitations proved by the CAP theorem, the fast growing NoSQL solutions address these problems in different way. This is a pretty new field of knowledge and the technology changes fast to keep track with the rapidly changing requirements of the new generation web based services. Moreover, the underlying infrastructure technology is moving from vertical capacity growing to horizontal scalability.
In my current thesis I am comparing the current NoSQL solutions how their features and services to address the new challenges and possibilities, and I design my own key-value data store based on the results.