NewSQL
NewSQL es una clase de sistemas de gestión de bases de datos de relación moderna que tratan de conseguir el mismo rendimiento escalable de sistemas NoSQL para el procesamiento de transacciones en línea (lectura-escritura), manteniendo durante las cargas de trabajo las garantías ACID de un sistema de base de datos tradicional [1][2][3]
Historia
The term was first used by 451 Group analyst Matthew Aslett in a 2011 research 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][4] 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.
Sistemas
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. One of the first known NewSQL systems is the H-Store parallel database system.[5][6]
NewSQL systems can be loosely grouped into three categories: [7] [8]
Nuevas arquitecturas
The first type of NewSQL systems are completely new database platforms. These are designed to operate in a distributed cluster of shared-nothing nodes, in which each node owns a subset of the data. Though many of the new databases have taken different design approaches, there are two primary categories evolving. The first type of system sends the execution of transactions and queries to the nodes that contain the needed data. SQL queries are split into query fragments and sent to the nodes that own the data. These databases are able to scale linearly as additional nodes are added.
- General-purpose databases — These maintain the full functionality of traditional databases, handling all types of queries. These databases are often written from scratch with a distributed architecture in mind, and include components such as distributed concurrency control, flow control, and distributed query processing. This includes Google Spanner, Clustrix, NuoDB[9][10] and TransLattice.
- In-memory databases — The applications targeted by these 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 lookups (i.e., no full table scans or large distributed joins), and (3) are repetitive (i.e., executing the same queries with different inputs).[11] These NewSQL systems achieve high performance and scalability by eschewing much of the legacy architecture of the original System R design, such as heavyweight recovery or concurrency control algorithms. Two example systems in this category are VoltDB and GoPivotal's SQLFire.
Motores MySQL
The second category are highly optimized storage engines for SQL. 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.[12]
Referencias
- ↑ a b c
Aslett, Matthew (4 de abril de 2011). «How Will The Database Incumbents Respond To NoSQL And NewSQL?» (en inglés). 451 Group. Consultado el 6 de julio de 2011.
Error en la cita: Etiqueta
<ref>
no válida; el nombre «aslett2010» está definido varias veces con contenidos diferentes - ↑ Stonebraker, Michael (16 de junio de 2011). «NewSQL: An Alternative to NoSQL and Old SQL for New OLTP Apps». Communications of the ACM Blog. Consultado el 6 de julio de 2012.
- ↑ Hoff, Todd (24 de septiembre de 2012). «Google Spanner's Most Surprising Revelation: NoSQL is Out and NewSQL is In». Consultado el 7 de octubre de 2012.
- ↑
Lloyd, Alex (5 de junio de 2012). «Building Spanner». Berlin Buzzwords. Parámetro desconocido
|fechaaceso=
ignorado (se sugiere|fechaacceso=
) (ayuda) - ↑
«Is H-Store the future of database management systems?». 2008. Consultado el 5 de julio de 2012. Parámetro desconocido
|Nombre=
ignorado (se sugiere|nombre=
) (ayuda); Parámetro desconocido|Apellido=
ignorado (se sugiere|apellido=
) (ayuda); Parámetro desconocido|fecha publicación=
ignorado (ayuda) - ↑ Dignan, Larry (2008). «H-Store: Complete destruction of the old DBMS order?». Consultado el 5 de julio de 2012.
- ↑ Venkatesh, Prasanna (30 de enero de 2012). «NewSQL - The New Way to Handle Big Data». Consultado el 7 de octubre de 2012.
- ↑ Levari, Doron (2011). «The NewSQL Market Breakdown». Consultado el 8 de abril de 2012.
- ↑ Proctor, Seth (2013). «Exploring the Architecture of the NuoDB Database, Part 1». Consultado el 12 de julio de 2013.
- ↑ Proctor, Seth (2013). «Exploring the Architecture of the NuoDB Database, Part 2». Consultado el 17 de julio de 2013.
- ↑ Stonebraker, Mike; et al. (2007). «The end of an architectural era: (it's time for a complete rewrite». VLDB '07: Proceedings of the 33rd international conference on Very large data bases. Viena, Austria.
- ↑
Darrow, Barb (2012). «Akiban goes wider with its cool NewSQL database». Parámetro desconocido
|fecha de acceso=
ignorado (se sugiere|fechaacceso=
) (ayuda)
Enlaces externos
- Esta obra contiene una traducción parcial derivada de «NewSQL» de Wikipedia en inglés, concretamente de esta versión, publicada por sus editores bajo la Licencia de documentación libre de GNU y la Licencia Creative Commons Atribución-CompartirIgual 4.0 Internacional.
- NewSQL en Sourceforge