NoSQL databases like Cassandra and Couchbase are quickly becoming key components of the modern IT infrastructure. However this modernization creates new challenges – especially for storage. These modern applications all count on DRAM memory to deliver rapid results to user queries, but while memory is fast it is also expensive and there is only so much that can be installed per server.
When these applications run out of RAM they have to fetch data from storage devices and when that happens performance declines…rapidly. There is also the challenge that memory is volatile, new data must be quickly written to persistent storage.
The Problems with NoSQL Architectures
The default design of a NoSQL architecture, like those Cassandra and Couchbase use, leverage commodity white box servers to keep costs down. They cluster servers together creating a scale out architecture that handles both compute and storage needs. In those servers, IT designers implement as much memory and storage as possible.
While both Cassandra and Couchbase are commonly referred to as in-memory database environments, there are three situations where they need to write to more traditional storage:
- When the dataset becomes too large for memory or it needs to be swapped out for a different data set, the application needs to move some of its in-memory data to storage.
- When new data is created it needs to be written to storage synchronously while it is being written to memory.
- When one of the nodes fail, data has to be reloaded back into memory from storage.
Flash Falls Short
Flash is faster than traditional magnetic storage, but still significantly slower than memory. Flash helps ease the pain, but does not solve the problem for any of the three scenarios described. While flash is useful, it does not change the in-memory compute architecture.
New Software for a New Era
NoSQL databases, like Cassandra and Couchbase, as well as flash-based storage devices are starting a new era. But they have to communicate with storage interfaces designed for an old era. What’s developers need to do is provide a new software paradigm that offers faster access to flash-based storage and unifies memory and storage into a seamless pool of storage.
To learn more about the storage challenges NoSQL databases like Cassandra and Couchbase create, why flash falls short and most importantly to learn how to solve NoSQL storage performance problems, join us for our on demand webinar “Overcoming the Storage Challenges Cassandra and Couchbase Create“.