7 votes

Dans Redis, toutes les clés de hachage sont-elles stockées dans la même "table"? et si oui, comment cela affecte-t-il les performances?

En regardant cet exemple http://redis.io/topics/twitter-clone où les enregistrements des utilisateurs sont stockés en utilisant une clé hash ("uid:1000") et les "tweets" sont stockés en utilisant une clé hash ("post:60"), est-ce que cela signifie que tous ces enregistrements sont stockés dans la même structure de données et que l'ajout de tweets va affecter le temps de récupération des enregistrements utilisateur ?

16voto

Sripathi Krishnan Points 15402

Oui, les utilisateurs et les tweets sont stockés dans la même structure de données. Cette structure de données est une table de hachage.

En interne, Redis n'a pas de concept de types d'enregistrements. Pour Redis, User:1000 et Post:60 ne sont que des séquences d'octets. Donc oui, Redis stocke tous les enregistrements dans la même structure de données.

Comme Redis ne différencie pas les Tweets des Utilisateurs, les temps de réponse pour les deux types d'enregistrements vont être similaires.

Donc, tout se résume à la question - "Est-ce que les performances de Redis évoluent en fonction du nombre d'enregistrements ?"

La réponse à cela est OUI. Tant que vous avez la mémoire pour conserver toutes vos données, les performances de Redis ne devraient pas dépendre du nombre d'enregistrements.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X