Drizzle (database server)
{{Short description|Open-source database management system}}
{{primary sources|date=February 2011}}
{{Infobox software
| name = Drizzle
| logo = Drizzle-logotype.svg
| logo size = 180px
| developer = Brian Aker and others
| discontinued = yes
| latest_release_version = 7.2.4
| latest_release_date = {{start date and age|2012|09|23}}{{cite web|url=https://launchpad.net/drizzle/7.2/ |title=Series 7.2 : Drizzle |date=23 September 2012 |publisher=Launchpad.net |access-date=2014-07-04}}
| programming language = C++
| operating system = Cross-platform POSIX
| language = English, with GNU Gettext translations into 43 other languages
| genre = Database management system
| license = Primarily GNU General Public License version 2 and 3, with some BSD components
| website = {{URL|http://www.drizzle.org/}}
}}
Drizzle is a discontinued free software/open-source relational database management system (DBMS) that was forked from the now-defunct 6.0 development branch of the MySQL DBMS.{{Cite web|url=https://www.zdnet.com/home-and-office/networking/mysql-fork-drizzle-gets-general-release/|title=MySQL fork Drizzle gets general release|website=ZDNet}}
Like MySQL, Drizzle had a client/server architecture and uses SQL as its primary command language. Old Drizzle files are distributed under version 2 and 3 of the GNU General Public License (GPL) with portions, including the protocol drivers and replication messaging under the BSD license.
Early work on the fork was done mid-2008 by Brian Aker.[http://docs.drizzle.org/brief_history_of_drizzle.html Drizzle History] {{webarchive |url=https://web.archive.org/web/20130902032754/http://docs.drizzle.org/brief_history_of_drizzle.html |date=September 2, 2013 }} Ongoing development was handled by a team of contributors that included staff members from Canonical Ltd., Google, Six Apart, Sun Microsystems, Rackspace, Data Differential, Blue Gecko, Intel, Percona, Hewlett-Packard, Red Hat, and others.[http://drizzle.org/wiki/Drizzle_Contributors List of Drizzle Contributors]{{dead link|date=December 2016 |bot=InternetArchiveBot |fix-attempted=yes }} Drizzle source code, along with instructions on compiling it, are available via the project's Launchpad website.[http://drizzle.org/wiki/Compiling Drizzle.org]{{dead link|date=December 2016 |bot=InternetArchiveBot |fix-attempted=yes }}
In October 2010, Drizzle had 13,478 total contributions, 96 total contributors, and 37 active contributors.[http://krow.livejournal.com/697962.html How Many Contributors does Drizzle Have?] {{webarchive|url=https://web.archive.org/web/20101023141107/http://krow.livejournal.com/697962.html |date=2010-10-23 }} It was also announced that Drizzle had entered Beta.[http://blog.drizzle.org/2010/10/01/release-of-drizzle7-beta/ Drizzle7 Beta Released] {{webarchive |url=https://web.archive.org/web/20101213170738/http://blog.drizzle.org/2010/10/01/release-of-drizzle7-beta/ |date=December 13, 2010 }} The first GA version was released in March 2011.{{cite web|url=http://blog.drizzle.org/2011/03/15/drizzle-2011-03-12-ga-tarball-has-been-released/ |title=Archived copy |access-date=2011-03-16 |url-status=dead |archive-url=https://web.archive.org/web/20110318071556/http://blog.drizzle.org/2011/03/15/drizzle-2011-03-12-ga-tarball-has-been-released/ |archive-date=2011-03-18 }} Drizzle has actively participated in the Google Summer of Code Project since 2010.[http://www.google-melange.com/gsoc/org/google/gsoc2010/drizzle ] {{webarchive |url=https://web.archive.org/web/20120404005803/http://www.google-melange.com/gsoc/org/google/gsoc2010/drizzle |date=April 4, 2012 }}[http://www.google-melange.com/gsoc/org/google/gsoc2011/drizzle ] {{webarchive |url=https://web.archive.org/web/20120210140516/http://www.google-melange.com/gsoc/org/google/gsoc2011/drizzle |date=February 10, 2012 }}[http://www.google-melange.com/gsoc/org/google/gsoc2012/drizzle ] {{webarchive |url=https://web.archive.org/web/20130516090309/http://www.google-melange.com/gsoc/org/google/gsoc2012/drizzle |date=May 16, 2013 }}[http://www.google-melange.com/gsoc/org/google/gsoc2013/drizzle ] {{webarchive |url=https://web.archive.org/web/20130427143801/http://www.google-melange.com/gsoc/org/google/gsoc2013/drizzle |date=April 27, 2013 }}
By late 2013 the project's active phase had come to an end. In July 2016 the maintainers concluded that the time had come for "winding things up officially" because "none of us have any time to dedicate to Drizzle anymore".{{cite web|url=https://lists.launchpad.net/drizzle-discuss/msg09530.html|title=Email to drizzle-discuss public mailing list by Brian Aker and Stewart Smith, July 27-28, 2016|access-date=2021-04-15}}
Uses
Drizzle is targeted at the web-infrastructure and cloud computing markets. The developers of the product describe it as a "smaller, slimmer and (hopefully) faster version of MySQL".[http://monty-says.blogspot.com/2008/07/what-if.html Monty-says.blogspot.com]
Platforms and interfaces
Drizzle is written in the C++ programming language, and stores its string data in the UTF-8 format. It was developed for modern Unix-like operating systems, including Linux, FreeBSD, Mac OS X, and Solaris – in general, any OS that conforms to POSIX and has a working implementation of the GNU Autotools. Microsoft Windows was not supported due to its lack of Autotools support.
Features
Drizzle is a re-designed version of the MySQL v6.0 codebase and is designed around a central concept of having a microkernel architecture. Features such as the query cache and authentication system are now plugins to the database, which follow the general theme of "pluggable storage engines" that were introduced in MySQL 5.1. It supports PAM, LDAP, and HTTP AUTH for authentication via plugins it ships. Via its plugin system it supports logging to files, syslog, and remote services such as RabbitMQ and Gearman. Drizzle is an ACID-compliant relational database that supports transactions via an MVCC design.[http://docs.drizzle.org/ Drizzle Documentation] {{webarchive |url=https://web.archive.org/web/20101125134422/http://docs.drizzle.org/ |date=November 25, 2010 }}
= Microkernel =
Plugin points have been added to support replication, storage engines, query rewrite, table functions, user-defined functions, protocol adapters, and multiple query caches.
= Indexes =
Like MySQL, Drizzle supports concurrent multiple engines. Via this, Drizzle includes built-in support for B+ tree and hash indexes. Drizzle's query planner is capable of using multiple indexes, from multiple engines to satisfy complex queries, using temporary in-memory bitmap index of operations.
= Triggers =
Database triggers in Drizzle are supported for DML, DDL, and a number of an additional event-based operations in the server. The PrimeBase BLOB streaming system, which allows Drizzle to stream binary large objects (BLOBs) via HTTP, makes use of this system. All triggers for Drizzle currently must be written in C++.
= Query rewrite =
Any query can be matched and rewritten dynamically that is sent to the server. This action is done before parsing occurs.
= Data types =
A wide variety of native data types are supported, including:
- Variable-length arrays (including text and composite types) up to 4 GB in total storage size
- Arbitrary precision numerics
- An enumerated type (enum) that supports current 10,000 types
= Dynamic SQL =
Through support of the EXECUTE command Drizzle can operate dynamic multi-statement SQL. Via the keyword CONCURRENT it can operate these statements in parallel.
= Replication =
Replication in Drizzle is done by generating "messages" using the Google Protocol Buffers library. These messages are then stored and executed on remote servers. The message format is a non-SQL neutral format which has allowed Drizzle to have replication appliers to RabbitMQ, Memcached, MySQL, Voldemort, and Apache Cassandra.
Support and licensing
Drizzle is licensed under version two and three of the GPL, with some parts, such as libdrizzle client library, under the BSD license.
See also
{{Portal|Free and open-source software}}
References
{{Reflist|30em}}
External links
- The official website was live until 2016, http://www.drizzle.org. [https://web.archive.org/web/2016*/drizzle.org Waybackmachine's copy].
- [https://web.archive.org/web/20080729160155/http://krow.livejournal.com/602409.html Brian Aker's "What If?" article on Drizzle]
- [http://monty-says.blogspot.com/2008/07/what-if.html Michael Widenius's "What If" article on Drizzle]
- [http://twit.tv/floss35 FLOSS interview with Brian on the future direction of Drizzle]
- {{Freecode|Drizzle}}
{{MySQL}}
{{Software in the Public Interest}}
Category:Free database management systems