This is a presentation held at eLiberatica 2009.
http://www.eliberatica.ro/2009/
One of the biggest events of its kind in Eastern Europe, eLiberatica brings community leaders from around the world to discuss about the hottest topics in FLOSS movement, demonstrating the advantages of adopting, using and developing Open Source and Free Software solutions.
The eLiberatica organizational committee together with our speakers and guests, have graciously allowed media representatives and all attendees to photograph, videotape and otherwise record their sessions, on the condition that the photos, videos and recordings are licensed under the Creative Commons Share-Alike 3.0 License.
2. Why Drizzle?
Web (and other) users does not need a full
featured SQL database.
Less complex → Easier to understand
Less code & locks → Faster
Easier to modularize → plugins
Drizzle is a fork of MySQL 6.0
3. Goals
●
To build a database optimized for Web/Cloud
●
As much functionality as possible in p lu gin s
●
S im p lif y the code
●
Design for multi-core & high con cu r r en cy
●
Optimize as a member of the application stack
●
C om m u n it y developed
●
Use memory for more performance/parallelism
4. Gone!
• Stored Procedures
• Views
• Triggers
• Query Cache
• Prepared Statements
• Many Field types (tinyint ...)
• Windows support
• Character sets (only UTF-8)
• Authentication system (Modularied)
• Libraries shipped with the code
5. How Big Is It?
6.0.9-alpha: 1,203,904
5.0.75: 988,212
4.1.22: 858,902
Drizzle: 339,648
Generated using David A. Wheeler's 'SLOCCount'.
6. Values
• Open and well documented interfaces
• Transparent goals and processes
• Everything is public
• Have Fun!
• Make it easy to contribute
• Build a ecosystem around drizzle
• Contributors should be able to make money
7. Team & Community
Sun: Brian Aker, Lee Bieber, Jay Pipes,
Stewart Smith, Monty Taylor,Eric Day
External community: Toru Maesaka, Yoshinori
Sano, Patrick Galbraith, C.J. Collier, Paul
McCullagh, Padraig O'Sullivan, Mark Atwood,
Alan Kasindorf, Kristian Neilsen, Jim Starkey, Josh
Berkus, Mark Callaghan, Jeremy Zawodny, David
Axmark, more...
• Majority of contributors are external to Sun (as I
am)
8. Tools & Environment
• Drizzle beverages
•Launchpad (web branch/bug handling),
•Bazaar (revision control)
•Hudson (Extensible continuous integration engine)
• Buildbot today on >12 clients:
•OpenSolaris, Solaris 10
•Mac OS
•Linux [Ubuntu, Gentoo, CentOS, Fedora, Debian]
• Community interaction and peer review
• IRC, Mailing lists
9. Scope
Focused on providing a database that is:
•Reliable, ACID transactional
•Fast and scalable on modern architecture
•Simply design for ease of installation and
management
•Easy to use and hard to misuse!
11. Gotcha Free
No inserts for wrong data
ACID/Transactional Compliant
Clean protocol support
Simplified type system
No implicit committing of transaction
•No new features in the core → only plugins
• UTF-8 only
Removed unnecessary locks
12. Web is in UTF-8
•この利用規約(以下「本利用規約」といいます)は
• ᚠᛇᚻ᛫ᛒᛦᚦ᛫ᚠᚱᚩᚠᚢᚱ᛫ᚠᛁᚱᚪ᛫
ᚷᛖᚻᚹᛦᛚᚳᚢᛗ
• rﺹ ﺸ ﺷ ﺶ ﺵ ﺴ rﺽ ﺼ
• Drizzle has only UTF-8 so lots of code/complexity is
gone
13. Protocol
Redesigned and rewritten from MySQL's
Pluggable
Talks new/old protocol
TCP & UDP
Built in sharding support
Asynchronous
Checksums
Batching support
BSD license
14.
15. Storage Engines
●
Retain Multiple Engine support
●
Default to Transactional ACID engine
●
InnoDB plugin
●
Allow Engines to own their own Meta Data
16. Security, 3A's
• Authentication, Authorization, Access Control
• No cost if you do not use it
• Plugins for PAM / LDAP / HTTP Auth
17. Roadmap Now
●
New Table Discovery
●
Multi-Replication Applier
●
Dependency Checking for Plugins
●
New information Schema/Backend