Konkurrent PostgreSQL beherrscht Funktionen für die Verarbeitung des JSON-Formats (JavaScript Object Notation) schon längere Zeit, bei Oracles relationaler Datenbank MySQL fehlen die bisher.
In einem Blog-Beitrag bestätigt Ulf Wendel jetzt, dass gerade daran gearbeitet wird. Wendel beschreibt die im MySQL-Labor angebotenen JSON-Funktionen ausführlich.
Implementiert sind sie bisher als User-defined Functions (UDF), die man in einen laufenden MySQL-Server laden kann. Das klappte beim Testen auch mit MySQL 5.6.10, man braucht also nicht unbedingt die aktuell in Arbeit befindliche Version 5.7 verwenden.
Noch gibt es in den UDFs aber einige Fehler und Ungereimtheiten. So bewertet beispielsweise JSON_VALID()
die Konformität von Strings häufig falsch, das Suchen nach Werten klappt noch nicht zuverlässig und es fehlen dazu auch Komfortfunktionen wie reguläre Ausdrücke (RegEx).
Außerdem bemängelt Wendel die Nutzung von TEXT/BLOB-Spalten für das Speichern von JSON, weil dadurch schon mittelgroße Dokumente außerhalb der aktuellen Speicherseite gespeichert würden, was dann zusätzlichen I/O-Traffic hervorruft. Bis die Technik für den Produktivbetrieb eingesetzt werden kann, müssen diese Bugs vom Tisch sein.
Wer sich als Entwickler an MySQL und dessen Tools gewöhnt hat, wird sich freuen, diese Funktionalität bald auch bei der Mutter aller freien Datenbanken MySQL zu finden.