Redis®*: Indexation et recherche sur ces documents

Cette documentation fait partie du guide Recherche et JSON. Consultez le guide complet ici : Stockez des documents JSON et interrogez-les efficacement avec le moteur de requêtes Redis.

👋 Bienvenue dans la documentation Stackhero !

Stackhero propose une solution Redis cloud clé en main qui offre de nombreux avantages, notamment :

  • Interface web Redis Commander incluse.
  • Taille et transferts de messages illimités.
  • Mises à jour faciles en un seul clic.
  • Performance optimale et sécurité renforcée grâce à une infrastructure privée et dédiée.

Gagnez du temps et simplifiez-vous la vie : il ne vous faut que 5 minutes pour essayer la solution d'hébergement Redis cloud de Stackhero !

Vous n'avez besoin de déclarer un index qu'une seule fois. Redis le maintient automatiquement à jour pour chaque clé correspondant au préfixe choisi, y compris celles qui existaient avant la création de l'index.

FT.CREATE productsIndex
  ON JSON
  PREFIX 1 product:
  SCHEMA
    $.name AS name TEXT
    $.brand AS brand TAG
    $.price AS price NUMERIC SORTABLE
    $.tags[*] AS tags TAG

Vous pouvez maintenant exécuter des requêtes comme :

# Recherche full-text sur le nom, avec une plage de prix
FT.SEARCH productsIndex "@name:(espresso) @price:[0 500]"

# Recherche exacte sur la marque, triée par prix
FT.SEARCH productsIndex "@brand:{Bianca}" SORTBY price ASC

# Recherche par préfixe pour l'autocomplétion
FT.SEARCH productsIndex "@name:(espr*)"

Redis peut également gérer des agrégations directement sur l'index, ce qui permet de répondre à des requêtes analytiques sans exporter les données :

FT.AGGREGATE productsIndex "*"
  GROUPBY 1 @brand
  REDUCE COUNT 0 AS products
  REDUCE AVG 1 @price AS averagePrice
  SORTBY 2 @products DESC

Si vous stockez vos données dans des hashes simples au lieu de JSON, vous pouvez utiliser ON HASH et des noms de champs standards dans votre schéma.