Open source enthusiasts who've fretted over the fate of MySQL since it fell into Oracle's clutches may have cause to celebrate: The creators of Drizzle -- the lightweight, cloud-friendly fork of MySQL 6.0 -- have announced that their project has hit the GA (general availability) milestone.
The news means that organizations seeking a less-expensive alternative to Oracle's brand of MySQL -- or a variant devoid of feature bloat -- now have an option that Drizzle's creators deem ready to package in Linux distributions. "It's no longer something where the best bet is to add the PPA (personal package archive) and upgrade every two weeks or build from source yourself," according to Stewart Smith, a contributor to the Drizzle project.
The brainchild of former Sun MySQL director of architecture Brian Aker, Drizzle was announced in 2008. Since that time, Oracle acquired Sun, which generated concern about the future of the project. Drizzle's future looked far brighter in 2010, however; Rackspace got behind the project by recruiting some of the developers of the project to work on its cloud team.
Drizzle is compatible with MySQL in many ways, according to Andrew Hutchings, a Drizzle developer at Rackspace. It supports existing MySQL connectors for PHP, Perl, and the like. Its syntax is similar to MySQL's. There's even a tool called drizzledump that enables a user to convert table structures from MySQL to drizzle on the fly. Further, Drizzle includes a library called libdrizzle, written in C, which is capable of talking to MySQL and Drizzle servers.
Still, it's not 100 percent compatible in that Drizzle is derived from MySQL from three years ago, not from the version of MySQL out there today. "Applications that use MySQL can usually be converted to use Drizzle relatively easily," Hutchings notes. (Terms like "usually" and "relatively easily" might give a database admin some concern.)
Under the hood, there are plenty of differences between Drizzle and MySQL. In broader terms, Drizzle's designed to be faster and more efficient than MySQL, honed for the Web and the cloud, so it lacks particular features that some organizations might miss. For example, it has neither stored procedures, triggers, or views, nor an embedded server; also, it doesn't run on Windows.
Drizzle is designed to be modular and supports plug-ins, allowing users to add functionality like the query cache, authentication system, logging to files, syslog, and remote services, such as RabbitMQ and Gearman.
A more granular look reveals somewhat different data types: There's no TINY/SMALL/MEDIUM INT, just INT and BIGINT. Similarly, there's just TEXT/BLOB instead of TINY/MEDIUM/LONG TEXT/BLOB.
Additionally, Drizzle handles replication differently, using Google Protocol Buffer Messages "so that a replication reader can be written in any language in minutes," according to Hutchings. Moreover, the project follows a completely open development model.
Another critical difference is the licensing: The primary drizzle source falls under GPLv2, libdrizze is BSD licensed, and the docs are licensed under CC SA 3.0. There is no proprietary licensing for any part of Drizzle.
Drizzle is proving itself an open source project worthy of close scrutiny from organizations both small and large. The project appears to have ample support from contributors, as well as the backing of Rackspace, which means it's not likely to disappear any time soon. Smaller companies might find it an ideal solution that suits their more modest needs while saving them significantly on Oracle's hiked-up MySQL licensing terms. Larger companies, meanwhile, may be lured by the prospect of a potentially faster database engine for their cloud and Web applications, not to mention the potential savings on licensing.
This story, "Non-Oracle MySQL fork deemed ready for prime time," was originally published at InfoWorld.com. Get the first word on what the important tech news really means with the InfoWorld Tech Watch blog. For the latest developments in business technology news, follow InfoWorld.com on Twitter.