WHAT’S IN THIS CHAPTER?
In recent years, NoSQL has become a buzzword, and there are dozens of popular projects that fall under this somewhat broad term. Essentially, NoSQL is a covering term for a range of storage solutions that eschew relational models in favor of a more back-to-basics approach. They have been hailed by some as the solution to scalability problems in traditional relational database management systems (RDBMSs).
Although RDBMSs such as MySQL are invaluable in some situations (think of how useful ACID compliance is for handling online financial transactions), in many cases, they are overkill. You don’t need the full power of a relational database simply to select, say, a list of configuration options from a single table. NoSQL solutions fill this gap, offering lightweight data storage with a range of features. Some are simple in memory key-value stores, whereas others provide built-in scaling, support for joins, and some degree of ACID compliance.
Unfortunately, NoSQL has been a classic example of the so-called “hype cycle.” Early hype around NoSQL promised that it would be a silver bullet for data storage that would spell the end of relational databases. This led to frenzied adoption, even ...