Stockage de données vs stockage de mémoire

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

Pour stocker des données, vous pouvez utiliser magasins de données avec le DataStoreService ou magasins de mémoire avec le MemoryStoreService.

Alternativement, vous pouvez également utiliser les types et les variables Luau pour stocker des données en mémoire dans Luau , sans utiliser les services de stockage de données ou de mémoire.

Quand utiliser des magasins de données

Le DataStoreService magasine des données à long terme qui doit durer entre les sessions, telles que la progression de l'utilisateur ou les articles d'inventaire.Les magasins de données sont cohérents par expérience, de sorte que chaque serveur pour chaque lieu dans une expérience peut accéder et modifier les mêmes données.Il existe deux types de magasins de données : standard et ordonné. Les magasins de données standard peuvent stocker des données comme des numéros, des chaînes et des tables qui n'ont pas besoin d'être classées ou triées.Ces données sont stockées sous forme de paires clé-valeur, où chaque entrée est stockée sous une clé unique dans son magasin de données et que vous pouvez récupérer, mettre à mise à jourou supprimer. Les magasins de données ordonnés ne peuvent stocker que des nombres.Chaque entrée est stockée sous une clé unique dans son magasin de données et que vous pouvez récupérer, mise à jourà jour ou supprimer.Vous pouvez classer et trier ces données numériquement et les récupérer dans l'ordre ascendant ou descendant en fonction des valeurs numériques stockées.Pour plus d'informations, voir magasins de données ordonnés.

Magasins de données standard Magasins de données ordonnés
Type de données Nombres, chaînes, booléens et tables.Seulement des chiffres.
Cas d'utilisation communs Progression de l'utilisateur, articles d'inventaire et paramètres d'expérience.Des systèmes de classement permanents et persistants à tout moment et des classements de leaders. Contrairement aux classements de mémoire, ces données de classement sont permanentes.
Sauvegarde de la version antérieure Gère automatiquement les versions précédentes de vos données pendant 30 jours.Ne gère pas les versions précédentes de vos données.

Quand utiliser les magasins de mémoire

Le MemoryStoreService est un service à haut débit et à faible latence qui stocke des données temporaires qui doivent être mises à jour ou consultées fréquemment, telles que les classements mondiaux ou les files d'attente de matchmaking.Avec les magasins de mémoire, chaque serveur pour chaque lieu dans une expérience peut accéder et modifier rapidement et fréquemment les mêmes données.Les données dans un magasin de mémoire expirent après une certaine période de temps, qui dure jusqu'à 45 jours.

Bien que les magasins de mémoire stockent des données temporaires, ils supportent également des fonctionnalités permanentes comme un marketplacemondial.Le marché est permanent, mais les articles en vente à l'intérieur ont une date d'expiration.

Magasins de mémoire
Type de données Des nombres, des chaînes, des booléens et des tables qui n'ont pas besoin de persister pendant plus de 45 jours.
Cas d'utilisation communs matchmakingbasé sur les compétences, états de match pour les jeux multijoueurs, classements quotidiens et mensuels.

Quand utiliser le stockage en mémoire dans Luau

Vous pouvez utiliser le stockage en mémoire dans Luau pour stocker des données temporaires qui doivent être accessibles avec un délai minimal et sans le coût de faire des appels de service externes vers des magasins de données ou des magasins de mémoire.Il n'y a pas de pas supplémentaires requis pour configurer le stockage en mémoire car il est déjà construit par défaut dans Lua.

Stockage en mémoire dans Luau
Type de données Nombres, chaînes, booléens et tables.
Cas d'utilisation communs Des données qui ne sont pertinentes qu'à une seule session sur un serveur et que vous pouvez mettre à jour instantanément sans vous soucier de la persistance.Exemple : Buffs actifs, points temporaires et progrès de quête en cours qui se réinitialisent lorsque l'utilisateur quitte l'expérience.
Valeurs qui changent fréquemment, comme les compteurs, les minuteries ou les drapeaux d'état.Exemple : une barre de santé d'un utilisateur qui se met à jour à chaque coup.
Éviter les restrictions de limite de taux pour les opérations de haute fréquence dans de grandes expériences actives.:Exemple : une expérience avec des dizaines d'utilisateurs interagissant avec le même objet.
Des données qui alimentent la logique du jeu, comme des variables temporaires ou des états de mise sous tension où l'accès rapide sans retard est essentiel.:Exemple : l'état actuel de l'attaque d'un utilisateur ou la santé actuelle d'un ennemi, qui doit être accessible instantanément et sans le délai impliqué dans l'appel de services externes tels que les magasins de données ou de mémoire.
Interactions multijoueurs qui ne sont importantes que dans un seul serveur.Exemple : un objectif partagé dans une expérience de mission en coopération.