Game analytics pipeline
Game developers are increasingly looking for ways to better
understand player behavior so that they can improve the gameplay
experience to retain and grow their player base. Game analytics
represents the technical infrastructure and processes that is
required to understand and analyze the data that is generated from
the game and related services. This typically requires the use of
an analytics pipeline architecture that can support this
end-to-end process, such as
the Game
Analytics Pipeline
Game analytics architectures have the following characteristics:
-
Data sources send data in a common format such as JSON and typically include game servers and game backend services, as well as game clients, including PC, mobile devices, and game consoles.
-
A game analytics pipeline automates the entire workflow of ingesting and storing the raw data and processing it into usable output formats so that it can be analyzed efficiently and cost effectively by data consumers, such as end users and analytics applications.
-
Game analytics pipelines provide support for ingesting and processing high volumes of real-time data to scale as a game grows.
-
Provide support for both real-time and batch reporting use cases. For example, real-time dashboards and alerts are typically used by live ops teams to monitor game infrastructure and player behavior to detect issues. Data analyst teams typically rely on as-necessary and batch reporting to understand trends over time.
Serverless game analytics pipeline for gameplay telemetry
Game data is ingested from game clients, game servers, and other applications. The streaming data is ingested into Amazon S3 for data lake integration and interactive analytics. Streaming analytics processes real-time events and generates metrics. Data consumers analyze metrics data in Amazon CloudWatch and raw events in Amazon S3.
-
Solution API and configuration data: Use Amazon API Gateway to provide a REST API for administering your game analytics pipeline and storing configuration data in Amazon DynamoDB using Lambda functions. You can build an internal portal on top of this API or a custom command line interface for administration. A REST API also provides server-authentication for ingesting gameplay data from data sources and forwarding the telemetry data to Amazon Kinesis Data Streams for real-time processing and ingestion into storage.
-
Events stream: Amazon Kinesis Data Streams captures streaming data from your game and allows real-time data processing by Amazon Data Firehose and Amazon Managed Service for Apache Flink.
-
Streaming analytics: Managed Service for Apache Flink analyzes streaming event data from the Kinesis Data Streams and can generate custom metrics and alerts that are published to CloudWatch using Lambda functions.
-
Metrics and notifications: Use Amazon CloudWatch to monitor your solution's metrics, logs, and alarms. Use Amazon SNS for sending notifications to on-call engineers and other data consumers.
-
Streaming ingestion: Use Firehose to consume your streaming data from Kinesis Data Streams and deliver it to your data lake in Amazon S3 for long-term storage, transformation, and integration with other data.
-
Data lake integration and ETL: Use AWS Glue for ETL processing workflows and to organize your metadata in the AWS AWS Glue Data Catalog, which provides the basis for a data lake for integration with flexible analytics tools.
-
Interactive analytics: End users can use Amazon Athena to perform ad-hoc interactive queries on the datasets stored in Amazon S3, and Quick can be used to build dashboards.
Refer to the
Game
Analytics Pipeline