This is also the point where Oracle has tossed out the 5.x versioning semantics for the platform and moved to a not strictly semantic, but still semantic-like versioning system that labels this new branch 8.0. Previously, major updates were on the 5.x chain, while experimental and cluster releases of the database had been labeled versions 6.x and 7.x, respectively.
The MySQL team has “improved some things inside the server to make us more agile for the future. We have a better-structured codebase to stand on with, a real data dictionary which is transactional,” said Tomas Ulin, vice president of MySQL development at Oracle.
Version 8.0 of MySQL is heavily focused on supporting mobile applications more thoroughly, said Ulin. To do this, the team added support for GIS to the platforms’ foundations. Ulin categorized this as offering first-class citizen support for GIS.
This is contrasted with the tactics of PostgreSQL, which offers GIS support in a separate project, PostGIS. “GIS in MySQL 8.0 is part of the actual code base,” said Ulin. “It’s not some add-on you have to download and manage separately. That makes it much easier. This gets to the people who love MySQL, but maybe are looking at complimenting solutions for better GIS support. They should now find the best GIS support inside MySQL.”
MySQL 8.0 also includes the latest revision of Unicode as the default. Ulin said this now supports Unicode 9.0, and for mobile applications, that means greater support of emoji for things like messaging applications performance. 9.0 of Unicode
For MySQL version 5.7, the big story was JSON support. As MySQL 8.0 is the next version in line, the team has expanded that support through the addition of functions to check the on-disk size of native JSON types. Array and object aggregation functions have also been added, as well as some formatting functions.
This version also adds invisible indexes, which should make life easier for those tasked with maintaining and adding new indexes to an existing database. “When you want to add an index or remove an index, you can make them invisible to see the effect and add the index back again if it radically effects performance. Conversely, when you want to introduce an index, you can add the index and see how it effects the performance of the system without affecting the application,” said Ulin.
MySQL 8.0 RC1 is available today, with the final version not yet set for a dated release. Ulin said the team expects to put out another release candidate before hitting general availability.