Maison > Article > base de données > Quel type de données Redis stocke-t-il généralement ?
Redis est une base de données de stockage clé-valeur open source écrite en langage C. Il peut être utilisé dans des scénarios tels que la mise en cache, la publication et l'abonnement d'événements et les files d'attente à haut débit. Il prend également en charge les types de données riches : string (string), hash (hash), list (list), set (ensemble non ordonné), zset (ensemble trié : ensemble ordonné)
Scénarios d'application de Redis dans les projets
1. La mise en cache des données
est la plus couramment utilisée, pour les requêtes qui doivent être interrogées fréquemment et les modifications ne le sont pas. très fréquentes. Les données sont souvent appelées données chaudes.
2. La file d'attente des messages
est équivalente à un système d'abonnement aux messages, tel qu'ActiveMQ et RocketMQ. Si vous avez des exigences de cohérence plus élevées pour les données, il est toujours recommandé d'utiliser MQ)
Compteur
tel que le comptage des clics. taux et taux de likes, redis est atomique et peut éviter les problèmes de concurrence
4. Informations sur le site de commerce électronique
Cache des données de la page initiale pour. grandes plateformes de commerce électronique. Par exemple, lors de l'achat d'un billet d'avion sur Qunar.com, le prix sur la page d'accueil sera différent du prix sur lequel vous cliquez.
5. Données de points chauds
Par exemple, les points chauds en temps réel sur les sites Web d'information, les recherches chaudes sur Weibo, etc. être mis à jour fréquemment. Lorsque la quantité totale de données est relativement importante, les requêtes directement à partir de la base de données affecteront les performances
Scénarios d'application du type de données Redis
Comme Comme mentionné précédemment, Redis prend en charge cinq types de données riches, alors comment choisir dans différents scénarios ?
1. String
La chaîne est le type de données le plus couramment utilisé. Elle peut stocker tout type de chaîne, y compris les objets binaires et JSONisés. même les images codées en base64. La capacité maximale d'une chaîne dans Redis est de 512 Mo, ce qui peut être considéré comme omnipotent.
2. Le hachage
est souvent utilisé pour stocker des données structurées. Par exemple, il peut être utilisé pour stocker des identifiants d'utilisateur, des surnoms et. avatars dans les systèmes de forum. Points et autres informations. Si vous devez modifier les informations, il vous suffit de retirer la valeur via la clé, de la désérialiser, de modifier la valeur d'un élément, puis de la sérialiser et de la stocker dans Redis. La structure de hachage est stockée car la structure de hachage le sera. modifié lorsqu'un seul élément de hachage est inférieur à un certain nombre de stockage compressé, vous pouvez donc économiser beaucoup de mémoire. Cela n'existe pas dans la structure String.
3. Liste
List est implémenté comme une liste chaînée bidirectionnelle, qui peut prendre en charge la recherche inversée et le parcours, ce qui la rend plus pratique à utiliser. Cependant, elle entraîne une surcharge de mémoire supplémentaire dans de nombreuses implémentations dans Redis, y compris le tampon d'envoi. file d'attente, etc. Cette structure de données est utilisée. De plus, vous pouvez utiliser la commande lrange pour implémenter la fonction de pagination basée sur Redis, qui offre d'excellentes performances et une bonne expérience utilisateur.
4. Set
Les fonctions externes fournies par set sont similaires à la liste. , lorsque vous devez stocker une liste de données et que vous ne souhaitez pas que des données en double apparaissent, vous pouvez choisir d'utiliser set à ce moment-là.
5. L'ensemble de tri
peut être trié en fonction du poids d'une certaine condition, par exemple, vous pouvez créer une application de données de classement. en fonction du nombre de clics.
Fonctionnalités de Redis :
1 Redis est une opération de mémoire pure, et nous devons la conserver manuellement sur le disque dur en cas de besoin <.>
2. Redis est monothread, évitant ainsi les opérations fréquentes de changement de contexte dans les multi-threads.
3. La structure des données Redis est simple, et le fonctionnement des données est également relativement simple
4. et l'implémentation sous-jacente entre eux est différente. La méthode et le protocole d'application pour communiquer avec le client sont différents. Redis construit directement son propre mécanisme de VM, car si le système général appelle les fonctions système, il perdra un certain temps à se déplacer et à demander.
5. Utiliser un modèle de multiplexage d'E/S multicanal, E/S non bloquantes
Pour plus de connaissances sur Redis, veuillez visiter le Tutoriel d'utilisation de RedisCe 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!