Armazenamento de dados vs armazenamento de memória

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Para armazenar dados, você pode usar armazenamentos de dados com o ou armazenamentos de memória com o .

Alternativamente, você também pode usar tipos e variáveis Luau para armazenar dados em memória no Luau, sem usar os serviços de armazenamento de dados ou memória.

Quando usar armazenamentos de dados

O DataStoreService armazena dados de longo prazo que precisam durar entre sessões, como o progresso do usuário ou itens de inventário.Armazenamentos de dados são consistentes por experiência, portanto, cada servidor para cada lugar dentro de uma experiência pode acessar e alterar os mesmos dados.Existem dois tipos de armazenamentos de dados: padrão e ordenado. Armazenamentos de dados padrão podem armazenar dados como números, strings e tabelas que não precisam ser classificados ou ordenados.Esses dados são armazenados como pares de chave-valor, onde cada entrada é armazenada sob uma chave única dentro de seu armazenamento de dados e que você pode recuperar, atualizaçãoou excluir. Armazenamentos de dados ordenados só podem armazenar números.Cada entrada é armazenada sob uma chave que é única dentro de seu armazenamento de dados e que você pode recuperar, atualizaçãoou excluir.Você pode classificar e organizar esses dados numericamente e recuperá-los em ordem crescente ou decrescente com base em valores numéricos armazenados.Para mais informações, veja Armazenamentos de dados ordenados.

Armazenamentos de dados padrão Armazenamentos de dados ordenados
Tipo de digitar Números, strings, booleans e tabelas.Apenas números.
Casos de uso comuns Progresso do usuário, itens de inventário e configurações de experiência.Sistemas de classificação persistente de todos os tempos e tabelas de classificação. Ao contrário de tabelas de classificação em armazenamentos de memória, esses dados de tabela de classificação são permanentes.
Backup de versão anterior Gere automaticamente as versões anteriores de seus dados por 30 dias.Não gerencia versões anteriores de seus dados.

Quando usar armazenamentos de memória

O MemoryStoreService é um serviço de alto volume e baixa latência que armazena dados temporários que precisam ser atualizados ou acessados frequentemente, como placares globais ou filas de matchmaking.Com armazenamentos de memória, cada servidor para cada local dentro de uma experiência pode acessar e alterar os mesmos dados rapidamente e frequentemente.Dados em um armazenamento de memória expiram após um determinado período de tempo, durando até 45 dias.

Embora os armazenamentos de memória armazenem dados temporários, eles também suportam recursos permanentes, como um mercado global.O mercado é permanente, mas os itens à venda dentro dele têm uma data de expiração.

Armazenamento de memória
Tipo de digitar Números, strings, booleans e tabelas que não precisam persistir por mais de 45 dias.
Casos de uso comuns matchmakingbaseados em habilidades, estados de partida para jogos multijogador, placares diários e mensais.

Quando usar armazenamento em memória no Luau

Você pode usar armazenamento em memória no Luau para armazenar dados temporários que precisam ser acessados com latência mínima e sem o custo de fazer chamadas de serviço externas para armazenamentos de dados ou memória.Não há etapas adicionais necessárias para configurar o armazenamento em memória, pois já está construído por padrão no Lua.

Armazenamento em memória no Luau
Tipo de dados Números, strings, booleans e tabelas.
Casos de uso comuns Dados que são relevantes apenas para uma sessão de servidor única e que você pode atualizar instantaneamente sem se preocupar com persistência.Exemplo: Buffs ativos, pontos temporários e progresso de missão em andamento que são redefinidos quando o usuário deixa a experiência.
Valores que mudam frequentemente, como contadores, temporizadores ou bandeiras de estado.Exemplo: A barra de saúde de um usuário que atualiza a cada acerto.
Evitando restrições de limite de taxa para operações de alta frequência em experiências ativas grandes.:Exemplo: Uma experiência com dezenas de usuários interagindo com o mesmo Objeto.
Dados que impulsionam a lógica do jogo, como variáveis temporárias ou estados de power-up onde o acesso rápido sem atrasos é essencial.:Exemplo: o estado atual de ataque de um usuário ou a saúde atual de um adversário / inimigo, que precisa ser acessível instantaneamente e sem a latência envolvida na chamada de serviços externos como armazenamentos de dados ou memória.
Interações multijogador que só importam dentro de um único servidor.Exemplo: Um objetivo compartilhado na experiência de missão cooperativa.