Drizzle Talk

3,513 views

Published on

Drizzle talk for MySQL Developer's Meeting.

Published in: Technology, Business
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,513
On SlideShare
0
From Embeds
0
Number of Embeds
266
Actions
Shares
0
Downloads
45
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide

Drizzle Talk

  1. 1. Introduction to Drizzle (it is a type of rain)
  2. 2. Master Plan
  3. 3. Rethink Everything
  4. 4. Do not assume everything was bad.
  5. 5. Do Not Live in the Past
  6. 6. Multi-Core • No new locks • Remove old locks • Think today: • Burn memory (copy on write) • Messages scales.
  7. 7. MySQL Market is now just entering 16 Core.
  8. 8. Do not play catchup. Leap forward.
  9. 9. Leverage Sun
  10. 10. Library of Congress is just 26 Terabytes.
  11. 11. The world is 64bit, and there is a lot of RAM. (SSD will be common in two years.)
  12. 12. MicroKernel • Move code to the Edge • No new features in core • To add interfaces you have to remove == amount of code
  13. 13. We have no... • Stored Procedures • Views • Triggers • No Query Cache
  14. 14. We may though...
  15. 15. SP’s through Real Languages
  16. 16. Views are useful, but not when materialized
  17. 17. Triggers no, but maybe Callbacks...
  18. 18. Prepared Statements are out. (no one uses them, they blow up the server)
  19. 19. What we are doing... • No required authentication (think http) • Round Trip Serialized SQL • Make SQL Injection harder
  20. 20. Innodb is our Default Engine (If Maria or PBXT turn out to be faster, we will switch. Transactional/Performance matter.)
  21. 21. Dump ACL • We authenticate in clouds. • KISS • PAM (Pluggable Authentication Modules) • No cost authentication
  22. 22. Authorization is coming...
  23. 23. Do people really sort blobs?
  24. 24. Field Types • Less primitives • We just now have “blob” • Weakly Typed. • 3 byte int? (See Slashdot Comment Problem) • Think UUID/IPV4(6)/SERIAL... • ENUM tosses an error if a wrong value is inserted.
  25. 25. Интернет является UTF-8. Web UTF - 8 The Web is UTF-8.
  26. 26. UTF-8 • Protocol is UTF-8. • We store in UTF-8. • (default collation is still up for grabs)
  27. 27. Recycle
  28. 28. In with the New • C99 (types for C++ code) • Posix • Package-lib • STL is in.
  29. 29. TABLE != Table (we are going from C+ to C++)
  30. 30. Reuse many eyeballs • PCRE today (not REGEX) • No “shipped” libraries • Maybe ICU? libatomic-ops? Intel Building Blocks? talloc()? glib()? • Proto-buffers.
  31. 31. How big is it? 6.0.5-alpha: 1,128,112 5.1.25-rc: 1,009,108 5.0.51b: 999,382 Drizzle: 315,560 generated using David A. Wheeler's 'SLOCCount'.
  32. 32. LaunchPad • Forking is good. • No emailed patches. • Anyone can create an account. • Neutral ground (this has turned out to be important). • Short URLs (and yes this matters)
  33. 33. Open Source • “Captains” handle trees, karma gets you in • Those who commit are Janitors. • Those who only work on their own code are not Captains. • Changes are sent to mailing list. Fuzzy ++ system used (negatives are weighed more heavily)
  34. 34. Code Drives Decisions
  35. 35. Requirement for Release • All Incompatible Changes are completed. (and more require upgrades to version) • All tests work. • New code additions are fine (think Linux Kernel)
  36. 36. So how do I get involved? • http://launchpad.net/drizzle • bzr branch lp:drizzle • http://launchpad.net/drizzle-discuss • (mailing list) • Freenode #drizzle

×