Maison >base de données >Redis >Quelles structures de données Redis prend-il en charge ?
Redis est une base de données clé-valeur hautes performances. L'émergence de Redis a largement compensé les défauts du stockage clé/valeur tel que Memcached, et peut jouer un très bon rôle complémentaire aux bases de données relationnelles dans certaines situations. Il fournit Java, C/C++, C#, PHP, JavaScript, Perl, Object-C, Python, Ruby, Erlang et d'autres clients, ce qui est très pratique à utiliser.
La montée en puissance de Redis n'est pas un hasard. Il contient ses propres nouveautés, contrairement à Memcached, il ne peut stocker les données qu'en mémoire. Il fournit un mécanisme de persistance et de synchronisation des données pour éviter les temps d'arrêt. derrière la machine, après un problème sur le serveur, toutes les données originales conservées dans la mémoire sont perdues et les données doivent être réorganisées dans la mémoire. À ce stade, Memcached passera par un processus très lent.
La prise en charge de la persistance par Redis n'est qu'une de ses armes. De plus, Redis propose également jusqu'à 5 méthodes de stockage de données pour différents besoins afin d'atteindre une efficacité maximale. besoins, ces types de données sont présentés ci-dessous :
string (string)
String est le type le plus simple, vous pouvez le comprendre comme étant identique à Memcached Exactement le même type , une clé correspond à une valeur et les opérations prises en charge sont similaires à celles de Memcached. Mais c'est beaucoup plus riche en fonctionnalités.
2 listes (double liste chaînée)
La liste est une structure de liste chaînée, ses fonctions principales sont push, pop, obtenir toutes les valeurs d'une plage, etc. . La raison pour laquelle il est bidirectionnel est qu'il peut opérer sur les côtés gauche et droit de la liste chaînée
trois dict (table de hachage)
set est un ensemble, et nos mathématiques Les concepts de collections dans sont similaires. Les opérations sur les collections incluent l'ajout et la suppression d'éléments et l'exécution d'opérations d'intersection et de différence sur plusieurs collections. Dans l'opération, la clé est comprise comme le nom de l'ensemble
4 zset (ensemble de tri)
zset est une version améliorée de set, qui ajoute une séquence sur la base de l'attribut set, cet attribut peut être spécifié lors de l'ajout et de la modification d'éléments. Chaque fois qu'il est spécifié, zset réajustera automatiquement l'ordre en fonction de la nouvelle valeur. Vous pouvez définir le poids de tri pour la valeur de la clé spécifiée. Il dispose de nombreux modules de classement des applications
5 types de hachage
Redis peut stocker les données de plusieurs attributs de clé. (Par exemple, user1.uname user1.passwd), bien sûr, vous pouvez stocker ces attributs au format json et les utiliser directement comme type de chaîne, mais cela affectera les performances, donc redis propose le type Hash.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!