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 och rankningslistor

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.
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

Här är tre nivåer som lagrar data i minnet:

  • 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.

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

Här är nivån som lagrar data både i minnet och på disk:

  • 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.

    En bild av en tabell som visar Flash-optimerade nivåer i en tabell som visar lagringsanvändning.

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. Datapersistering skiljer sig från den flash-optimerade nivån, som är utformad för att lagra data på disk för vanliga operationer.

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 235 GB lagringsutrymme finns i offentlig förhandsversion, inklusive Minnesoptimerad M350 och senare. Balanserad B350 och högre; och Compute Optimized X350 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.

Minnesoptimerade, balanserade och beräkningsoptimerade SKU:er

Den här tabellen visar de maximala anslutningarna efter nivå och minnesstorlek i SKU:erna Minnesoptimerad, Balanserad och Beräkning.

Storlek (GB) Memory
Optimerad
Balanced Compute
Optimerad
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
175 200,000 200,000 200,000
235 200,000 200,000 200,000
360 * 200,000 200,000 200,000
480 * 200,000 200,000 200,000
720 * 200,000 200,000 200,000
960 * 200,000 200,000 -
1440 * 200,000 - -
1920 * 200,000 - -
4500 * - - -

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

Flash-optimerad SKU

Den här tabellen visar maximalt antal anslutningar per nivå och minnesstorlek i SKU:n Flash-optimerad (förhandsversion).

Storlek (GB) Blixt
Optimerad
(förhandsversion)
235 * 75,000
480 * 150,000
720 * 200,000
960 * 200,000
1440 * 200,000
1920 * 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. Om du inaktiverar hög tillgänglighet sänks priset, men data går förlorade och blir 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. Faktureringen 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. Faktureringen kan ä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.