Toru Maesaka

Web addict and a hackaholic based in Tokyo

Archive for July, 2008

Mac OS X, Ubuntu and Drizzle

without comments

So admittedly, Mac OS X is currently not the most friendly platform to work with Drizzle, mostly due to library issues.

OS X has several weird hacks in it due to licensing issues (libreadline comes into mind first). Sure, MacPorts, Darwin Ports and etc could get around this problem but should this be necessary? Personally I dislike resorting to these solutions. Fortunately I’ve been doing all my Drizzle work with Ubuntu on a dedicated server so I’ve yet to come across any build related issues. However, it kind of sucks not to be able to take my Mac out to a cafe in the weekend and work there without connectivity.

So to make my life happier, I installed Ubuntu on my MacBook Pro (alongside OS X of course).

I came across few problems like corrupted partition table in the process of getting Ubuntu working but the following Ubuntu threads helped greatly:

General Instructions

Boot related problems when using Hardy Heron (Ubuntu 8.04)

You know, getting Ubuntu running on my Mac was entertaining since I was talking to Monty Taylor about his thoughts on how using a Mac is selling out yesterday. Now what does this make me now?

Happy Hacking :)

Written by tmaesaka

July 30th, 2008 at 12:00 pm

Posted in oss

Tagged with ,

Drizzle, out in the open

without comments

So I’ve been fortunate enough to participate in developing Drizzle, which is a microkernel fork of MySQL that you can read more about on Brian Aker’s blog post.

In brief we are getting rid of components that we find unnecessary in MySQL by default, and instead making them optional by refactoring the server to be modular, aka microkernel. Another words, we are trying to develop a lean, fast, simple and extensible RDBMS that would fit well in mid and large scale web applications.

How? well, take Query Cache for example. QC works well in a one-man database but it has very small (if not no) effect when we start thinking big, and especially in the web industry. So why bother keeping it? what would be better is if we could _optionally_ make Drizzle use a cluster of memcached for query caching, which would also allow many database instances to share a common cache. Same things can be said about many other components, such as ACL and Stored Procedures. This is exactly why we are moving to a microkernel architecture. If you want something special, you should be able to customize the server in a relatively easy fashion and satisfy your requirements, rather than having to refactor the server code yourself.

Indeed, not everyone needs a microkernel database, in fact I assume most people won’t. However, there are enough web developers and companies in the small portion of the pie that would love a microkernel database to solve the problems that they are facing today. This is exactly why we don’t consider Drizzle to be a MySQL replacement.

If you’d like more information, do check out our project page on Launchpad and browse through the mailing list archive. Drizzle development is done in a true open source fashion by using open resources and tools like Bazaar and Launchpad. This means that everyone is free to come up with improvement suggestions/patches and submit it to the drizzle community.

Drizzle has been very fun and I thank Brian for getting me involved in such a fun project :)

Btw, I wrote a blog post on Drizzle in Japanese on the Mixi engineering blog too.

Written by tmaesaka

July 23rd, 2008 at 4:03 pm

Posted in drizzle, oss

Tagged with ,