Est-ce une base de données en mémoire ont également un composant du système de fichiers?

StackOverflow https://stackoverflow.com/questions/1181290

  •  19-09-2019
  •  | 
  •  

Question

Je travaille avec DataMapper qui vous permet de spécifier un chemin d'accès à un fichier de base de données sur votre système ou simplement la chaîne « mémoire » et une base de données « en mémoire » est utilisé. Cependant, je ne sais pas ce que cela signifie.

est un « en mémoire » base de données purement basée sur la mémoire ou il ne se sérialisé au système de fichiers à un moment donné?

Quel est l'avantage d'une base de données en mémoire?

Est-il simplement d'efficacité - en supprimant le coût de l'accès du système de fichiers

Était-ce utile?

La solution

La raison pour laquelle SQLite a en mémoire les bases de données ne sont pas vraiment pour la performance. Dans la pratique, avoir un fichier est pas vraiment plus lent que sauter que, sauf si vous manquez de mémoire. Il est vraiment la plupart du temps pour la mise en cache temporaire ou des tests. Par exemple, vous pouvez utiliser un en mémoire db pour vos tests unitaires, de sorte que vous ne marchez pas sur les données de production. Ou vous pouvez l'utiliser comme une alternative à memcache si vous voulez des fonctionnalités SQL. Au fond, il est là pour que vous ne le faites pas Vous pour conserver des données, si vous ne avez pas besoin.

Autres conseils

De la documentation SQLite :

  

Si le nom de fichier est « : la mémoire: », alors   privé, base de données temporaire en mémoire   est créé pour la connexion. Cette   base de données en mémoire disparaîtra lorsque   la connexion de base de données est terminée.

Par ailleurs, vous ne trouvez jamais le fichier que vous cherchez?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top