Drizzle is a re-thought and re-worked version of the MySQL kernel designed specifically for high-performance, high-concurrency environments. In this exclusive article, MySQL guru Jeremy Zawodny takes an inside look at the goals and state of Drizzle development.
If you visit the Drizzle project homepage, it explains:
Drizzle is building a database optimized for cloud and [network] applications. [Drizzle] is being designed for massive concurrency on modern multi-cpu/core architectures. The code is originally derived from MySQL.
In other words, Drizzle is a re-thought and re-worked version of the MySQL kernel designed specifically for high-performance, high-concurrency environments. The goal is to make Drizzle an extensible database kernel that runs extremely fast on emerging hardware.
Much like Linux is a fast kernel that can be extended with loadable modules (notably filesystems and device drivers, among others), Drizzle explicitly says “no” to building in some features, instead pushing them out of the core and into plug-ins. This separation allows Drizzle to focus on only the most essential features of a modern database kernel. In fact, it’s almost a become a joke on the Drizzle mailing list that someone will say “Make it a plugin!” when anyone questions removing functionality from the server.
At this point you may be wondering who would be crazy enough to think that MySQL, known for its speed and agility, needs to be radically re-worked. After all, it’s been the dominant open source relational database for the better part of a decade now.
The Drizzle project is headed by Brian Aker, the former director of architecture for MySQL. Aker now works in the Office of the Chief Technology Officer at Sun (soon to be Oracle) and heads up a team of developers working on Drizzle and a few other projects (see one of Aker’s early posts on Drizzle). Some of those developers are Sun employees (Eric Day, Jay Pipes, Monty Taylor, Mark Atwood, and others), while others are either volunteers or contributing to Drizzle on behalf of their employer. Toru Maesaka of Mixi is one such developer.
A lot of the Drizzle work is driven by significant changes in hardware that have occurred since widespread adoption of MySQL began. Before discussing what Drizzle is and is not, it’s important to understand a bit about the last 5-7 years of evolution in hardware and systems and the challenges those presented to MySQL users, especially those who were constantly pushing the envelope of what’s possible.
Moore’s Law Turned Sideways
The most significant change in recent hardware history is that Moore’s Law took a surprising turn. For years, developers have been able to depend on the clock speed of CPUs doubling roughly every 18 months. In other words, the code you ran in early 2001 would be more than twice as fast if you simply upgraded the CPU in your server in late 2002. Why “more than” twice as fast? Not only did clock speeds increase, changes in the architecture of CPUs made them more efficient, too: larger caches, more registers, better instruction pipelines, and so on.
This doubling trend went on for so long that Moore’s Law was practically law and something destined to continue for the foreseeable future. But then something strange happened a couple years ago. Instead of seeing 4 GHz CPUs appear to replace 3.2 GHz CPUs, Intel and AMD started pushing multi-core CPUs that ran at slower clock speeds. Effectively, the megahertz and gigahertz game had come to an end. Instead of pure “vertical” scaling, Moore’s Law had been redirected along a different axis: horizontal scaling.
At the 2009 MySQL Conference, Sun co-founder Andy Bechtolsheim delivered a keynote presentation called
The Solid State Storage Revolution, which contained a chart plotting CPU clock speeds over the last 20 years or so. It illustrated this sudden change very clearly and removed any doubt about where things are headed. (Sadly, his slides are not available online).
In a sense this isn’t new. Symmetric multiprocessing (SMP) has been around for years now in the form of motherboards with two or four physically separate CPUs. But having multiple CPU cores on the same physical chip was a new approach. Intel previewed the future with the introduction of Hyper-Threadingon some Pentium 4 CPUs. The technology allowed a single CPU to run two execution threads in parallel. It’s not the same as having two physical cores on the same chip, but it was a nice boost at the time.
With Moore’s Law overturned, the new road to efficiency and performance is to design for concurrency and parallelism. Any problem that can be split into sub-problems and executed in parallel fits this new world very well. As you’ll see momentarily, there are places where MySQL is able to exploit multi-core well, but others in which it was of no help at all.
RAID and RAM
As with all things hardware, the cost of running substantial RAID arrays (6-12 disks) with battery-backed write caches has dropped substantially. That doesn’t mean that disk I/O isn’t still the single biggest bottleneck in large databases—it is. Any time your data size grows substantially beyond what can fit in RAM, I/O bottlenecks appear. But today’s “commodity” hardware lets you push that barrier out quite a long way.
Thanks to commodity 64-bit CPUs, it’s not hard to find a server than can be loaded with 64 GB or even 128 GB of memory. That alone is sufficient to keep a very large percentage of MySQL deployments from having to worry about going to disk that often. But what about those really big deployments?
The transfer rates of modern disks and their controllers is measured hundreds of megabytes per second. But that’s assuming a best case scenario: linear (sequential) reads or writes. The real killer is random disk I/O. Any time the disk head needs to move (seek), you incur a delay of several milliseconds. Event the fastest hard disks available claim average seek times in the 4 ms range. Expecting more than about 200 seeks per second is unrealistic. In fact, the rule of thumb for years has been not to expect more than about 100 I/O operations (iops) from a single spindle.
Having larger disk arrays means being able to perform a greater number of iops per second: typically something like (N/2)*100 where N is the number of disks. You must divide by two because of mirroring. In a typical setup of 12 disks, there are 6 mirrored pairs (RAID-1) and stripe (RAID-0) data across them. This is commonly referred to as RAID 1+0.
Using this model, the only way to get another 200 iops out of your array (without sacrificing data integrity) is to add two or four more disks. Like Moore’s Law, this had been true for a very long time. But just like Moore’s Law, the storage game has recently changed in a most unexpected way.
Comments on "Drizzle: Rethinking the MySQL Database Kernel"
Hello i am kavin, its my irst time to commenting anyplace, when i read this post i thought i
couuld also make comment due to this sensible paragraph.
Visit mmy homepage … cheap car insurance in ohio
I’m not sure why bbut this web site is loading
very sloww forr me. Is anyonje else having this problem
or iss it a problem on my end? I’ll check back later andd see if the problem still exists.
Also visit my blog post: cheap car insurance
continukusly i used to read smaller articles which also clear their motive, and that
is also happening witrh this article which I am reading here.
Feel free to visit my web page – cheap full coverage car insurance
I simply want to tell you that I am just beginner to blogging and site-building and absolutely loved this website. Probably I’m going to bookmark your website . You absolutely come with impressive stories. Appreciate it for sharing with us your website page.
It’s actually a nnice and helpful piece of information. I
am glad that you just shared this heelpful info with us.
Please stay uss informed like this. Thank you for sharing.
my weblog … cheap car insurance in florida
For most recent news youu have to go to see the web and on world-wide-web
I found this web page as a best website for most up-to-date updates.
Here is my site – cheap car insurance
I just want to say I am all new to weblog and definitely enjoyed your web blog. Almost certainly I’m want to bookmark your blog . You actually come with good stories. Kudos for revealing your website page.
Hi my family member! I wksh to sayy tyat this
post is amazing, great written and come with approximately all important infos.
I’d like to look more posts like this .
my page: cheap car insurance online
Way cool! Some very valid points! I appreciate yoou penning this post plus the rest of the website is also very good.
Visit myy weblog cheap car insurance texas
Asking questions are genuinely nice thing if you arre
not understanding something completely, however this post offers good understanding even.
Also visit my webgpage – cheap car insurance
Hmm it seems like your website ate my first commenjt (it was extremely long)soI guess I’ll just sum it up what I submitted and say, I’m thooroughly enjoying your blog.
I as well am an aspiring blog blogger bbut I’m still new to everything.
Do you have anyy points for rookie blog writers? I’d definitely appreciate it.
Here is my web page … Cheap car insurance
Oh my goodness! Amazing article dude! Many thanks, However I am going through divficulties wuth your
RSS. I don’t understand the reason why I am unable
to subscribe to it. Is there anybody getting similar RSS issues?
Anyone who knows the answer can you kindly respond?
Thanx!!
Feel free to surf to my web page … very cheap car insurance
Appreciate this post. Let me try it out.
My web page :: Car insurance companies
I’m curious to find out what blog system you are utilizing?
I’m having some small security problems with my latest blog and I would like to find something more safeguarded.
Do youu have any solutions?
Also visit my blog post: cheap car insurance in nj
Review my site wildlyworld.com
Here are some hyperlinks to web pages that we link to due to the fact we feel they are worth visiting.
My site: check out this site for sensual massage London
Excellent blog right here! Additionally your site lots
up very fast! What host are you the usage of? Can I get your
associate hyperlink in your host? I want my
website loaded up as quickly as yours lol
Here is my web site; Cheap car insurance
I couldn’t resist commenting. Exceptionally well written!
Feel free to surf to my webpage – Cheap Car Insurance
You could definitely see your expertise in the article you write.
The arena hopes for even more passionate writers like you
who aren’t afraid to say how they believe.
At all times follow your heart.
Review my blog: cheap car insurance in md
I just want to mention I’m all new to blogs and definitely loved your web-site. More than likely I’m going to bookmark your blog . You actually come with fabulous posts. With thanks for revealing your web-site.
Muchos Gracias for your post. Really Cool.
Usually posts some really interesting stuff like this. If you?re new to this site.
Awesome blog article.Much thanks again. Really Great.
With the relation to Black Mamba, Nike Zoom Kobe VI is
more populated. Diesel sneakers have a rubber sole for superb traction, wherever you go.
They coordinate their work with the fashion merchandisers and
store managers who are assigned in different store outlets and locations by overseeing the visual merchandising initiatives
of each unit.
Feel free to visit my webpage … cheap giuseppe zanotti shoes
I love it when folks get together and share views.
Great blog, keep it up!
Look into my weblog canadian pharmacy
If you’re still on the fence: grab your favorite earphones, head down to a Best Buy and ask to plug them into a Zune then an iPod and see which one sounds better to you, and which interface makes you smile more. Then you’ll know which is right for you.
Apple now has Rhapsody as an app, which is a great start, but it is currently hampered by the inability to store locally on your iPod, and has a dismal 64kbps bit rate. If this changes, then it will somewhat negate this advantage for the Zune, but the 10 songs per month will still be a big plus in Zune Pass’ favor.
Light-ray frames are lighter yet stronger and hypoallergenic as
well. Straps are quite stylish nowadays and young fashionistas are getting
all creative with their spectacles using these straps, so not
only will you be able to safeguard your glasses
better, however you also get to improve their charm too.
Crystal clear frames with bright lenses are coming out from multiple designers as well.
Feel free to visit my blog post – http://www.hfpacoustical.us/hfp/
I am in fact pleased to read this web site posts which includes lots of helpful information, thanks for providing these data.
Feel free to visit my website; cialis from online pharmacy
Marinate it or season it with salt, pepper and lemon juice.
Teach the sentence words for preparing materials to cook.
Two slices of pimento filled olives make great snake eyes and a sliver of red pimento for a tongue.
Its really great how you explain issues in a few sentences but portray a great message. I really love what MySQL guru Jeremy Zawodny is doing for drizzle. Great article.
I simply want to mention I am newbie to blogs and truly savored you’re web page. Likely I’m planning to bookmark your site . You amazingly have fabulous posts. Kudos for sharing with us your webpage.
Wow, incredible blog layout! How long have you been blogging for?
you made blogging look easy. Thee overall look of your web site
is fantastic, llet alone the content!
Here is my homepage: dyson dc25
Article writing is also a fun, if you know afterward you can write if not it is complex to write.
my weblog: dyson fan
Asking questions are actually pleasant thing if you are not understanding something completely, except this
paragraph provides nice understanding yet.
We can play with the color of the blouse and adapt it to the style and workplace of each person. com,a number of us are manufacturer, wholesale and
exporter regarding rattan furniture everywhere over the Indonesia.
Most women and major celebrities prefer branded leather Chanel handbags simply because it is their style icon.
My weblog … cheap prada bags
?ev?rtheless, when dealing wwith this kind of agency, modest and ?uge business will
be the concentration. After reaching my ?ccountant and relaying my concerns, the next attribut? wortgh addressingg
is ?ommunicat?on. T?e skills you acquire iin you? training to
become a CPA will give you confidence in yourself and yokur newfound abilities.
my homepage :: boca raton Florida cpa
The inclusion of important aspects such as athletic shorts for
men or other proper clothing outside of safety equipment should
also be considered depending on the sport or activity played.
Lady Gaga was photographed stepping out for errands in New York City on Sunday (March 23, 2014).
Whether it’s sandals, trainers or high heels, we
usually go out with something on our feet in the morning.
Here is my weblog – outlet christian louboutin
Although websites we backlink to below are considerably not associated to ours, we really feel they’re essentially worth a go by means of, so have a look.
Here are some hyperlinks to web sites that we link to since we consider they may be really worth visiting.