By Mat Keep on Jul 17, 2012
Attracting over 3m subscribers in just 6 months and growing by 30,000 new users per day, Playful Play needed a database that was able to keep pace with the massive scalability and high availability demands of the wildly successful La Vecindad de El Chavo Facebook game.
Playful Play selected MySQL Cluster CGE running on a public cloud to power their gaming platform, providing:
- 45% improvement in performance;
- 99.999% uptime;
- 80% reduction in DBA overhead;
- Local language support, 24x7.
As a result, Playful Play has been able to maintain user growth rates and attract new advertisers to the platform, while enhancing agility and reducing cost.
Based out of Monterrey, Mexico, Playful Play has created Latin America’s #1 Facebook game based on "El Chavo del 8", the cultural and TV phenomenon that has been running across Latin America for the past four decades. The show is also extremely popular in Spain and the United States.
El Chavo (The Kid) appeals to a broad demographic, having attracted over 3M subscribers in its first 6 months, and adding 30,000 new users per day. The game has also proved popular with advertisers who are keen to integrate social gaming into their marketing strategies in order to raise awareness and build brand loyalty.
Through partnerships with Televisa Home Entertainment and Grupo Chespirito, Playful Play has aggressive plans to grow their business through the development of new social games targeting Latin America, Brazil, the United States and Spain.
The Challenges of Rapid Growth
As a start-up business, fast time to market at the lowest possible case was the leading development priority after Playful Play secured the rights to develop the El Chavo game.
As a result, Playful Play developed the first release of the game on the proven LAMP (Linux, Apache, MySQL, PHP / Perl / Python) stack.
To meet both the scalability and availability requirements of the game, Playful Play initially deployed MySQL in a replicated, multi-master configuration.
The database is core to the game, responsible for managing:
- User profiles and avatars
- Gaming session data;
- In-app (application) purchases;
- Advertising and digital marketing event data.
As La Vecidad de El Chavo spread virally across Facebook, subscriptions rapidly exceeded one million users, leading Playful Play to consider how to best architect their gaming platforms for long-term growth. They had heard about the release of MySQL Cluster 7.2, and so decided to initiate an evaluation to determine if it could meet their requirements.
The Route to Internet-Scale with MySQL Cluster
In addition to growing user volumes, the El Chavo game also added new features that changed the profile of the database. Operations became more write-intensive, with INSERTs and UPDATEs accounting for up to 70% of the database load.
The game’s popularity also attracted advertisers, who demanded strict SLAs for both performance (predictable throughput with low latency) as well as uptime.
Through their evaluation, the developers at Playful Play identified that MySQL Cluster was able to meet their needs.
Write Performance with Real-Time Responsiveness
MySQL Cluster’s multi-master architecture, coupled with the ability to auto-shard (partition) tables across nodes, enabled Playful Play to meet the performance and scalability demands of the El Chavo game, without changes to their applications.
The ability to store data in memory and persist to disk delivered the sub-millisecond responsiveness and durability demanded by the game’s users.
In addition, Playful Play was able to horizontally scale the database across low-cost commodity nodes running in the cloud, reducing their TCO and enhancing agility.
The shared-nothing, distributed design of MySQL Cluster coupled with integrated replication and self-healing recovery ensured high availability of the gaming platform, without DevOps intervention.
MySQL Cluster was able to protect against downtime resulting from both failures and planned upgrades. For example, Playful Play has been able to scale the cluster on-line to support growing user volumes, without service interruption.
Data Integrity Supporting Monetization
As the game evolved to support in-app purchases and digital marketing, the ACID-compliance offered by MySQL Cluster afforded the transactional integrity demanded by users and advertisers.
The Value of MySQL Cluster Consulting, Support and Management Tools
Following their successful evaluation, Playful Play deployed MySQL Cluster with their public cloud provider.
Playful Play wanted to ensure they were getting the most out of the deployment, so Oracle’s MySQL consulting team reviewed their Architecture and Design. The consultants were able to further optimize the database to deliver even higher levels of performance, and demonstrated how Playful Play could automatically scale the database using MySQL Cluster Manager.
The MySQL Cluster deployment at Playful Play is growing rapidly, and currently comprised of over 25 nodes running Linux on commodity x86 servers, each configured with 24-cores and 64GB of RAM:
- 12 x MySQL Cluster data nodes;
- 12 x MySQL Server SQL nodes;
- 2 x MySQL Cluster management nodes.
Each data and SQL node is co-located to a single physical instance.
Playful Play Deployment Architecture, built for rapid scale
Using the architecture above, MySQL Cluster is currently supporting:
- 3 million subscribers, with 30,000 new additions per day across Latin America, Europe and U.S;
- 10,000 concurrent users;
- 10,000 Transactions Per Second;
- 99.999% uptime.
"The MySQL support service has been essential in helping us for troubleshooting and giving recommendations for the production cluster, Thanks" Carlos Morales – DBA, Playfulplay.com México
Playful Play has deployed MySQL Cluster Carrier-Grade Edition, providing access to technical and consultative support, in addition to the MySQL Enterprise Monitor and MySQL Cluster Manager tools.
MySQL Enterprise Monitor Enables Continuous Service Availability
MySQL Enterprise Monitor enables Playful Play to proactively monitor the entire cluster from a single GUI. DBAs are automatically notified if any environment variables begin to exceed pre-defined thresholds, and presented with the instructions necessary to take corrective action, before users are impacted.
MySQL Cluster Manager is used to automate cluster configuration changes, eliminating the risk of manual errors and significantly enhancing DevOps productivity.
The subscription has delivered terrific value to Playful Play, enabling them to:
- Improve performance by 45% while reducing CPU utilization by 35%, providing significant headroom for continued growth;
- Reduced DBA overhead by 80%, providing substantial cost savings;
- Access to local language support, 24x7.
The Future with MySQL Cluster
Playful Play has aggressive growth plans, seeking to attract over 50M subscribers within 5 years. El Chavo del 8 is continuing to gain widespread popularity in Latin regions around the world, and will be joined by other social networking games currently in development. The next major target is Brazil, presenting a very attractive, emerging market in social gaming.
MySQL Cluster CGE has been selected as the database platform powering this growth.
Playful Play will be presenting their experiences and best practices with MySQL Cluster at the MySQL Connect conference, September 29th and 30th 2012 in San Francisco.