Dela via


Vad är Azure Managed Redis?

Azure Managed Redis tillhandahåller ett minnesinternt datalager baserat på Redis Enterprise-programvaran . Redis Enterprise förbättrar prestanda och tillförlitlighet för communityversionen av Redis, samtidigt som kompatibiliteten bibehålls. Microsoft driver tjänsten, som finns i Azure och kan användas av alla program inom eller utanför Azure. Mer information om hur Azure Managed Redis skapas finns i Azure Managed Redis Architecture.

Azure Managed Redis kan förbättra prestanda och skalbarhet för ett program som använder serverdelsdatalager i hög grad. Den kan bearbeta stora mängder programbegäranden genom att lagra data som används ofta i serverminnet, som kan skrivas till och läsas från snabbt.

Redis ger en kritisk datalagringslösning med låg svarstid och datalagring med högt dataflöde till moderna program. Dessutom används Redis i allt högre grad för icke-cachelagringsprogram, inklusive datainmatning, deduplicering, meddelanden, rankningslistor, semantisk cachelagring och som en vektordatabas.

Azure Managed Redis kan distribueras fristående eller distribueras tillsammans med andra Azure-app- eller databastjänster, till exempel Azure Container Apps, Azure App Service, Azure Functions, Azure SQL eller Azure Cosmos DB.

Viktiga scenarier

Azure Managed Redis förbättrar programprestandan genom att stödja vanliga mönster för programarkitektur. Några av de vanligaste är följande mönster:

Pattern Description
Datacache Databaser är ofta för stora för att läsas in direkt i en cache. Det är vanligt att använda cache-aside-mönstret för att endast läsa in data i cacheminnet efter behov. När systemet gör ändringar i data kan systemet även uppdatera cacheminnet, som sedan distribueras till andra klienter. Dessutom kan systemet ange ett utgångsdatum för data eller använda en borttagningsprincip för att utlösa datauppdateringar i cacheminnet.
Innehållscache Många webbsidor genereras från mallar som använder statiskt innehåll, till exempel sidhuvuden, sidfötter och banderoller. Dessa statiska objekt bör inte ändras ofta. Att använda en minnesintern cache ger snabb åtkomst till statiskt innehåll jämfört med serverdelsdatalager. Det här mönstret minskar bearbetningstiden och serverbelastningen, vilket gör att webbservrar blir mer dynamiska. Det kan göra att du kan minska antalet servrar som behövs för att hantera belastningar. Azure Managed Redis tillhandahåller Redis-utdatacacheprovidern för att stödja det här mönstret med ASP.NET.
Sessionlager Det här mönstret används ofta med kundvagnar och andra användarhistorikdata som ett webbprogram kan associera med användarcookies. Att lagra för mycket i en cookie kan ha en negativ effekt på prestanda när cookiestorleken växer och skickas och verifieras med varje begäran. En vanlig lösning använder cookien som en nyckel för att köra frågor mot data i en databas. När du använder en minnesintern cache, som Azure Managed Redis, för att associera information med en användare går det snabbare än att interagera med en fullständig relationsdatabas.
Vektorlikhetssökning Ett vanligt AI-användningsfall är att generera vektorinbäddningar med hjälp av en stor språkmodell (LLM). Dessa vektorbäddningar måste lagras i en vektordatabas och sedan jämföras för att fastställa likhet. Azure Managed Redis har inbyggda funktioner för att både lagra och jämföra vektorinbäddningar vid höga dataflöden.
Semantisk cachelagring Användning av LLM:er medför ofta en hög svarstid (på grund av generationstid) och kostnader (på grund av prissättning per token) för ett program. Cachelagring kan hjälpa dig att lösa dessa problem genom att lagra tidigare utdata från en LLM så att den snabbt kan hämtas igen. Men eftersom LLM:er använder naturligt språk kan lagring vara svårt för vanliga cacheminnen att hantera. Semantiska cacheminnen som Azure Managed Redis kan cachelagra inte bara en specifik fråga, utan även den semantiska innebörden av en fråga, vilket gör att den kan användas mycket mer naturligt med LLM:er.
Deduplication Ofta måste du avgöra om en åtgärd redan har inträffat i ett system, till exempel att avgöra om ett användarnamn har vidtagits eller om en kund redan har skickat ett e-postmeddelande. I Azure Managed Redis kan bloom-filter snabbt fastställa dubbletter och förhindra problem.
Leaderboards Redis erbjuder enkelt och kraftfullt stöd för att utveckla rankningslistor av alla slag med hjälp av den sorterade datastrukturen . Om du använder aktiv geo-replikering kan du dessutom tillåta att en topplista delas globalt.
Jobb- och meddelandeköer Applikationer lägger ofta till uppgifter i en kö när de operationer som är associerade med begäran tar tid att utföra. Långvariga operationer placeras i kö för att bearbetas sekventiellt, ofta av en annan server. Den här metoden att skjuta upp arbete kallas för att placera uppgifter i kö. Azure Managed Redis tillhandahåller en distribuerad kö för att aktivera det här mönstret i ditt program.
PowerBI/Analysacceleration Du kan använda Redis ODBC-drivrutinen för att använda Redis för BI- och rapporterings- och analysanvändningsfall. Eftersom Redis vanligtvis är mycket snabbare än relationsdatabaser kan redis på det här sättet avsevärt öka frågesvarstiden.
Distribuerade transaktioner Applikationer kräver ibland en serie kommandon mot en backenddatabas för att utföras som en enda atomisk operation. Alla kommandon måste slutföras, eller så måste alla återställas till det ursprungliga tillståndet. Azure Managed Redis stöder körning av en batch med kommandon som en enda transaktion.

Redis-version

Azure Managed Redis stöder Redis version 7.4.x. Mer information finns i Uppgradera versionen av din Azure Managed Redis-instans.

Välja rätt nivå

Azure Managed Redis finns på fyra nivåer med olika prestandaegenskaper och prisnivåer.

Snabb överblick över nivåer och SKU:er

En bild av en tabell som visar en jämförelse av sku:er och nivåer.

Tre nivåer lagrar minnesintern data:

  • Minnesoptimerad Perfekt för minnesintensiva användningsfall som kräver ett högt förhållande mellan minne och vCPU (8:1) men som inte behöver den högsta dataflödesprestandan. Denna nivå ger ett lägre pris i tillämpningar som kräver mindre bearbetningskraft eller dataflöde, vilket gör den till ett utmärkt val för utvecklings- och testmiljöer.
  • Balanserad (minne + beräkning) Erbjuder ett balanserat förhållande mellan minne och vCPU (4:1), vilket gör det idealiskt för standardarbetsbelastningar. Den här nivån ger en hälsosam balans mellan minne och beräkningsresurser.
  • Beräkningsoptimerad Utformad för prestandaintensiva arbetsbelastningar som kräver maximalt dataflöde, med ett lågt förhållande mellan minne och vCPU (2:1). Idealisk för tillämpningar som kräver högsta prestanda.

Data lagras både i minnet och på disk på en och samma nivå:

  • Flash Optimized (förhandsversion) Gör det möjligt för Redis-kluster att automatiskt flytta data som används mindre ofta från minne (RAM) till NVMe-lagring. Detta minskar prestandan men ger kostnadseffektiv skalning av cacheminnen med stora datamängder.

Du kan också använda funktionen datapersistence för att lagra data på disk för minnesintern nivå. Datapersistence lagrar en säkerhetskopia av data på disk för snabb återställning om du får ett oväntat avbrott. Detta skiljer sig från den Flash-optimerade nivån, som är utformad för att lagra data på disk för vanliga åtgärder.

Lagring av viss data på disk med hjälp av den flashoptimerade nivån ökar inte datatoleransen. Du kan också använda datapersistens på den Flash-optimerade nivån.

Note

Mer information om hur flashoptimerad nivå är konstruerad finns i Azure Managed Redis Architecture

Important

Alla minnesinterna nivåer som använder över 120 GB lagringsutrymme finns i offentlig förhandsversion, inklusive Minnesoptimerad M150 och senare. Balanserad B150 och högre; och Compute Optimized X150 och senare. Alla dessa nivåer och högre finns i offentlig förhandsversion.

Alla Flash-optimerade nivåer finns i offentlig förhandsversion.

Jämför funktioner

Följande tabell beskriver några av de funktioner som stöds på respektive nivå:

Funktionsbeskrivning Memory Optimized Balanced Compute Optimized Flash Optimized
Storlek (GB) 12 - 1920 0.5 - 960 3 - 720 250 - 4500
Serviceavtal (SLA) Yes Yes Yes Yes
Datakryptering under överföring Ja (privat slutpunkt) Ja (privat slutpunkt) Ja (privat slutpunkt) Ja (privat slutpunkt)
Replikering och redundans Yes Yes Yes Yes
Nätverksisolering Yes Yes Yes Yes
Microsoft Entra ID-baserad autentisering Yes Yes Yes Yes
Skalning Yes Yes Yes Yes
Hög tillgänglighet *Ja *Ja *Ja *Ja
Datapersistence Yes Yes Yes Yes
Geo-replication Ja (aktiv) Ja (aktiv) Ja (aktiv) No
Icke-klustrade instanser Yes Yes Yes No
Anslutningsgranskningsloggar Ja (händelsebaserad) Ja (händelsebaserad) Ja (händelsebaserad) Ja (händelsebaserad)
JSON-datastrukturer(d.s. Redis JSON) Yes Yes Yes Yes
Sökfunktioner (inklusive vektorsökning) Yes Yes Yes No
Probabilistiska datastrukturer (det vill: Redis Bloom) Yes Yes Yes Yes
Time Series-databasfunktion (det vill: Redis TimeSeries) Yes Yes Yes Yes
Import/Export Yes Yes Yes Yes

* När hög tillgänglighet är aktiverat är Azure Managed Redis zonredundant i regioner med flera tillgänglighetszoner.

När du använder hög tillgänglighet (HA), distribueras en Azure Managed Redis-instans med primära och replikskärvor över två noder. I regioner utan tillgänglighetszoner distribueras de primära fragmenten och replikskärvorna över två noder i samma zon.

Important

Alternativen Balanced B0 och B1 SKU stöder inte aktiv geo-replikering.

Note

Stöd för nedskalning är begränsat i vissa situationer. Mer information finns i Begränsningar för skalning av Azure Managed Redis.

Nätverksprestanda

Om du har en arbetsbelastning som kräver högt dataflöde kan nätverksbandbredden orsaka en flaskhals. Du kan öka bandbredden genom att flytta upp till en högre prestandanivå eller genom att flytta till en stor instansstorlek. Större storleksinstanser har mer bandbredd på grund av den underliggande virtuella datorn som är värd för cachen. Högre bandbreddsgränser hjälper dig att undvika nätverksmättnad som orsakar tidsgränser i ditt program. Mer information om bandbreddsprestanda finns i Prestandatestning

Maximalt antal klientanslutningar

Varje SKU har ett maximalt antal klientanslutningar. Den här gränsen ökar med högre prestandanivåer och större instansstorlekar. I följande tabell visas maximalt antal klientanslutningar som tillåts per Azure Managed Redis SKU.

Den här tabellen visar maximala anslutningar per nivå och minnesstorlek.

Storlek (GB) Memory
Optimerad
Balanced Compute
Optimerad
Blixt
Optimerad
(förhandsversion)
0,5 - 15,000 - -
1 - 15,000 - -
3 - 15,000 30,000 -
6 - 15,000 30,000 -
12 15,000 30,000 75,000 -
24 30,000 75,000 150,000 -
60 75,000 150,000 200,000 -
120 150,000 200,000 200,000 -
180 * 200,000 200,000 200,000 -
240 * 200,000 200,000 200,000 75,000
360 * 200,000 200,000 200,000 -
480 * 200,000 200,000 200,000 150,000
720 * 200,000 200,000 200,000 200,000
960 * 200,000 200,000 - 200,000
1440 * 200,000 - - 200,000
1920 * 200,000 - - 200,000
4500 * - - - 200,000

* Storlekarna med en asterisk finns i offentlig förhandsversion.

Hög tillgänglighet

Azure Managed Redis ger hög tillgänglighet. Serviceavtalet täcker endast anslutningen mellan cachens slutpunkter. Serviceavtalet omfattar inte skydd mot dataförlust. Mer information om serviceavtalet finns i serviceavtalet. Det går att inaktivera hög tillgänglighet i en Azure Managed Redis-instans. Detta sänker priset men resulterar i dataförlust och stilleståndstid. Vi rekommenderar bara att du inaktiverar hög tillgänglighet för utvecklings-/testscenarier.

Andra prisöverväganden

Important

Azure Managed Redis Enterprise kräver en IP-adress för varje cacheinstans. För närvarande absorberas IP-adressavgiften av Azure Managed Redis och skickas inte vidare till kunder. Detta kan ändras i framtiden. Mer information finns i Prissättning för IP-adresser.

Important

Aktiv geo-replikering genererar dataöverföring mellan Azure-regioner. Dessa bandbreddsavgifter absorberas för närvarande av Azure Managed Redis och skickas inte vidare till kunder. Detta kan komma att ändras i framtiden. Mer information finns i Bandbreddspriser.

Tillgänglighet efter region

Azure Managed Redis expanderar kontinuerligt till nya regioner. Information om hur du kontrollerar tillgängligheten per region finns i Produkter som är tillgängliga per region.

Flytta från Azure Cache for Redis

Mer information om hur du migrerar från Azure Cache for Redis till Azure Managed Redis finns i Flytta från Azure Cache for Redis till Azure Managed Redis.