Jump to content

NewSQL

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Apavlo (talk | contribs) at 02:11, 8 October 2012 (Wrote new NewSQL article.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

NewSQL is a class of modern relational database management systems that seek to provide the same scalable performance of NoSQL systems for OLTP workloads while still maintaining the ACID guarantees of a traditional single-node database system.[1][2][3]. The applications targeted by NewSQL systems are characterized as having a large number of transactions that (1) are short-lived (i.e., no user stalls), (2) touch a small subset of data using index look-ups (i.e., no full table scans or large distributed joins), and (3) are repetitive (i.e., executing the same queries with different inputs)[4]. Many NewSQL systems achieve high performance and scalability by eschewing much of the legacy architecture of the original System R design, such as heavy weight recovery or concurrency control algorithms[5]

History

The term was first used by Matthew Aslett in a 2011 white paper discussing the rise of new database systems as challengers to established vendors[1]. Many enterprise systems that handle high-profile data (e.g., financial and order processing systems) also need to be able to scale but are unable to use NoSQL solutions because they cannot give up strong transactional and consistency requirements [1] [6]. The only options previously available for these organizations were to either purchase a more powerful single-node machine or develop custom middleware that distributes queries over traditional DBMS nodes. Both approaches are prohibitively expensive and thus are not an option for many. Thus, in this paper, Aslett discusses how NewSQL upstarts are poised to challenge the supremacy of commercial vendors, in particular Oracle.

Systems

Although NewSQL systems vary greatly in their internal architectures, the two distinguishing features common amongst them is that they all support the relational data model and use SQL as their primary interface[7]. One of the first known NewSQL systems is the H-Store parallel database system, as it was the first to propose a completely new system design for processing OLTP workloads[8][9].

NewSQL systems can be loosely grouped into three categories: [10] [11]

New Architectures

The first type of NewSQL systems are completely brand new database platforms. They are designed to operate in a distributed cluster of shared-nothing nodes. The first commercial vendors include VoltDB, NuoDB, Clustrix, and VMware's SQLFire. Other notable systems include Google's globally distributed DBMS, Spanner[3].

MySQL Engines

The second category are highly optimized storage engines for MySQL. These systems provide the same programming interface as MySQL, but scale better than built-in engines, such as InnoDB. Examples of these new storage engines include TokuDB, MemSQL, and Akiban.

Transparent Sharding

These systems provide an sharding middleware layer to automatically split databases across multiple nodes. Examples of this type of system includes ScaleBase and ScaleDB.

See also

References

  1. ^ a b c Aslett, Matthew (2011). "How Will The Database Incumbents Respond To NoSQL And NewSQL?" (PDF). 451 Group (published 2011-04-04). Retrieved 2012-07-06. Cite error: The named reference "aslett2010" was defined multiple times with different content (see the help page).
  2. ^ Stonebraker, Michael (2011-06-16). "NewSQL: An Alternative to NoSQL and Old SQL for New OLTP Apps". Communications of the ACM. Retrieved 2012-07-06.
  3. ^ a b Hoff, Todd (2012-09-24). "Google Spanner's Most Surprising Revelation: NoSQL is Out and NewSQL is In". Retrieved 2012-10-07.
  4. ^ Stonebraker, Mike (2007). "The end of an architectural era: (it's time for a complete rewrite" (PDF). VLDB '07: Proceedings of the 33rd international conference on Very large data bases. Vienna, Austria. {{cite conference}}: Unknown parameter |booktitle= ignored (|book-title= suggested) (help); Unknown parameter |coauthors= ignored (|author= suggested) (help)
  5. ^ Stonebraker, Michael (2011-06-16). "Ten Rules For Scalable Performance In Simple Operation' Datastores". Communications of the ACM. pp. 72–80. Retrieved 2012-10-07.
  6. ^ Lloyd, Alex (2012). "Building Spanner". Berlin Buzzwords (published 2012-06-05). Retrieved 2012-10-07.
  7. ^ Cattell, Rick (2011). "Scalable SQL and NoSQL data stores" (PDF). SIGMOD Record. 39 (4). Association for Computing Machinery. Retrieved 2012-10-06. {{cite journal}}: Unknown parameter |month= ignored (help)
  8. ^ Aslett, Matthew (2008). "Is H-Store the future of database management systems?" (published 2008-03-04). Retrieved 2012-07-05.
  9. ^ Dignan, Larry (2008). "H-Store: Complete destruction of the old DBMS order?". Retrieved 2012-07-05.
  10. ^ Venkatesh, Prasanna (2012). "NewSQL - The New Way to Handle Big Data" (published 2012-01-30). Retrieved 2012-10-07.
  11. ^ Levari, Doron (2011). "The NewSQL Market Breakdown". Retrieved 2012-04-08.