Verwenden von Redis-Modulen mit Azure Cache for Redis

Mit Azure Cache for Redis können Sie Redis-Module als Bibliotheken verwenden, um der Redis-Kernsoftware weitere Datenstrukturen und Funktionen hinzuzufügen. Sie fügen die Module zum Zeitpunkt des Erstellens Ihres Caches im Enterprise-Tarif hinzu.

Weitere Informationen zum Erstellen eines Enterprise-Caches finden Sie unter Schnellstart: Erstellen eines Redis Enterprise-Caches.

Module wurden in Open Source Redis 4.0 eingeführt. Die Module erweitern die Anwendungsfälle von Redis, indem Sie Funktionen wie Suchfunktionen und Datenstrukturen wie Bloom- und Cuckoo-Filter hinzufügen.

Umfang von Redis-Modulen

Einige beliebte Module sind für die Verwendung im Enterprise-Tarif von Azure Cache for Redis verfügbar:

Modul Basic, Standard und Premium Enterprise Enterprise Flash
RediSearch Nein Ja Ja (Vorschau)
RedisBloom Nein Ja Nein
RedisTimeSeries Nein Ja Nein
RedisJSON Nein Ja Ja

Hinweis

Derzeit können Sie keine Module manuell in Azure Cache for Redis laden. Das manuelle Aktualisieren der Modulversion ist ebenfalls nicht möglich.

Verwenden von Modulen mit aktiver Georeplikation

Nur die Module RediSearch und RedisJSON können gleichzeitig mit der aktiven Georeplikation verwendet werden.

Mithilfe dieser Module können Sie Suchvorgänge in Gruppen von Caches implementieren, die in einer Aktiv/Aktiv-Konfiguration synchronisiert werden. Außerdem können Sie JSON-Strukturen in Ihrer Aktiv/Aktiv-Konfiguration durchsuchen.

Unterstützung von Clientbibliotheken

Die standardmäßigen Redis-Clientbibliotheken verfügen über einen unterschiedlichen Umfang an Unterstützung für die einzelnen Module. Einige Module verfügen über bestimmte Bibliotheken, die Clientunterstützung hinzufügen. Lesen Sie auf den Dokumentationsseiten von Redis für jedes Modul nach, um weitere Informationen zu erhalten, welche Clientbibliotheken sie unterstützen.

Hinzufügen von Modulen zu Ihrem Cache

Sie müssen Module hinzufügen, wenn Sie Ihren Cache im Enterprise-Tarif erstellen. Um beim Erstellen eines neuen Caches ein oder mehrere Module hinzuzufügen, verwenden Sie die Einstellungen auf der Registerkarte „Erweitert“ für Caches im Enterprise-Tarif.

Sie können alle verfügbaren Module hinzufügen oder nur bestimmte Module zur Installation auswählen.

Screenshot der Registerkarte „Erweitert“ mit einer Liste von Modulen, die einem neuen Cache hinzugefügt werden sollen.

Wichtig

Module müssen zum Zeitpunkt der Erstellung einer Azure Cache for Redis-Instanz aktiviert sein.

Weitere Informationen finden Sie unter Schnellstart: Erstellen eines Redis Enterprise-Caches.

Module

Die folgenden Module sind beim Erstellen eines neuen Enterprise-Caches verfügbar.

RediSearch

Das RediSearch-Modul fügt Ihrem Cache eine Echtzeitsuchmaschine hinzu, die Leistung mit niedriger Latenz mit leistungsstarken Suchfeatures kombiniert.

Folgende Features sind enthalten:

  • Mehrfeldabfragen
  • Aggregation
  • Präfix-, Fuzzy- und phonetische Suchen
  • Vorschläge für automatisches Vervollständigen
  • Geofilterung
  • Boolesche Abfragen

Darüber hinaus kann RediSearch als sekundärer Index fungieren, was ihren Cache über eine Schlüssel-Wert-Struktur hinaus erweitert und komplexere Abfragen ermöglicht.

RediSearch enthält auch Funktionen zum Ausführen von Abfragen zur Vektorähnlichkeit, wie z. B. einer KNN-Suche (K-Nearest Neighbor). Dank dieses Features kann Azure Cache for Redis als Vektordatenbank verwendet werden. Das ist in verschiedenen KI-Anwendungsfällen nützlich, wie beispielsweise bei Engines für semantische Antworten oder anderen Anwendungen, für die ein Vergleich von einbettenden Vektoren erforderlich ist, die von Machine Learning-Modellen generiert werden.

Sie können RediSearch in einer Vielzahl von Anwendungsfällen verwenden, einschließlich Echtzeitbestand, Unternehmenssuche und bei der Indizierung externer Datenbanken. Weitere Informationen finden Sie auf der Dokumentationsseite zu RediSearch.

Wichtig

Das RediSearch-Modul erfordert die Verwendung der Enterprise-Clustering-Richtlinie und der NoEviction-Entfernungsrichtlinie. Weitere Informationen finden Sie unter Clustering-Richtlinie und Speicherrichtlinien

RedisBloom

RedisBloom fügt einem Redis-Server vier probabilistische Datenstrukturen hinzu: Bloom-Filter, Cuckoo-Filter, count-min sketch und top-k. Jede dieser Datenstrukturen bietet eine Möglichkeit, Abstiche bei der perfekten Genauigkeit zugunsten einer höheren Geschwindigkeit und besserer Speichereffizienz zu machen.

Datenstruktur Beschreibung Beispielanwendung
Bloom- und Cuckoo-Filter Ermittelt, ob ein Element entweder (a) definitiv nicht in einem Satz vorhanden ist oder (b) möglicherweise in einem Satz vorhanden ist. Überprüfen, ob eine E-Mail bereits an einen Benutzer gesendet wurde
Count-min sketch Bestimmt die Häufigkeit von Ereignissen in einem Datenstrom. Zählen, wie oft ein IoT-Gerät eine Temperatur unter 0 Grad Celsius gemeldet hat.
Top-k Sucht die k am häufigsten vorkommenden Elemente. Bestimmen der in „Krieg und Frieden“ am häufigsten verwendeten Wörter. (Das Festlegen von k = 50 gibt beispielsweise die 50 am häufigsten Wörter im Buch zurück.)

Bloom- und Cuckoo-Filter sind einander ähnlich, aber jeder verfügt über einzigartige Vor- und Nachteile, die über den Umfang dieser Dokumentation hinausgehen.

Weitere Informationen finden Sie unter RedisBloom.

RedisTimeSeries

Das RedisTimeSeries-Modul fügt Ihrem Cache Zeitreihenfunktionen mit hohem Durchsatz hinzu. Diese Datenstruktur ist für große Mengen eingehender Daten optimiert und enthält Features zum Arbeiten mit Zeitreihendaten, einschließlich:

  • Aggregierte Abfragen (z. B. Mittelwert, Maximum, Standardabweichung usw.)
  • Zeitbasierte Abfragen (z. B. Startzeit und Endzeit)
  • Downsampling/Dezimierung
  • Datenbezeichnung für sekundäre Indizierung
  • Konfigurierbarer Aufbewahrungszeitraum

Dieses Modul ist für viele Anwendungen nützlich, die das Überwachen von Streamingdaten wie IoT-Telemetrie, die Überwachung von Anwendungen sowie die Erkennung von Anomalien umfassen.

Weitere Informationen finden Sie unter RedisTimeSeries.

RedisJSON

Das RedisJSON-Modul fügt die Funktion zum Speichern, Abfragen und Durchsuchen von JSON-formatierten Daten hinzu. Diese Funktionalität ist nützlich, um dokumentähnliche Daten im Cache zu speichern.

Folgende Features sind enthalten:

  • Vollständige Unterstützung für den JSON-Standard
  • Breite Palette von Vorgängen für alle JSON-Datentypen, einschließlich Objekten, Zahlen, Arrays und Zeichenfolgen
  • Dedizierte Syntax und schneller Zugriff zum Auswählen und Aktualisieren von Elementen innerhalb von Dokumenten

Das RedisJSON-Modul ist auch für die Verwendung mit dem RediSearch-Modul konzipiert, um integrierte Indizierung und das Abfragen von Daten in einem Redis-Server bereitzustellen. Die Verwendung beider Module kann ein leistungsstarkes Tool sein, um schnell bestimmte Datenpunkte innerhalb von JSON-Objekten abzurufen.

Einige gängige Anwendungsfälle für RedisJSON umfassen Anwendungen wie das Durchsuchen von Produktkatalogen, das Verwalten von Benutzerprofilen und das Zwischenspeichern von JSON-strukturierten Daten.

Weitere Informationen finden Sie unter RedisJSON.

Hinweis

Der FT.CONFIG Befehl wird für das Aktualisieren von Modulkonfigurationsparametern nicht unterstützt. Dies kann jedoch erreicht werden, indem Argumente übergeben werden, die die Module bei Verwendung von Verwaltungs-APIs konfigurieren. Sie können beispielsweise Beispiele für die Konfiguration der Eigenschaften von ERROR_RATE und INITIAL_SIZEdes RedisBloom-Moduls mithilfe desargs Parameters mit der REST-API, Azure CLIoder PowerShellanzeigen.