MySQL

The world's most popular open source database

Contact a MySQL Representative


  • MySQL.com
  • Developer Zone
  • Partners & Solutions
  • Customer Login
  • DevZone
  • Downloads
  • Documentation
  • Articles
  • Forums
  • Bugs
  • Forge
  • Blogs
 
  • Pages

    • About me
    • Bio
    • Press Release: “Kaj Arnö Appointed MySQL VP of Community Relations”
  • Calendar

    June 2007
    M T W T F S S
    « May   Jul »
     123
    45678910
    11121314151617
    18192021222324
    252627282930  
  • Recent Posts

    • Estonia, Latvia and Lithuania: A Tour of the Three Baltic Countries
    • Cross-platform MySQL Runs Best On Sun
    • Post from Uruguay: Meeting Señor Castro at the local launch of MySQL
    • Argentina Launch of MySQL: Customers, Meetings, Press
    • In Argentina, Uruguay and Chile
    • Meet Dups, our new MySQL Community Manager in North America!
    • Picasa Web: Sharing pictures, in particular for blogs
    • Dopplr: Joining the Social Network for Travellers
    • The Sun Model for Open Source business is emerging
    • Aslam Raffee, Innovator in Open Source Public Policy
    • South Africa, a country on track for both growth and happiness
    • Now I’m blogging in Russian, too!
    • I’m blogging in Italian!
    • Deadline extension: MySQL Conf Call for Papers open until 5 Nov 2008
    • mysqlconfde08: MySQL Customer Conference in Munich 21.10.2008
  • Archives

  • Blogroll

    • Kaj fotografiert
    • No Software Patents!
    • Planet MySQL


  • Tags

    Alexander Arnö Argentina Black Swan Blogging Blogs Books Brazil Call for Papers Call for Participation CfP Community Database design David Axmark Event scheduler German Getting Things Done Growth Innovation Ivan Nikitin Japan Language Launch Mårten Mickos Michael "Monty" Widenius MySQL MySQL 5.1 MySQL AB MySQL User Conference MySQL Users Conference Nassim Nicholas Taleb Open Source Paris Partitioning Photography PostgreSQL Social Networking South Africa Spanish Speed Reading Sun Microsystems Sun Tech Days Travel Uruguay Use case Workbench
  • Categories

    • Architecture of Participation
    • Connectors
    • Documentation
    • Events
    • Falcon
    • GPL
    • GUI
    • Licensing
    • MySQL
    • MySQL Cluster
    • MySQL Proxy
    • MySQL Server
    • MySQL Users Conferences
    • MySQL Workbench
    • Photography
    • PHP
    • Release Policy
    • Ruby on Rails
    • Running
    • Summer of Code
    • Sun
    • Sun visits
    • Travel
    • Use cases
    • Virtual company
Observations by Kaj Arnö @Sun
« In Search of a CIO for MySQL
Alfresco, Optaros & MySQL Seminar in Munich 26.6.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!

This entry was posted on Friday, June 15th, 2007 at 19:49 and is filed under MySQL, MySQL Server, Use cases. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Leave a Reply

Observations by Kaj Arnö @Sun is proudly powered by WordPress MU running on Blogs.mysql.com.
Entries (RSS) and Comments (RSS).