Friday, 29 June 2007

MySQL Congratulates FSF on GPLv3

We congratulate the Free Software Foundation on the release of GPLv3 and offer our thanks to the many individuals in the open source community who participated in the process of drafting the license.

It's good to see overall improvements in GPLv3 over GPLv2, when it comes to compatibility with other Free/Open Source Software licenses, to the compatibility with other legislations than the US legal system, and to strengthened incompatibility with Software Patents. I am also happy if the work of the Committee B ends up contributing to a better adoption of GPLv3. I am in awe as to the patience and skillful diplomacy with which Eben Moglen could tame the group consisting of everything from techies from comparatively small companies (like Trolltech and ourselves) to the seniormost lawyers from the biggest Fortune 500 companies.

MySQL will continue to monitor the industry's reaction and adoption of the new license, as we decide the best overall course for our community, our company, our users and our customers.

Tuesday, 26 June 2007

Forum Improvement Suggestions by Top Posters

Earlier this month, Lenz Grimmer and I approached the top Forum posters on our Forums (, thanking them for their contributions and soliciting them for feedback on how we could improve the Forums to make them more usable and fun to use. Especially, we asked for suggestions in these areas:

  • for easier navigation / threading / search

  • for ranking / highlighting / voting on entries

  • for showing user profiles / avatars / case studies of contributors

Of the 24 people we approached, fifteen replied. Out of these, thirteen came back with suggestions, some of which were very detailed proposals.

Here is a condensed summary of the most popular requests/suggestions:

  1. Re-enabling the display of new posts per forum on the front page was the most requested change by all.

  2. The Forum search function received a lot of criticism for being almost unusable and rarely returning relevant results. It should be possible to provide more search criteria (e.g. selecting Forums to search) and the results should highlight the selected keywords.

  3. Being able to rank/vote replies was considered a useful addition by several, also a ranking of individuals was requested, to indicate competence of posters.

  4. Many were asking for a feature to better keep track of the threads that they have contributed to, e.g. an option to see all of the forum posts that they have posted and replied to or marking threads differently if they include postings from oneself.

  5. Some requested improvements in the displaying of threads, e.g. being able to open/collapse subthreads/nodes, or moving threads to the top of the list when new posts have arrived.

  6. Some improvements for the user profile pages were requested, e.g. a list of recent postings, number of messages posted, most active forums, link to the bug database (reported bugs) or more personal information.

  7. Avatars were generally frowned upon, as being too childish and adding unnecessary overhead.

A big Thank You for good suggestions go to

  • Felix Geerinckx

  • Peter Brawley

  • Marc Castrovinci

  • Martin Sivorn

  • Anthony Willard

  • William Chiquito

  • Sam Morrison

  • Thomas Corbiere

  • Kathy Mazur Worden

  • Brian Papantonio

  • Björn Steinbrink

  • Harry Wang

  • Dave "Guelphdad" Lake

Oh, and by the way: Our Web Team is swamped with requests. So don't expect to see the good suggestions come to fruition too soon. This is just for you to know that we're listening, and we're planning some of the above improvements to take place. If you have further suggestions, email Lenz or myself at

Thursday, 21 June 2007

Alfresco, Optaros & MySQL Seminar in Munich 26.6.2007

Alfresco has a seminar next week in Munich, on Tuesday 26.6.2007 17:00-20:00 at the Hotel Excelsior close to Stachus. I'll be talking about MySQL's relationship to its communities.

I'm looking forward to meeting our joint users, and learning more about Alfresco Enterprise Content Management -- including the case study from the Swiss Federal Court.

Friday, 15 June 2007

Habbo Hotel: Scale-out from Finland -- "everyone can play"

A good three years ago at the Linux Summit 26-27.2.2004 in the Finlandia Hall in Helsinki, I gave a presentation on "Why MySQL?" together with Osma Ahvenlampi, CTO of Sulake Labs, the creators of Habbo Hotel, one of the world's largest teen online communities present in 29 countries.

Now, browsing the web pages of COSS, the Finnish Centre for Open Source Solutions, I ran across their slide repository and specifically Osma's slides on the topic of "Infrastructure for Innovation, which is all about scale-out and describes their site which is built with MySQL as the database.

Sulake Corporation was founded May 2000 in Helsinki, and is an interactive entertainment company based on online communities and casual multiplayer games. Their tagline is "everyone can play", which they expand in their credo "Habbo provides the most fun and creative hangout packed with friends and excitement".

Now for the slightly more technical overview:

  • Global infrastructure: 4 data centers, 29 countries

  • Distributed game servers

    • Over 300 live CPU cores

    • 20 MySQL servers

    • Capacity for 130,000 concurrent users

  • Self-developed game server technology

  • Director/Shockwave based in-browser game client

The technology they build upon is the Linux-Java-MySQL stack, mostly with Linux servers, some Solaris. The server software Java 2 Standard Edition, with transaction processing using J2EE / JBoss. Look at Osma's slides for more buzzwords: Hibernate, Spring, Jakarta Commons, EHCache, ICU4J, DOM4J, JMock, JGroups, JS Rhino, Junit, Sitemesh, Webwork...

Habbo runs on MySQL 5.0 with terabytes of data. Sulake claims they upgraded since they found 5.0 to perform better with complex queries, and their setup now includes the 5.0 features of federated tables and SQL views. Most interesting is probably their unique scale-out solution, with multi-master, backup+analytics replicas, averaging 10000 events / second. The nature of the online community application is such that they get an order of magnitude more write-intensive database load than traditional Master + Slaves applications. Distributed replication is used for online backups, where Ibbackup and filesystem snapshots minimise availability impact. Data volumes aren't exactly modest, with over 10 gigs of transaction logs per day.

Go Habbo! Go Sulake! And go Osma!