Click here to learn more about author Jeff Boehm.
In the history of computing, the introduction of the relational database helped spark an explosion of application development and delivery. Yet while that technology has experienced improvements over the decades, it’s built on 30-year-old concepts of computing.
Modern day organizations have a clear strategy toward globalization as a mechanism for gaining market share. The past dozen years have driven us toward an increasingly mobile-focused economy, while the advent of cloud computing lets organizations capitalize on commodity hardware, migrate toward an operational expense structure, and elastically scale to meet growing and variable demand.
Hindered by an architecture deeply rooted in single-server computing, legacy relational databases have attempted to adapt to the new imperatives created by these trends through workarounds and add-on products. Not surprisingly, such workarounds – in addition to adding significant complexity and cost – often fail to adequately meet requirements. As a result, it’s no wonder that there’s been a recent explosion of interest in alternatives.
Traditional relational database vendors struggle to support the cloud, as well as elastic scale and continuous availability requirements, while NoSQL database vendors try to retroactively add ACID and SQL-like capabilities to theirs. Organizations want the capabilities of both SQL and NoSQL solutions, and they don’t want to run multiple databases, nor do they want to settle for a solution that addresses the problem obliquely or poorly. This underscores how today’s dynamic data world, filled with on-demand expectations, requires a next generation database.
A New Class of Databases
In a recent issue of the academic journal Sigmod Record, 451 Research Analyst Matt Aslett and Professor Andrew Pavlo of Carnegie Mellon University published a paper entitled, “What’s Really New with NewSQL,” in which they discuss at length the recent emergence of a new category of databases.
The paper describes NewSQL as a new class of database management systems that “want to achieve the same scalability of NoSQL DBMSs from the 2000s, but still keep the relational model (with SQL) and transaction support of the legacy DBMSs from the 1970–80s.”
NewSQL databases combine the distributed architectures typically seen in NoSQL systems with a multi-node concurrency scheme and unique storage mechanisms to maintain Atomicity, Consistency, Isolation, and Durability (ACID) guarantees. These novel architectures enable NewSQL databases to address the trends outlined in the beginning of this article.
Conditioned by a drastic shift toward instant access, continuous availability, and pay-per-use models in the consumer world, businesses increasingly expect the same behavior out of applications they use in work environments. These trends are most clearly encapsulated by the rapid adoption of cloud applications. In fact, IDC estimates that by 2019, cloud software will account for $1 out of every $4.59 spent on software.[1]
With NewSQL, traditional SQL database users have the ability to scale-out, often on-demand, without affecting application logic or violating the transaction model. These databases offer traditional SQL and support for familiar tools – making it not only possible, but easy to migrate from scale-up, client-server architectures to cloud and hybrid or multi-datacenter deployments.
For the NoSQL users, NewSQL means they can continue to run scale-out services but now have simplified administration, full ACID compliance, and a familiar ecosystem of SQL tools. Most importantly, ACID transactional compliance simplifies applications, because application programmers don’t have to concern themselves with the reliability of the data. This greatly reduces costs and increases the quality of applications. Lastly users can free themselves of proprietary NoSQL APIs, which reduces lock-in and training costs and enables an ecosystem of database-independent supporting tools.
Of course, NewSQL solutions aren’t appropriate for all use cases – no single database is. But NewSQL provides a compelling way to capitalize on the promises of cloud technologies: lower costs through commodity infrastructure and a move away from pre-provisioning, scaling elastically to match growing and variable demand, and high (even continuous) availability without requiring a redundant system.
[1] IDC, “Worldwide SaaS and Cloud Software 2015-2019 Forecast and 2014 Vendor Shares,”B. McGrath, R. Majowald, Aug 2015