Redis®*: Indeksowanie i wyszukiwanie tych dokumentów

Ta dokumentacja jest częścią przewodnika Wyszukiwanie i JSON. Pełny przewodnik znajdziesz tutaj: Przechowuj dokumenty JSON i efektywnie je przeszukuj za pomocą silnika zapytań Redis.

👋 Witamy w dokumentacji Stackhero!

Stackhero oferuje gotowe do użycia rozwiązanie Redis cloud, które zapewnia szereg korzyści, w tym:

  • Wbudowany web UI Redis Commander.
  • Nieograniczona wielkość i transfer wiadomości.
  • Bezproblemowe aktualizacje za pomocą jednego kliknięcia.
  • Optymalna wydajność i wysoki poziom bezpieczeństwa dzięki prywatnej, dedykowanej infrastrukturze.

Oszczędzaj czas i uprość sobie życie: wystarczy 5 minut, aby przetestować rozwiązanie hostingu Redis cloud od Stackhero!

Indeks deklarujesz tylko raz. Redis automatycznie utrzymuje go w aktualności dla każdego klucza pasującego do wybranego prefixu, w tym kluczy istniejących już przed utworzeniem indeksu.

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

Teraz możesz wykonywać zapytania takie jak:

# Wyszukiwanie full-text po nazwie, z zakresem cenowym
FT.SEARCH productsIndex "@name:(espresso) @price:[0 500]"

# Dokładne dopasowanie marki, sortowanie po cenie
FT.SEARCH productsIndex "@brand:{Bianca}" SORTBY price ASC

# Wyszukiwanie po prefiksie do autouzupełniania
FT.SEARCH productsIndex "@name:(espr*)"

Redis obsługuje także agregacje bezpośrednio na indeksie, dzięki czemu możesz wykonywać zapytania analityczne bez eksportowania danych:

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

Jeśli przechowujesz dane w zwykłych hashach zamiast JSON, możesz użyć ON HASH i standardowych nazw pól w swoim schemacie.