9 Things Your Database Must Do
Today’s databases face unprecedented challenges. They must work with mountains of disparate data, return results in the blink of an eye, and cope with hugely complex technology environments — all while remaining easy to work with and highly available. To meet those challenges, modern database platforms must possess these nine key characteristics:
1. Instant Performance
Modern databases have to respond in less than one millisecond to avoid becoming a performance bottleneck for today’s applications. Databases running on spinning disks simply can’t keep up. A caching layer in DRAM can help speed up common requests to slow databases, but this adds complexity and can’t always serve every request quickly enough. More and more companies are turning to in-memory databases, which can respond in less than one millisecond, with no need for a separate caching layer.
Modern apps work with increasingly large data sets. Companies must plan for cost-effective ways to scale their data platform to meet overall growth (a good problem to have!) while also coping with seasonal surges and unexpected peaks in demand. Linear scaling is critical to making that possible without requiring massive infrastructure investments.
3. High Availability
The inability to quickly recover from a database failure can result in loss of data and frustrated users, an unacceptable problem in everything from financial transactions to online orders. That’s why choosing a database that offers high availability with five-nines (99.999%) uptime is so important.
4. Tiered-Memory Support
Database designers are turning to tiered storage schemes, putting the hottest data in DRAM, while warm data resides on persistent memory options like Flash-based solid-state discs — which are faster than spinning disks but cheaper than DRAM. They’re getting 60–70% of DRAM performance at a much lower cost.
5. Simplicity and Extensibility
Because no single data model can work well with all kinds of data, you can end up deploying multiple databases in the same organization — or even in the same application. So what’s the solution? A multimodel database offers multiple data structures in the same database, cutting complexity and overhead by reducing the need to provision and maintain a different database for each data model required.
6. Advanced Developer Tools
In addition to being simple and versatile, databases must also be easy for developers to use. While command-line interfaces (CLIs) remain the most common way to work with a database platform, there’s increasing demand for a graphical user interface to make it easier to manage the system and support analysts who want to explore and interact with their data visually.
7. Cloud Native (Including Hybrid-Cloud and Multicloud)
The rise of cloud computing means you no longer have to manage the internal workings of the database you use. But it’s not just about buying a Database-as-a-Service (DBaaS)—to maximize cloud benefits, every element of your technology stack has to work with a wide variety of resources delivered via the cloud. Your databases must play well with microservices architectures as well as containers and container orchestration systems, such as Docker and Kubernetes, and work across multicloud and hybrid cloud environments.
8. Open Source DNA
Even the most conservative enterprises now realize there’s no reason not to rely on open source solutions for virtually any database use case. Having open source DNA is essential: it’s the only way to ensure a technology is as extensible as possible, and gets updated as quickly as possible. Plus, roots in open source means that developers address what the community really needs, rather than what a vendor can do or wants to do.
9. NoSQL for the Future
Today, most of your data is likely not structured and would be very difficult to organize in a table, as it is in traditional SQL databases. Now, NoSQL databases put unstructured data in a document and use key-value data storage and search capabilities to find what you’re looking for. SQL databases will never go away, but NoSQL is the future — that’s where the most valuable use cases are being addressed.