AWS for Games Blog

Games and databases: Tutorials, guides, and other useful resources

Need an online database for your game? Over the last few months, we’ve written a few guides and tutorials to help you get up and running with online databases for various game development scenarios. We thought it would be useful to recap some of this content in case you’ve missed any of it.

First Steps

If you’re not even sure if you need a database for your game, check out the article Managed databases for awesome games. The article covers the very basics, like what databases are used for and the differences between SQL and NoSQL.

If you are ready to integrate a database into your game, but aren’t sure where to start, the webinar Intro to databases in games covers the different types of online databases that AWS offers. This webinar presents what databases solutions are a good match to several different game development problems.

What’s Next

Once you’ve got a good idea of what the correct solution is for your game, we have some tutorials that walk you through integrating AWS services in to your game. These were developed by Alex DeBrie, an AWS Data Hero. These tutorials get you started by walking you step by step through a complete solution, including all the client code you need to get your game talking to your backend service.

Inventory system for games with Amazon Aurora shows you how to build, as the title suggests, an inventory system for your game. It’s an interesting solution because it’s serverless, and uses the new data API. This makes for far less configuration than is required by a traditional instanced database and client connector library.

Build a turn-based game with Amazon DynamoDB and Amazon SNS walks you through building the game nim. It uses DynamoDB to store game state and alerts players when it’s their turn with the Amazon Simple Notification Service (SNS). This includes texting the player to remind them to move, a great feature for a turn-based game that keeps your players engaged.

Build a real-time leaderboard with Amazon Aurora serverless and Amazon ElastiCache demonstrates how to integrate a fast in-memory database into your game. In-memory databases are used when you have high traffic data and need lightning fast performance to keep players up to date. Leaderboards are a typical use case for in-memory databases, and this tutorial guides you through all the configuration needed to get started with Amazon ElastiCache with Redis. This includes VPC setup and all the security configuration required to get a VPC talking to serverless services. It also shows how to back the in-memory database with a traditional database for historical data.

Build a friend recommendation engine for games with Amazon Neptune is a great introduction to graph databases, which are a hot topic recently. Graph databases are great at finding relationships. This helps match your players to other players who have similar interests, skill levels, game goals, etc. These databases also apply to detecting cheating and fraud, recommending content, innovative relationship-based gameplay, and more.

Aside from these great getting started guides, if you’re building a game in C++, you might be interested in this article, Game developers guide to getting started with Amazon DynamoDB. This article shows how to integrate the AWS SDK for C++ and get access to a serverless backend from your game code. It can also be a useful reference for integrating any AWS service in to a C++ game.

Lastly, if you’re looking for guidance on creating a more complete backend service, there is a free ebook you can download, Introduction to scalable game development patterns on AWS. This covers not just databases, but also developing a complete online service for your game. On top of that, it talks about hosting game servers, networking concepts, content delivery, and more. There’s a lot of useful information in this book to help you create a modern, connected game.

We hope this article helped you navigate our latest database content. For more information on databases, or any AWS Game Tech topic, here’s a few more links to help you out.

 

Chris Blackwell

Chris Blackwell

Chris Blackwell is a Senior Engineer with Amazon GameTech. Chris has three decades of experience developing games, from MMO’s to flight simulators and just about everything in between. Chris believes we’re on the cusp of a transformation of the way that we build and play games and is thrilled to be part of the revolution. When he’s not debugging his code, Chris enjoys island life with his family in the Pacific Northwest and has started playing piano way too late in life.