Redis ne prend pas directement en charge l'indexation et doit être maintenu par vous-même.
Pour les index uniques sans plage, nous pouvons simplement enregistrer l'index sous forme de paire KV, et v peut enregistrer la clé principale pour la récupération de plage ou les index non uniques, redis doit. être utilisé zset pour réaliser. (Apprentissage recommandé : Tutoriel vidéo Redis)
Prenons un exemple de système utilisateur traditionnel
uid 用户id name 用户名 credit 用户积分 type 类型
peut être placé directement Récupération
hmset usr:1 uid 1 name aaa credit 10 type 0 hmset usr:2 uid 2 name bbb credit 20 type 1
par uid dans un hashset est très rapide, mais si vous souhaitez interroger les utilisateurs avec type=1, vous ne pouvez les analyser que tous !
Dans une base de données relationnelle, on peut simplement créer un index de type
select * from usr where type=1
Un tel SQL peut être exécuté efficacement. Dans Redis, nous devons maintenir un autre zset
zadd usr.index.type 0 0:1 zadd usr.index.type 0 1:2
Notez que tous les poids sont définis sur 0, afin qu'ils puissent être récupérés directement par valeur, puis transmis
zrangebylex usr.index.type [1: (1;
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!