“SQL” is used both as the name of a language and as a type of database. SQL the language is a structured query language designed for managing data in relational database management systems (RDBMS). Relational database management systems are often called in-memory SQL databases since they use the SQL language. Since the mid-1980s, SQL has been a standard for querying and managing RDBMS data sets.
Relational databases continue to provide the foundation for the world’s transactions. Think about all the credit card transactions being handled by mainframes and large UNIX servers in the data centers of financial services companies.
While NoSQL technologies have existed for decades, they didn’t gain popularity until the early 2000s as organizations sought solutions to house massive quantities of big data at rest more cheaply than they could with RDBMSs, and to be able to handle the higher and higher velocity of incoming data. Web-scale business, which proved to be a great challenge to traditional RDBMSs, provided an ideal use case for NoSQL solutions.
While a SQL database is a defined, concrete concept, NoSQL is not. There is enormous variation in technologies that fall under the NoSQL category (though they generally share some characteristics). Thus, NoSQL is a term used for a broad group of data management technologies which vary in features and functionality but which try to solve some key issues of SQL databases.
VoltDB is the most enterprise-ready, proven NewSQL offering. It combines real-time analytics on flows of data, strong ACID guarantees, familiar SQL data interactivity, and native clustering. For applications that require fast decisions on live streams of data with the speed of NoSQL and strong consistency, VoltDB is the right choice.