View a markdown version of this page

GAMECOST03-BP02 Optimiza las bases de datos para los backends de los juegos - Lente de la industria del juego

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

GAMECOST03-BP02 Optimiza las bases de datos para los backends de los juegos

Los juegos dependen en gran medida de las bases de datos para almacenar una amplia gama de datos críticos, desde los perfiles e inventarios de los jugadores hasta las microtransacciones del juego y las métricas de progreso. Las bases de datos también desempeñan un papel crucial en la gestión de los aspectos sociales de los juegos, como la creación y el mantenimiento de grupos de jugadores y grupos y la aplicación de políticas de moderación. A medida que crezca la base de jugadores de un juego, los costes asociados a las bases de datos aumentarán inevitablemente para adaptarse a las crecientes demandas de uso y datos.

Nivel de riesgo expuesto si no se establece esta práctica recomendada: medio

Guía para la implementación

En el caso de los backends de juegos que se ejecutan en Amazon Aurora, se pueden emplear varias estrategias de optimización de costos. Una recomendación clave es escalar automáticamente las réplicas leídas en función de los patrones de uso, aumentando o reduciendo de forma dinámica el número de réplicas para controlar las fluctuaciones del tráfico. Esto significa que está pagando por los recursos que realmente necesita. Otra táctica de optimización consiste en reemplazar las réplicas de lectura utilizadas para el análisis de juegos por exportaciones de instantáneas de bases de datos a Amazon S3, ya que el servicio de almacenamiento de S3 suele ser más asequible que las instancias de base de datos Aurora aprovisionadas. Para obtener más información, consulte Exportación de datos de instantáneas de bases de datos a Amazon S3 para Amazon RDS.

Explorar el uso de instancias de bases de datos reservadas para Amazon Aurora en sus instancias de bases de datos principales y hacer la transición a la configuración sin servidor de Aurora también puede generar importantes ahorros de costos a largo plazo, ya que proporciona una mayor flexibilidad y un control granular sobre la utilización de los recursos.

Del mismo modo, para los backends de juegos que utilizan Amazon DynamoDB, emplear el modo de capacidad bajo demanda de DynamoDB puede ser una opción eficaz, especialmente para cargas de trabajo nuevas o impredecibles, ya que le permite pagar solo por los recursos que consume sin necesidad de aprovisionar en exceso. A medida que sus patrones de tráfico de juegos se vuelvan más estables y predecibles con el paso del tiempo, podrá pasar al modo de capacidad aprovisionada de DynamoDB, que puede suponer un ahorro de costes gracias a una mejor planificación de la capacidad. La activación del escalado automático en las tablas de DynamoDB es otra optimización clave, ya que permite al servicio ajustar de forma dinámica la capacidad aprovisionada en función de las fluctuaciones del tráfico. Pon a prueba la estructura de datos de tu juego en un entorno de desarrollo antes del lanzamiento para encontrar y eliminar los índices secundarios locales (LSI) e índices secundarios globales (GSI) innecesarios. Esto puede suponer un ahorro sustancial en el almacenamiento de los datos y las operaciones del juego. Si elimina las operaciones de escaneo ineficientes del código de backend del juego y opta por consultas más específicas, adquiere la capacidad reservada de Amazon DynamoDB y aprovecha las transmisiones de DynamoDB con AWS Lambda activadores para procesar los eventos de backend de los juegos, puede optimizar aún más los costos de DynamoDB. Para obtener más información, consulte las prácticas recomendadas para consultar y escanear datos en DynamoDB.

Al implementar estas estrategias de optimización de costos tanto para Amazon Aurora como para DynamoDB, los desarrolladores y editores de juegos pueden reducir considerablemente el gasto en bases de datos de backend de juegos.

Pasos para la implementación

  • Utilice Aurora, el escalado automático de réplicas de lectura y la exportación de instantáneas de bases de datos a Amazon S3 para gestionar de forma rentable las necesidades fluctuantes de tráfico y análisis.

  • Optimice los costos de DynamoDB empezando por la capacidad bajo demanda para las nuevas cargas de trabajo, pasando a la capacidad aprovisionada con escalado automático para un tráfico predecible y eliminando los LSI y GSI no utilizados.

  • Evite operaciones de escaneo ineficaces en favor de consultas específicas, utilice instancias reservadas o capacidad reservada y utilice DynamoDB Streams with para el procesamiento de eventos. AWS Lambda