NewSQL Databases

Whenever we need to choose databases for OLTP or scalablity we immediately choose NoSql over SQL. And in recent days people started considering time series databases because throughput is a major requirement for everyone. But how many of us are aware that there is another category of database called NewSQL which is also a good choice for OLTP or scalability. I recently came across this term when I was exploring about a database called VoltDB.

What is NewSQL?

NewSQL is relational database management systems provide the same scalable performance of NoSQL systems for OLTP (online transaction processing) read-write workloads while maintaining the ACID guarantees of a traditional database system.

Distinguishing feature of NewSQL over NoSQL will be SQL interface and relational data model. NewSQL are designed in a way so that it supports distribute storage of data that is each nodes stores subset of actual data. Thus this systems supports distributed query processing, distributed storage, transactional processing. Some NewSQL databases supports HTAP (hybrid transactional/analytical processing).

Storage Engines

The interesting part is some databases have highly optimized new storage engines like TokuDB, MyRocks, Infobright.

Here are some NewSQL Databases:

  • Amazon Aurora
  • Apache Trafodion
  • HarperDB
  • Altibase
  • c-treeACE
  • CLustrix DB
  • CockroachDB
  • MemSQL
  • NuoDB
  • VoltDB
  • Google Spanner