O'Reilly's MySQL conferentie is in volle gang en de zaal stroomt vol voor de "State of the Dolphin" keynote door Oracle's vice-president of MySQL engineering, Tomas Ulin. Ulin benadrukt dat Oracle van MySQL houdt, en dat feedback van gebruikers welkom is - "we're listening". Daarna volgt de aankondiging van de MySQL 5.6.2 milstone release. Er worden boven verwachting heel veel nieuwe features genoemd, waaronder toegenomen schaalbaarheid, verbeterde replicatie, verbeterde support voor MS Windows (onder andere 1000x performance verbeteringen!) en zelfs een aantal echte NoSQL features. Tomas benadrukt dat er wel wat veranderingen zijn ten opzichte van het oude MySQL ontwikkelproces, maar dat de veranderingen alleen ten goed zijn: zo profiteert MySQL nu van betere kwaliteitscontrole, en van de expertise van senior Oracle ontwikkelaars.

Interview met Monty Widenius

Na de keynote praat webwereld met Michael "Monty" Widenius - de oorsponkelijke ontwikkelaar en oprichter van MySQL. Widenius verzette zich toentertijd hevig tegen de Oracle's overname van Sun (en MySQL). Als reactie startte hij het bedrijf MontyProgram AB dat zich voornamelijk bezighoudt met het ontwikkelen van de MySQL fork MariaDB.

WW: Monty, je hebt even geleden MariaDB opgericht. Kun je de MySQL gebruikers iets vertellen over hoe MariaDB verschilt van MySQL?

MW: MariaDB is een drop-in replacement voor MySQL: je kunt MySQL direct en zonder aanvullende migratie vervangen door MariaDB. Dus alle APIs, drivers en connectors - PHP, Java, ODBC, noem maar op - alles werkt precies hetzelfde als bij MySQL, en MariaDB is net als MySQL GPL-licensed open source software. Het verschil met MySQL is dat MariaDB meer biedt. Zo zijn er meer storage engines, zoals de Aria crash-safe MyISAM opvolger en de QGraph engine [red: voor netwerk en boom gestructureerde data]. Ook biedt MariaDB nieuwe features, zoals dynamic columns [red: voor een variable aantal kolommen per rij - een NoSQL feature] en microseconde precisie voor timestamps. Verder is MariaDB sneller door ons werk aan de query optimizer.

WW: Welke MySQL gebruikers moeten volgens jou overstappen naar MariaDB? Zijn er ook gebruikers die je dat zou afraden?

MW: Als je een bestaand systeem hebt, en het draait goed, dan is in het algemeen mijn advies om dat zo te laten. Maar als je van plan bent om de MySQL software te updaten, dan zou je kunnen overwegen om over te stappen op MariaDB. Als je nu op MySQL vertrouwt, dan is er geen reden om MariaDB niet te vertrouwen. Immers, (lacht) de meeste van de originele MySQL ontwikkelaars werken nu bij ons - Oracle heeft nog maar 2 van de oorspronkelijke core-developers over.

WW: Vanochtend tijdens Oracle's "State of the Dolphin" keynote kondigde Oracle een groot aantal nieuwe features en verbeteringen aan, zoals crash-safe multi-threaded replication slaves, en verbeterde performance en support voor MS Windows gebruikers. Gaat MariaDB deze features ook ondersteunen?

MW: Ja. Onze broncode wordt constant ge-merged vanuit de MySQL broncode, dus zodra we gaan mergen met MySQL 5.6, krijgen wij deze features ook. En voor zover ik het kan zien zijn de nieuwe features in MySQL 5.6 oorspronkelijk ontworpen door mensen die nu bij MariaDB werken. Behalve de verbeteringen aan InnoDB zijn deze features al in de Sun-tijd ontstaan, ze worden alleen nu pas ge-released. Er zijn dus eigenlijk maar weinig feautures die echt van Oracle afkomstig zijn. Neem bijvoorbeeld de 1000x verbeterde perfomance op MS Windows. Dat is eigenlijk een 2 jaar oude patch van ongeveer 10 regels code.

WW: Oracle maakt MySQL software en heeft ook MySQL support opties. Waar kunnen MariaDB gebruikers support krijgen?

MW: Bij Montyprogram doen we vooral software-ontwikkeling. Maar we hebben meer dan 30 partners, zoals SkySQL en Percona die wereldwijd support leveren voor onze gebruikers. We geven wel specialistische support aan enkele klanten, maar dat is dan gelijk in de orde van het ontwikkelen van nieuwe, specialistische features - moeilijke dingen die niemand anders wil doen. Zo is het ook goed, omdat we zo voorkomen dat we met onze partners concurreren.

WW: Kun je iets zeggen over in hoeverre het ontwikkelproces bij MariaDB verschilt van dat bij MySQL?

MW: MySQL werkte nauwelijks samen met de community. Met MariaDB is het anders: Montyprogram is geen eigenaar van de MariaDB code. Wij zijn gewoon een van de sponsors. Heel veel MariaDB features komen voort uit de community, en wij helpen om deze netjes te integreren in de rest van de MariaDB codebase.

WW: Voorbeelden?

MW: Behalve de eerder genoemde dynamische columns en de QGraph engine zijn er bijvoorbeeld de PBXT storage engine, de XtraDB storage engine, de Sphinx full-text search engine, pluggable authentication en de MyISAM partitioned key cache.

WW: Behalve Montyprogram, welke bedrijven zijn nog meer een sponsor van MariaDB?

MW: Percona, Open Query, en verder een aantal bedrijven die ik niet mag noemen. Maar bijvoorbeeld de microseconde support is gesponsord door een extern bedrijf. Ik mag er niet veel meer over zeggen behalve dat deze feature van belang is voor real-time trading doeleinden. Ook zijn er veel individuele ontwikkelaars die hun code bijdragen.

WW: Het is geen geheim dat jij je hevig verzette tegen de Oracle overname, en je hebt dit zelfs tot aan de Europese Commissie aan toe bevochten. Denk je nu nog steeds dat MySQL gebruikers moeten vrezen dat Oracle de MySQL broncode zal sluiten, of het zelfs geheel zal opdoeken?

MW: Ten eerste: de EC heeft mij gevraagd, en ik heb mijn zegje gedaan. En ten tweede heb ik dat ook gedaan voor het equivalent in de Verenigde Staten, het DOJ [red: Department of Justice, dat zich net als de EU met anti-trust zaken bezighoudt] Kijk, toen Sun ons overnam, waren we met 400-450 mensen. Nu zijn daar nog 54 van over die nog bij Oracle werken. Als Oracle echt om MySQL zou geven, waarom laten ze dan al die mensen lopen? In mijn optiek gaat het hier om onvervangbare experts, die cruciaal zijn voor het voortbestaan van de software. Je kunt misschien de mensen vervangen, maar niet hun kennis van zaken.