Archive for the 'MySQL' Category


On Sun’s acquisition of MySQL AB

by Jeremy Cole on Wednesday, January 16th, 2008 at 11:14:40 in MySQL, Technology

If you follow the MySQL world at all, or you just have your eyes open, you have probably noticed that an agreement has been reached for Sun to acquire MySQL AB for about one billion dollars. Quite a few people have asked for my thoughts on the matter, so I will provide them publicly here for all. Overall, I see this as a mostly good thing.

I think that Sun has a very good chance of leading MySQL better than MySQL. At the same time, it’s always disconcerting to see a project managed within a very large company. Having been through the large company picture once already, I know how wrongly things can go when too many people (especially management types) are involved in a project.

At the same time, though, I’ve always liked Sun, and have high hopes for Sun’s management of the MySQL project and the people. There are a number of things I would like to see Sun do with MySQL following the acquisition:

Fix the MySQL Enterprise development model

The MySQL Enterprise (and by proxy MySQL Community) development model has been broken for a long time now. Too long. Take a cue from Sun itself and from RedHat and fix it right. I have a lot of ideas as to how the development model should work, and although our efforts have been time-constrained, we’ve made some effort to actually implement those ideas in DorsalSource.

Fix the product

There are a lot of areas where MySQL has been lacking for a long time, and the power users have been either crying in their beer (most users), or doing the work themselves (us, Google). I have shared some of these ideas with various people over the years, but here are some of the areas/ideas we have:

  • Replication works fairly well (usually), but its model is completely broken and deficient to go forward with it with all the new features of MySQL. It lacks any real solution for multiple masters, synchronous or semi-synchronous replication, safety (checksums, binlog index and master info sync problems), and conflict resolution or automatic detection (transaction ids).
  • Fix the internal memory allocation model so that it’s possible to constrain the memory usage of MySQL. The current situations sucks.
  • Remove some of the outdated cruft littered all over MySQL: MERGE tables
  • Clean up the logging (general, slow, [future] custom logs) code to be completely configurable and sane.
  • Fix auto_increment. We have suffered with it too long. The storage engine isn’t the place to generate sequences, and InnoDB and the replication model suffer greatly for it.
  • Fix the optimizer so that it makes more sane choices and can be more easily extended.
  • This is partly a product problem and partly a people problem, but stop creating 100 different experimental storage engines, and pushing them as truth. Yes, archive, federated, blackhole, I’m looking at you.

Get some muzzles on the sales and marketing team

As Proven Scaling well knows, MySQL basically sells itself. It would be great if we didn’t have to hear from any more customers that MySQL’s sales team has or is trying to screw them over. No consulting without support? Stupid rule. Insane point of view on licensing? Get rid of it. Fluff? Don’t do it.

Bonus?

Sun should buy Innobase Oy back from the clutches of Oracle, pull InnoDB into MySQL proper, and relicense the full set of code under LGPL, BSD, or another similar license. Personally, I think the GPL is fine for MySQL, but the MySQL sales team has done so much damage to people’s ideas about the GPL—when they do and do not need licenses for MySQL—that it’s hard to continue under the GPL now.

Conclusion

I’m hopeful. I’m hesitant to shout out in glee. If anyone has any questions or comments regarding the above ideas, comments, or thoughts: let me know! I’d be happy to discuss any of them.

MySQL Meetup Silicon Valley: Tonight at Google

by Jeremy Cole on Monday, January 14th, 2008 at 14:55:52 in MySQL, MySQL Meetup

Proven Scaling goes global

by Jeremy Cole on Thursday, November 29th, 2007 at 17:02:10 in MySQL, Proven Scaling

On efficiently geo-referencing IPs with MaxMind GeoIP and MySQL GIS

by Jeremy Cole on Saturday, November 24th, 2007 at 05:07:24 in GIS and Cartography, MySQL, MySQL Tips, Technology

On Hiring a MySQL DBA/Architect

by Jeremy Cole on Monday, October 29th, 2007 at 16:55:35 in MySQL, MySQL Tips, Proven Scaling

On Falcon and the need to feel wanted

by Jeremy Cole on Thursday, September 6th, 2007 at 10:28:02 in MySQL, Rants

Going to MySQL Camp II, Brooklyn, NY

by Jeremy Cole on Saturday, August 18th, 2007 at 14:40:41 in MySQL, MySQL Camp, Proven Scaling

On serving two markets and mistakes

by Jeremy Cole on Monday, August 13th, 2007 at 11:13:08 in MySQL, Proven Scaling

MySQL Community split officially a failure

by Jeremy Cole on Thursday, August 9th, 2007 at 03:08:07 in MySQL, MySQL Patches, Proven Scaling

Consulting in Europe or Japan in September?

by Jeremy Cole on Saturday, July 7th, 2007 at 13:06:55 in MySQL, MySQL User Conf, Proven Scaling