NoSQL Data Stores in Research and Practice
The unprecedented scale at which data is consumed and generated today has shown a large demand for scalable data management and given rise to non-relational, distributed "NoSQL" database systems. Two central problems triggered this process: 1) vast amounts of user-generated content in modern applications and the resulting requests loads and data volumes 2) the desire of the developer community to employ problem-specific data models for storage and querying. To address these needs, various data stores have been developed by both industry and research, arguing that the era of one-size-fits-all database systems is over. The heterogeneity and sheer amount of these systems - now commonly referred to as NoSQL data stores - make it increasingly difficult to select the most appropriate system for a given application. Therefore, these systems are frequently combined in polyglot persistence architectures to leverage each system in its respective sweet spot. This tutorial gives an in-depth survey of the most relevant NoSQL databases to provide comparative classification and highlight open challenges. To this end, we analyze the approach of each system to derive its scalability, availability, consistency, data modeling and querying characteristics. We present how each system's design is governed by a central set of trade-offs over irreconcilable system properties. We then cover recent research results in distributed data management to illustrate that some shortcomings of NoSQL systems could already be solved in practice, whereas other NoSQL data management problems pose interesting and unsolved research challenges.
Full Stack Developer, Baqend
Erik Witt is a Full Stack developer and perforamance engineer at Baqend. There he deals with building and optimizing scalable web applications for the cloud. As the highlight of his master's degree at the university and in cooperation with Baqend he developed a web-caching-based transaction concept for distributed cloud databases.
CEO, Baqend GmbH
Felix Gessert (28) is CEO and co-founder of Baqend. Baqend develops a cloud backend to help programmers build instantly-loading websites with a novel caching algorithm. Felix is also currently finishing his PhD at the database research group at the University of Hamburg, where he created the technical foundations of Baqend. His major interests are scalable database systems, transactions, web technologies for cloud data management and steaks. Felix is passionate about leveraging and improving NoSQL systems and frequently talks and writes about the related research and practical challenges.