by Markus Winand.

Big News In Databases


There's bee a lot of big news in 2016, also when it comes to databases. Let's have a look at the really BIG news.

MySQL and MariaDB Become Modern

For a long time, MySQL and MariaDB were mostly limited to the functionality of SQL-92. Now, both of them have decided to move forward by supporting the WITH and OVER clauses in their next major release (MySQL 8.0, MariaDB 10.2). The MariaDB beta release already supports both features while the current MySQL “lab release” only currently supports the WITH clause.

Parallel Execution in PostgreSQL 9.6

Commercial databases have been able to do it for decades, but in the open source database scene it is quite unique: Since release 9.6, PostgeSQL can execute single queries on multiple cores and thus make better use of modern hardware for data-intensive queries. At the moment, only some special cases can take advantage of in-query parallelism. The next releases will gradually extend this functionality. Speaking of next releases: The next major PostgreSQL release will be 10.0.

SQL Server on Linux (Beta)

A beta of the next version of SQL Server (currently called “vNext”) was released, also for Linux. On supported distributions (Red Hat, Ubuntu) the installation is carried out by the regular package manager. Furthermore, Microsoft provides Docker images. The “What's New” list of vNext is rather modest from a developer's perspective. However, SQL Server is finally getting STRING_AGG. It's also worth noting that CREATE OR ALTER was added to SQL Server 2016 SP1, which was released at the same time that vNext beta went public.

Oracle 12cR2 Currently Cloud Only

First off, Version 12.2 of the Oracle Database hast already been released. Interestingly, you cannot download it. Cloud first seems to be the new strategy for Oracle. For developers the new release is not very exciting anyway: Error handling for CASE and LISTAGG, approximate aggregates and of course more JSON. Find the full list in the “New Features” documentation.

DB Learns OFFSET…Unfortunately

DB2 for Linux, UNIX and Windows (abbrevated LUW) has gotten release 11.1 earlier this year. The general theme of the new SQL features was compatibility. It seems like IBM aims to support every single SQL dialect out there, and one part of this is that DB2 supports the SQL:2011 OFFSET clause even without enabling the MySQL compatibility vector. This is a big setback from my No-Offset movement!

SQLite Gets Row-Values

SQLite is compensating for this by introducing row values support in version 3.15.0—the SQL-92 feature that often makes life without OFFSET more easy. If you don't know about No-Offset yet, you should definitively read this article.

About the Author

Photo of Markus Winand

Markus Winand teaches efficient SQL—inhouse and online. He minimizes the development time using modern SQL and optimizes the runtime with smart indexing—for that he also published the book SQL Performance Explained.

“Use The Index, Luke!” by Markus Winand is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported License.
Legal | Contact | NO WARRANTY | Trademarks | Privacy | CC-BY-NC-ND 3.0 license