This Guidance helps customers bring together different types of datasets and merge them into a single, consolidated view. AWS Game Tech customers can create a thorough behavioral profile of their players to gain further insights into how players interact with a game, participate within the game community, and socialize with other players. The Cohort Modeler categorizes and aggregates player metrics into individual player groupings, based on different types of metric data, including in-game metrics, in-game behaviors, and financial transactions. Deeper understanding into player behavior informs ongoing design and development decisions.
Architecture Diagram

[Architecture diagram description]
Step 1
Game servers and clients use sensors to evaluate player actions such as behavioral toxicity, player style, and in-game purchases. These actions are declaratively logged with the Cohort Modeler API to collect data about player progression, community building, retention, and more.
Step 2
Data consumers store content recommendations and query the API. Data consumers include artificial intelligence and machine learning (AI/ML) solutions and matchmaking services that connect players together.
Step 3
Amazon API Gateway hosts a resource-based Cohort Modeler API to interact with graph vertices and graph edges.
Step 4
AWS Lambda fulfills requests made to the API endpoint, converts HTTP/S requests into Gremlin graph queries, and submits these requests to the database.
Step 5
Amazon Neptune is a fully managed graph database that stores player data and interactions.
Step 6
Business users can use a Jupyter Notebook hosted on the AWS Cloud to interactively explore player cohorts.
Step 7
Developers can modify and deploy the Cohort Modeler code sample using AWS Serverless Application Model (AWS SAM), which is powered by AWS CloudFormation.
Well-Architected Pillars

The AWS Well-Architected Framework helps you understand the pros and cons of the decisions you make when building systems in the cloud. The six pillars of the Framework allow you to learn architectural best practices for designing and operating reliable, secure, efficient, cost-effective, and sustainable systems. Using the AWS Well-Architected Tool, available at no charge in the AWS Management Console, you can review your workloads against these best practices by answering a set of questions for each pillar.
The architecture diagram above is an example of a Solution created with Well-Architected best practices in mind. To be fully Well-Architected, you should follow as many Well-Architected best practices as possible.
-
Operational Excellence
Application, workload, and infrastructure component telemetry is accessed through Amazon CloudWatch Logs. All operational health metrics are accessible through CloudWatch. The application itself tracks user and transaction telemetry through ingest and query APIs.
-
Security
All data resides in Neptune and is encrypted at rest. Any bulk ingestion data (non-API data) resides on Amazon Simple Storage Service (Amazon S3) and is also encrypted at rest. Data in-transit is encrypted through a dedicated VPC endpoint to which only Neptune has access. Any query data (through the API) is encrypted in-transit using Transport Layer Security (TLS)/HTTPS.
-
Reliability
The architecture is decoupled using a three-tier access pattern, from API Gateway to Lambda to Neptune. Each layer is independently scalable and highly available. Additionally, the layers are stateless and allow for automatic retry limits. Each layer individually sends logs to CloudWatch for analysis. The architecture is delivered as infrastructure code (IaC) through CloudFormation. CloudFormation manages any updates, roll-backs, or errors.
-
Performance Efficiency
The services in this architecture provide automatic scaling and linear cost forecasting. Neptune has features to explore and determine player and cohort relationship modeling. The architecture also uses a reference Jupyter Notebook with code samples and provides step-by-step instructions on ingesting, querying, and modeling data
-
Cost Optimization
The architecture minimizes data transfer costs out of the AWS Region by charging for API query responses for player insights only. This results in data transfer costs only being incurred for services used in the architecture and not for data ingest. Additionally, you can forecast costs based on past usage.
-
Sustainability
The services in this solution are serverless, which eliminates the need for hardware. In general, Neptune supports serverless capabilities. In this architecture, we use a version of Neptune that is not serverless but that still uses the minimum amount of hardware needed to maintain reliability.
Implementation Resources

A detailed guide is provided to experiment and use within your AWS account. Each stage of building the Guidance, including deployment, usage, and cleanup, is examined to prepare it for deployment.
The sample code is a starting point. It is industry validated, prescriptive but not definitive, and a peek under the hood to help you begin.
Related Content

Gain Insights Into Your Player Base Using The AWS for Games Cohort Modeler
AWS for Games Cohort Modeler: Graph Data Model
Disclaimer
The sample code; software libraries; command line tools; proofs of concept; templates; or other related technology (including any of the foregoing that are provided by our personnel) is provided to you as AWS Content under the AWS Customer Agreement, or the relevant written agreement between you and AWS (whichever applies). You should not use this AWS Content in your production accounts, or on production or other critical data. You are responsible for testing, securing, and optimizing the AWS Content, such as sample code, as appropriate for production grade use based on your specific quality control practices and standards. Deploying AWS Content may incur AWS charges for creating or using AWS chargeable resources, such as running Amazon EC2 instances or using Amazon S3 storage.
References to third-party services or organizations in this Guidance do not imply an endorsement, sponsorship, or affiliation between Amazon or AWS and the third party. Guidance from AWS is a technical starting point, and you can customize your integration with third-party services when you deploy the architecture.