View a markdown version of this page

GAMECOST03-BP02 Optimisez les bases de données pour les backends de jeu - Lens de l'industrie du jeu

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

GAMECOST03-BP02 Optimisez les bases de données pour les backends de jeu

Les jeux s'appuient largement sur des bases de données pour stocker un large éventail de données critiques, qu'il s'agisse de profils de joueurs, d'inventaires, de microtransactions ou de mesures de progression. Les bases de données jouent également un rôle crucial dans la gestion des aspects sociaux des jeux, tels que la création et la gestion de groupes de joueurs et l'application de politiques de modération. À mesure que le nombre de joueurs d'un jeu augmente, les coûts associés à la base de données augmenteront inévitablement pour répondre à la demande croissante en matière de données et d'utilisation.

Niveau d’exposition au risque si cette bonne pratique n’est pas respectée : moyen

Directives d’implémentation

Pour les backends de jeu exécutés sur Amazon Aurora, plusieurs stratégies d'optimisation des coûts peuvent être utilisées. L'une des principales recommandations consiste à redimensionner automatiquement vos répliques de lecture en fonction des modèles d'utilisation, en augmentant ou en diminuant dynamiquement le nombre de répliques pour gérer les fluctuations du trafic. Cela signifie que vous payez pour les ressources dont vous avez réellement besoin. Une autre tactique d'optimisation consiste à remplacer les répliques de lecture utilisées pour l'analyse des jeux par des exportations d'instantanés de base de données vers Amazon S3, car le service de stockage S3 est généralement plus abordable que les instances de base de données Aurora provisionnées. Pour plus d'informations, consultez Exportation de données d'instantanés de base de données vers Amazon S3 pour Amazon RDS.

L'exploration de l'utilisation d'instances de base de données réservées pour Amazon Aurora pour vos instances de base de données principales et la transition vers la configuration Aurora Serverless peuvent également permettre de réaliser des économies substantielles à long terme en offrant plus de flexibilité et un contrôle granulaire de l'utilisation de vos ressources.

De même, pour les backends de jeu qui utilisent Amazon DynamoDB, le mode de capacité à la demande de DynamoDB peut s'avérer un choix efficace, en particulier pour les charges de travail nouvelles ou imprévisibles, car il vous permet de ne payer que pour les ressources que vous consommez sans avoir à surprovisionner. Au fur et à mesure que les modèles de trafic de votre jeu deviennent plus stables et prévisibles au fil du temps, vous pouvez passer au mode de capacité provisionnée de DynamoDB, qui peut vous permettre de réaliser des économies grâce à une meilleure planification des capacités. L'activation de la mise à l'échelle automatique de vos tables DynamoDB constitue une autre optimisation clé, car elle permet au service d'ajuster dynamiquement la capacité provisionnée en fonction des fluctuations du trafic. Testez la structure de données de votre jeu dans un environnement de développement avant son lancement pour trouver et supprimer les index secondaires locaux (LSI) et les index secondaires globaux (GSI) inutiles. Cela peut entraîner des économies substantielles en termes de stockage et d'exploitation des données de jeu. La suppression des opérations de scan inefficaces du code principal de votre jeu au profit de requêtes plus ciblées, l'achat de capacité réservée à Amazon DynamoDB et l'utilisation de DynamoDB Streams avec des AWS Lambda déclencheurs pour traiter les événements du backend du jeu peuvent encore optimiser vos coûts DynamoDB. Pour plus d'informations, consultez la section Meilleures pratiques pour interroger et analyser des données dans DynamoDB.

En mettant en œuvre ces stratégies d'optimisation des coûts pour Amazon Aurora et DynamoDB, les développeurs et les éditeurs de jeux peuvent réduire de manière significative leurs dépenses liées aux bases de données dorsales de jeux.

Étapes d’implémentation

  • Utilisez la mise à l'échelle automatique des répliques de lecture Aurora et les exportations d'instantanés de base de données vers Amazon S3 pour gérer de manière rentable les fluctuations du trafic et les besoins d'analyse.

  • Optimisez les coûts de DynamoDB en commençant par une capacité à la demande pour les nouvelles charges de travail, en passant à une capacité provisionnée avec mise à l'échelle automatique pour un trafic prévisible, et en supprimant les LSI et GSI inutilisés.

  • Évitez les opérations de scan inefficaces au profit de requêtes ciblées, utilisez des instances réservées ou des capacités réservées, et utilisez DynamoDB Streams AWS Lambda pour le traitement des événements.