Imagine this: You’re playing your favorite massively multiplayer online role-playing game (MMO) and you just finished a 25-man raid. You defeated the boss and the phat loot is split amongst the players. But in the middle of your celebration, the game crashes and you find out there’s a rollback. All of the hard work you just did was wiped out. And you know you’ll never get it back – unless, of course, you do it all over again.
This happens more often than you think in the MMO industry and the problem is likely to get worse before it gets better.
In addition to MMOs, more and more often we see games that were once offline now requiring online play. This is usually positioned under the guise of battling piracy, but also allows for features like a shared auction house and easy access to online cooperative play. The most popular of these games may have millions of players online at any one time, playing on multiple servers. The more players, the more servers a game publisher needs to run their game. As the industry currently stands, that means spinning disk arrays in server farms.
With any server farm built around spinning disks, sprawl is a big concern. As more disks are added, the space needed to house them grows larger. Because they’re constantly spinning they generate heat, causing climate control costs to spin out of control. If the server room grows too hot, the servers can crash, the game goes down and that’s bad news. Crash often enough, players will abandon the game and never return. It’s like any product, if you make it difficult for your customers to enjoy the game when and how they want to, they will find another product that meets their needs better.
But what would happen if game developers and publishers moved to a better server solution? What would happen if instead of spinning disks that were state of the art in the 20th century, they moved to the 21st century solution: NAND Flash?
On the developer side, a product like WHIPTAIL’s Flash storage will reduce sprawl. If IOPS are an issue, Flash has the performance characteristics that will allow consolidation. For example, some games will have multiple servers running a realm. Multiple continents will each have their own array, as will dedicated player vs. player (PvP) areas like battlegrounds. In most use cases, several of these servers can be consolidated into a single Flash array. This means a smaller footprint, less energy consumed, saved energy costs, and less generated heat, solving both sprawl and the climate control predicament.
On the player’s side, Flash storage arrays will reduce the amount of time they spend on loading screens. Flash arrays are faster by orders of magnitude than spinning disk. When several servers are consolidated onto one Flash server array, the loading screen wait when moving from continent to continent is practically eliminated.
But let’s go back to our initial example, the raid and rollbacks. Believe it or not, this is the same process every database-centered business in the world deals with. In the business world, this is referred to as disaster recovery. Let’s say your database crashes at 12 p.m. and your server crashes at 12:15 p.m. That’s only a loss of 15 minutes, right? Actually, no. You’ve also lost whatever time it takes to get your servers back up and running, a time when all productivity, or game play, is brought to a complete stop. Once the servers are back up, all of the transactions that should have been run starting at noon are back on the clock. It could take hours to get transaction time back in sync with clock time. This is another distinct advantage for Flash arrays since they have no moving parts. Cycle the power and you’re back in business while a spinning disk is still spooling up. But that’s only half the story.
Databases, whether for games or business, utilize a function known as checkpointing. This is when all committed transactions are written to the log. With spinning disks, these checkpoints are spaced out because too frequent writes affect performance. Flash arrays, however, have write performance many times better than spinning disks, allowing checkpoints to occur much more frequently. When a DB crashes, you’re losing all of the uncommitted writes back to the last successful checkpoint. Obviously you want your checkpoints to occur as frequently as possible to keep your data safe. Flash arrays like WHIPTAIL’s ACCELA and INVICTA are optimized for these functions out of the box.
Developers risk alienating a large portion of their community every time their game crashes. It behooves them to make the move to Flash technology to provide the most uptime, the least intrusive down time and the best possible performance. The less time spent on loading screens means more phat loot and less frustration.