By Stuart McCaul, EMEA MD, Basho Technologies
Anyone who has cursed the laughing piggies and sworn they’ll just have one more go knows how addictive the Angry Birds games can be. Built on great gameplay, ideas and humor, Angry Birds offers the sort of quick escapism that can only be found in flinging cartoon animals at each other. However, for Rovio, the developers behind the Angry Birds series, catching the public’s imagination is only half the battle; now they need to keep the public’s attention. And there is much more that goes on behind the scenes than you would think to ensure that people stay happy.
The central challenge facing Rovio is the collection and management of data which eclipses that of many larger enterprises. As of last year, Angry Birds experienced over two billion downloads, 263 million monthly users, and was downloaded on 50 percent of new mobile devices. Now, consider the amount of data each user creates individually, in the form of personal information, player stats or purchases. The numbers get big fast.
The challenges don’t stop there. Gamers are arguably the most challenging audience – with extremely high expectations that demand low latency gameplay and 24/7 access to their accounts on all of their devices. A few seconds of downtime or latency can be disastrous – any gamer who is plagued by jerky, stilted movement or controls thanks to game latency will not hang around. Gamers also expect that their data, such as scores, stats, and user profiles, will always be accessible and never lost.
Gaming companies like Rovio have nailed down critical data by focusing on the key factors—performance and availability—that affect business revenue, attrition rates, and the experience of their fans. To protect these key factors, many leading gaming companies have looked towards distributed databases to better serve their fans, thanks to the massive scalability and speed they provide. In the face of the exponential critical data growth and pressure to constantly meet high customer experience expectations Rovio chose to follow this exact path. And that’s how we at Basho, with our Riak distributed database, got involved!
Since Rovio chose to deploy Riak, we have helped them with the following challenges
- Cost-effective management of rapid growth. By March 2013, Rovio’s games soared to 1.7 billion downloads and counting. This translated to a huge expansion in users, each bringing hundreds of pieces of data to the system and making scalability crucial to success. Furthermore the growth in users had significant impacts on existing processes, such as the resource intensive Account Push Notification Service that sends different notifications to players in batches based on their timezone and other parameters. To solve this issue Rovio’s Riak infrastructure is designed to easily add and remove nodes, quickly scaling from tens to hundreds of servers based on immediate customer demand to save money and resources.
- Predictable latency. If an app is unreliable or experiences lag, gamers will quickly move on. With Riak’s inherent scalability, Rovio can deal with the constantly fluctuating levels of data flow ensuring relatively low, predictable latency, given its very large, persisted data set.
- Global data locality. For gaming companies, it is essential to keep critical data as close as possible to players to deliver optimal performance. Multi-datacenter replication establishes a global presence to keep data close to users, while providing the same high level of service, no matter where they are in the world. Rovio’s Game Storage Service is based on Riak. It stores multiple sessions per player account and allows users to transfer game sessions across devices.
Gaming companies of all sizes have realized the benefits of distributed NoSQL systems and have a few key rules to offer enterprises looking to have the same successful business model:
- Keep data close to your customers to deliver low latency experiences
- Be flexible – utilize a schema-less design to easily manage and deliver multiple data types and provide a consistent user experience across various channels
- Never go down – with today’s technology, failure and downtime is simply not an option
- Be predictable – there are enough surprises in business but architecture costs, scale, and user experience don’t need to be one
- Pay-as-you-go – systems that allow you to easily scale up or down make it simple to only pay for what you need at the time
Many companies have spent the last few years learning to capture big data, but now they need to learn how to control it. The world is becoming more connected and people are using more devices that ever before to socialize, work and game. Harnessing the data that organizations like Rovio create is the key to providing a game that excites, captivates and continues to grow. The success of Angry Birds encapsulates how a simple mobile game can require a robust and effective enterprise infrastructure to bring the house down, in some cases literally.