Använda Redis-moduler med Azure Cache for Redis

Med Azure Cache for Redis kan du använda Redis-moduler som bibliotek för att lägga till fler datastrukturer och funktioner i redis-kärnprogramvaran. Du lägger till modulerna när du skapar cacheminnet på Enterprise-nivån.

Mer information om hur du skapar en Enterprise-cache finns i Snabbstart: Skapa en Redis Enterprise-cache.

Moduler introducerades i Redis 4.0 med öppen källkod. Modulerna utökar användningsfallen för Redis genom att lägga till funktioner som sökfunktioner och datastrukturer som bloom- och cuckoo-filter.

Omfång för Redis-moduler

Vissa populära moduler är tillgängliga för användning på Enterprise-nivån i Azure Cache for Redis:

Modul Basic, Standard och Premium Stora företag Enterprise Flash
RediSearch Nej Ja Ja (förhandsversion)
RedisBloom Nej Ja Nej
RedisTimeSeries Nej Ja Nej
RedisJSON Nej Ja Ja

Kommentar

För närvarande kan du inte läsa in några moduler manuellt i Azure Cache for Redis. Det går inte heller att uppdatera modulversionen manuellt.

Använda moduler med aktiv geo-replikering

Endast modulerna RediSearch och RedisJSON kan användas samtidigt med aktiv geo-replikering.

Med hjälp av dessa moduler kan du implementera sökningar mellan grupper av cacheminnen som synkroniseras i en aktiv-aktiv konfiguration. Du kan också söka i JSON-strukturer i din aktiva-aktiva konfiguration.

Stöd för klientbibliotek

Standard-Redis-klientbiblioteken har olika stöd för varje modul. Vissa moduler har specifika bibliotek som lägger till klientstöd. Kontrollera redis-dokumentationssidorna för varje modul för att se mer information om vilka klientbibliotek som stöder dem.

Lägga till moduler i cacheminnet

Du måste lägga till moduler när du skapar enterprise-nivåcacheminnet. Om du vill lägga till en modul eller moduler när du skapar en ny cache använder du inställningarna på fliken Avancerat i cacheminnena på Enterprise-nivån.

Du kan lägga till alla tillgängliga moduler eller välja specifika moduler som ska installeras.

Skärmbild av fliken Avancerat som visar en lista över moduler som ska läggas till i en ny cache.

Viktigt!

Moduler måste aktiveras när du skapar en Azure Cache for Redis-instans.

Mer information finns i Snabbstart: Skapa en Redis Enterprise-cache.

Moduler

Följande moduler är tillgängliga när du skapar en ny Enterprise-cache.

RediSearch

RediSearch-modulen lägger till en sökmotor i realtid i cacheminnet som kombinerar prestanda med låg svarstid med kraftfulla sökfunktioner.

Funktionerna omfattar:

  • Frågor med flera fält
  • Aggregering
  • Prefix, fuzzy och fonetikbaserade sökningar
  • Förslag för automatisk komplettering
  • Geo-filtrering
  • Booleska frågor

Dessutom kan RediSearch fungera som ett sekundärt index, expandera cachen bortom en nyckelvärdesstruktur och erbjuda mer avancerade frågor.

RediSearch innehåller även funktioner för att utföra vektorlikhetsfrågor , till exempel KNN-sökning (K-nearest neighbor). Med den här funktionen kan Azure Cache for Redis användas som en vektordatabas, vilket är användbart i AI-användningsfall som semantiska svarsmotorer eller andra program som kräver jämförelse av inbäddningsvektorer som genereras av maskininlärningsmodeller.

Du kan använda RediSearch i en mängd olika användningsfall, inklusive inventering i realtid, företagssökning och indexering av externa databaser. Mer information finns på dokumentationssidan för RediSearch.

Viktigt!

RediSearch-modulen kräver användning av Enterprise klustringsprincipen och NoEviction borttagningsprincipen. Mer information finns i Klustringsprincip och minnesprinciper

RedisBloom

RedisBloom lägger till fyra probabilistiska datastrukturer till en Redis-server: bloom-filter, cuckoo-filter, count-min sketch och top-k. Var och en av dessa datastrukturer erbjuder ett sätt att offra perfekt noggrannhet i utbyte mot högre hastighet och bättre minneseffektivitet.

Datastruktur Beskrivning Exempelprogram
Bloom- och Cuckoo-filter Anger om ett objekt antingen är (a) definitivt inte i en uppsättning eller (b) potentiellt i en uppsättning. Kontrollera om ett e-postmeddelande redan har skickats till en användare
Antal min-skiss Avgör frekvensen för händelser i en ström Räknar hur många gånger en IoT-enhet rapporterade en temperatur under 0 grader Celsius.
Topp-k Hittar de vanligaste objekten k Fastställ de vanligaste orden som används i krig och fred. (om du till exempel anger k = 50 returneras de 50 vanligaste orden i boken)

Bloom- och Cuckoo-filter liknar varandra, men var och en har en unik uppsättning fördelar och nackdelar som ligger utanför omfånget för den här dokumentationen.

Mer information finns i RedisBloom.

RedisTimeSeries

RedisTimeSeries-modulen lägger till tidsseriefunktioner med högt dataflöde i cacheminnet. Den här datastrukturen är optimerad för stora mängder inkommande data och innehåller funktioner för att arbeta med tidsseriedata, inklusive:

  • Aggregerade frågor (till exempel medelvärde, högsta, standardavvikelse osv.)
  • Tidsbaserade frågor (till exempel starttid och sluttid)
  • Nedsampling/decimering
  • Dataetiketter för sekundär indexering
  • Konfigurerbar kvarhållningsperiod

Den här modulen är användbar för många program som omfattar övervakning av strömmande data, till exempel IoT-telemetri, programövervakning och avvikelseidentifiering.

Mer information finns i RedisTimeSeries.

RedisJSON

RedisJSON-modulen lägger till funktionen för att lagra, fråga och söka efter JSON-formaterade data. Den här funktionen är användbar för att lagra dokumentliknande data i cacheminnet.

Funktionerna omfattar:

  • Fullständigt stöd för JSON-standarden
  • Många olika åtgärder för alla JSON-datatyper, inklusive objekt, tal, matriser och strängar
  • Dedikerad syntax och snabb åtkomst för att välja och uppdatera element i dokument

RedisJSON-modulen är också utformad för användning med RediSearch-modulen för att tillhandahålla integrerad indexering och frågekörning av data på en Redis-server. Att använda båda modulerna tillsammans kan vara ett kraftfullt verktyg för att snabbt hämta specifika datapunkter i JSON-objekt.

Några vanliga användningsfall för RedisJSON är program som att söka i produktkataloger, hantera användarprofiler och cachelagra JSON-strukturerade data.

Mer information finns i RedisJSON.

Kommentar

Kommandot FT.CONFIG stöds inte för uppdatering av modulkonfigurationsparametrar. Detta kan dock uppnås genom att skicka in argument som konfigurerar modulerna när du använder hanterings-API:er. Du kan till exempel se exempel på hur du konfigurerar ERROR_RATE egenskaperna och INITIAL_SIZE för RedisBloom-modulen med hjälp av parametern args med REST API, Azure CLI eller PowerShell.