DataStax, a specialist in database software for cloud applications built on the open source foundations of Apache Cassandra and Apache TinkerPop, thinks the time for point solutions to data problems has passed.
Instead, the future of operational database management systems (DBMSs) is support for multiple data models, says Martin Van Ryswyk, executive vice president of Engineering at the Santa Clara, Calif.-based startup.
"With new technology that is so amazing, people are willing to take a point product to solve a problem they couldn't solve before," he says. "But pretty quickly they want a suite. I think now what we're seeing is more of a simmering down. People want platforms that can cover a lot of the problem space."
Gartner analysts Nick Heudecker, Merv Adrian and Etisham Zaidi agree. In their Market Guide for NoSQL DBMSs, published in August last year, the trio wrote: "the future of DBMS architectures and deployments will be multimodels."
They added: "by 2017, all leading operational DBMSs will offer multiple data models, relational and NoSQL, in a single platform."
Today's modern cloud workloads involve numerous components that differ in their data model support requirements, Van Ryswyk explains.
The relational DBMS (RDBMS) ecosystem had a number of things going for it, he adds: it leveraged a vendor agnostic language for developers in the form of SQL, had well-defined separation between logical (developer) and physical (DBA) aspects of the DBMS and drivers by which applications could interact with databases.
On the other hand, RDBMSs don't play well with cloud applications, due to impediments including:
- A master-slave architecture mandating concessions on uptime and resiliency
- Scale and write-and-distribute-anywhere constraints for cloud application workloads
- Strict adherence to logical data layer constructs that value storage efficiency more than application agility
- A rigid data model that makes the use of semi- and unstructured data extremely cost prohibitive at scale
- The sharding architectural "Band-Aid" that increases operational expense exponentially
NoSQL technologies address those challenges, but two issues have created a highly fragmented offering for enterprise customers:
- Polyglot persistence means that customers must either use a limited set of one of the data models (key value, tabular, JSON, graph) or perform extract-transform-load (ETL) operations across data stores; a number of use cases, including master data management (MDM) and customer-360-view mandate ETL, which can increase the total cost of ownership (TCO)
- Each NoSQL vendor's mechanism for interacting with the data store is different, in both its dialect and where they lay on the logical/physical divide; this forces application developers to write abstraction layers if they need more than a single model in their application, and the abstraction layers have to work at different levels across the logical/physical spectrum to keep application development aligned
Sign up for Computerworld eNewsletters.