Importera och exportera data i Azure Cache for Redis
Använd import- och exportfunktionerna i Azure Cache for Redis som en datahanteringsåtgärd. Du importerar data till din cacheinstans eller exporterar data från en cacheinstans med hjälp av en ögonblicksbild av Azure Cache for Redis Database (RDB). Ögonblicksbilderna importeras eller exporteras med hjälp av en blob i ett Azure Storage-konto.
Import/export stöds på Premium-, Enterprise- och Enterprise Flash-nivåerna:
- Exportera – du kan exportera dina Azure Cache for Redis RDB-ögonblicksbilder till en sidblob (Premium-nivå) eller blockblob (Enterprise-nivåer).
- Importera – du kan importera dina Azure Cache for Redis RDB-ögonblicksbilder från antingen en sidblob eller en blockblob.
Du kan använda Import/Export för att migrera mellan olika Azure Cache for Redis-instanser eller fylla i cacheminnet med data före användning.
Den här artikeln innehåller en guide för att importera och exportera data med Azure Cache for Redis och ger svar på vanliga frågor.
Tillgänglighetsomfång
Nivå | Basic, Standard | Premium | Enterprise, Enterprise Flash |
---|---|---|---|
Tillgängligt | Nej | Ja | Ja |
Kompatibilitet
- Data exporteras som en RDB-sidblob på Premium-nivån . På Enterprise- och Enterprise Flash-nivåerna exporteras data som en .gz blockblob.
- Cacheminnen som kör Redis 4.0 stöder RDB version 8 och senare. Cacheminnen som kör Redis 6.0 stöder RDB version 9 och senare.
- Exporterade säkerhetskopior från nyare versioner av Redis (till exempel Redis 6.0) kan inte importeras till äldre versioner av Redis (till exempel Redis 4.0)
- RDB-filer från Premium-nivåcacheminnen kan importeras till Enterprise - och Enterprise Flash-nivåcacheminnen .
Importera
Använd import för att hämta Redis-kompatibla RDB-filer från alla Redis-servrar som körs i alla moln eller miljöer, inklusive Redis som körs på Linux, Windows eller någon molnleverantör som Amazon Web Services och andra. Att importera data är ett enkelt sätt att skapa en cache med förifyllda data. Under importen läser Azure Cache for Redis in RDB-filerna från Azure Storage till minnet och infogar sedan nycklarna i cacheminnet.
Kommentar
Innan du påbörjar importåtgärden kontrollerar du att filen eller filerna i Redis Database (RDB) laddas upp till sidan eller blockblobar i Azure Storage, i samma region och prenumeration som din Azure Cache for Redis-instans. Om du använder hanterad identitet för autentisering kan lagringskontot finnas i en annan prenumeration. Mer information finns i Kom igång med Azure Blob Storage. Om du exporterade RDB-filen med hjälp av funktionen Azure Cache for Redis Export lagras RDB-filen redan i en sidblob och är redo att importeras.
Viktigt!
För närvarande stöds inte import från Redis Enterprise-nivån till Premium-nivån.
Om du vill importera en eller flera exporterade cacheblobar bläddrar du till din cache i Azure Portal och väljer Importera data på resursmenyn. I arbetsfönstret visas Välj blobar där du kan hitta RDB-filer.
Välj Välj blobar och välj det lagringskonto som innehåller de data som ska importeras .
Välj den container som innehåller de data som ska importeras.
Välj en eller flera blobar som ska importeras genom att välja området till vänster om blobnamnet och sedan Välj.
Välj Importera för att påbörja importen.
Viktigt!
Cachen är inte tillgänglig för cacheklienter under importprocessen och alla befintliga data i cacheminnet tas bort.
Du kan övervaka förloppet för importåtgärden genom att följa meddelandena från Azure Portal eller genom att visa händelserna i aktivitetsloggen.
Viktigt!
Stöd för aktivitetsloggar är ännu inte tillgängligt på Enterprise-nivåerna.
Export
Med Export kan du exportera data som lagras i Azure Cache for Redis till Redis-kompatibla RDB-filer. Du kan använda den här funktionen för att flytta data från en Azure Cache for Redis-instans till en annan eller till en annan Redis-server. Under exportprocessen skapas en tillfällig fil på den virtuella dator som är värd för Azure Cache for Redis-serverinstansen. Sedan laddas filen upp till det valda lagringskontot. När exportåtgärden slutförs med statusen lyckad eller misslyckad tas den tillfälliga filen bort.
Om du vill exportera det aktuella innehållet i cacheminnet till lagring bläddrar du till din cache i Azure Portal och väljer Exportera data på resursmenyn. Du ser Välj lagringscontainer i arbetsfönstret.
Välj Välj lagringscontainer och visa en lista över tillgängliga lagringskonton. Välj det lagringskonto som du vill använda. Lagringskontot måste finnas i samma region som cacheminnet. Om du använder hanterad identitet för autentisering kan lagringskontot finnas i en annan prenumeration. Annars måste lagringskontot finnas i samma prenumeration som din cache.
Viktigt!
- Export fungerar med sidblobar som stöds av både klassiska och Resource Manager-lagringskonton.
- Azure Cache for Redis stöder inte export till ADLS Gen2-lagringskonton.
- Export stöds inte av Blob Storage-konton just nu.
- Om din cachedataexport till brandväggsaktiverade lagringskonton misslyckas läser du Vad händer om brandväggen är aktiverad på mitt lagringskonto?
Mer information finns i kontoöversikten för Azure Storage.
Välj den lagringscontainer som du vill lagra exporten och välj sedan . Om du vill ha en ny container väljer du Lägg till container för att lägga till den först och väljer den sedan i listan.
Skriv ett blobnamnprefix och välj Exportera för att starta exportprocessen. Prefixet för blobnamn används för att prefixa namnen på filer som genereras av den här exportåtgärden.
Du kan övervaka förloppet för exportåtgärden genom att följa meddelandena från Azure Portal eller genom att visa händelserna i granskningsloggen.
Cacheminnen är fortfarande tillgängliga för användning under exportprocessen.
Vanliga frågor och svar om import/export
Det här avsnittet innehåller vanliga frågor och svar om funktionen Import/Export.
- Vilka nivåer stöder import/export?
- Kan jag importera data från en Redis-server?
- Vilka RDB-versioner kan jag importera?
- Är min cache tillgänglig under en import-/exportåtgärd?
- Kan jag använda Import/Export med Redis-kluster?
- Hur fungerar import/export med en anpassad databasinställning?
- Hur skiljer sig import/export från Redis-beständighet?
- Kan jag automatisera import/export med hjälp av PowerShell, CLI eller andra hanteringsklienter?
- Jag fick ett timeout-fel under min import-/exportåtgärd. Vad betyder det?
- Jag fick ett fel när jag exporterade mina data till Azure Blob Storage. Vad hände?
- Vad händer om brandväggen är aktiverad på mitt lagringskonto?
- Kan jag importera eller exportera data från ett lagringskonto i en annan prenumeration än min cache?
- Vilka behörigheter måste beviljas till SAS-token (containersignatur för delad åtkomst) för lagringskontot för att tillåta export?
Vilka nivåer stöder import/export?
Import - och exportfunktionerna är endast tillgängliga på Premium-, Enterprise- och Enterprise Flash-nivåerna .
Kan jag importera data från en Redis-server?
Ja, du kan importera data som har exporterats från Azure Cache for Redis-instanser. Du kan importera RDB-filer från valfri Redis-server som körs i alla moln eller miljöer. Miljöerna omfattar Linux, Windows eller molnleverantörer som Amazon Web Services. Om du vill importera dessa data laddar du upp RDB-filen från den Redis-server som du vill använda till en sida eller blockblob i ett Azure Storage-konto. Importera den sedan till din Premium Azure Cache for Redis-instans.
Du kanske till exempel vill:
Exportera data från din produktionscachen.
Importera den sedan till en cache som används som en del av en mellanlagringsmiljö för testning eller migrering.
Viktigt!
Om du vill importera data som exporterats från Redis-servrar förutom Azure Cache for Redis när du använder en sidblob, måste sidblobstorleken justeras på en gräns på 512 byte. Exempelkod för att utföra nödvändiga byteutfyllnad finns i Exempel på sidblobuppladdning.
Vilka RDB-versioner kan jag importera?
Mer information om RDB-versioner som stöds som används med import finns i avsnittet om kompatibilitet.
Är min cache tillgänglig under en import-/exportåtgärd?
- Exportera – Cacheminnen är fortfarande tillgängliga och du kan fortsätta att använda cacheminnet under en exportåtgärd.
- Import – Cacheminnen blir otillgängliga när en importåtgärd startas och blir tillgängliga för användning när importen slutförs.
Kan jag använda Import/Export med Redis-kluster?
Ja, och du kan importera/exportera mellan en klustrad cache och en icke-grupperad cache. Eftersom Redis-klustret endast stöder databas 0 importeras inte alla data i andra databaser än 0. När klustrade cachedata importeras omfördelas nycklarna mellan klustrets shards.
Hur fungerar import/export med en anpassad databasinställning?
Vissa prisnivåer har olika databasgränser, så det finns vissa överväganden när du importerar om du konfigurerade ett anpassat värde för databases
inställningen när cacheminnet skapades.
- När du importerar till en prisnivå med en lägre
databases
gräns än den nivå som du exporterade från:- Om du använder standardnumret
databases
, vilket är 16 för alla prisnivåer, går inga data förlorade. - Om du använder ett anpassat antal
databases
som ligger inom gränserna för den nivå som du importerar till går inga data förlorade. - Om du exporterar data som innehåller data i en databas som överskrider gränserna för den nya nivån importeras inte data från dessa högre databaser.
- Om du använder standardnumret
Hur skiljer sig import/export från Redis-beständighet?
Funktionen Azure Cache for Redis persistence är främst en funktion för datahållbarhet. Omvänt är import-/exportfunktionen utformad som en metod för att göra periodiska datasäkerhetskopior för återställning till tidpunkt.
När beständighet har konfigurerats bevarar cacheminnet en ögonblicksbild av data till disken, baserat på en konfigurerbar säkerhetskopieringsfrekvens. Data skrivs med ett Redis-proprietärt binärt format. Om en katastrofal händelse inträffar som inaktiverar både den primära cachen och replikcachen återställs cachedata automatiskt med hjälp av den senaste ögonblicksbilden.
Datapersistence är utformat för haveriberedskap. Det är inte avsett som en återställningsmekanism för tidpunkt.
- På Premium-nivån lagras datapersistence-filen i Azure Storage, men filen kan inte importeras till en annan cache.
- På Enterprise-nivåerna lagras datapersistence-filen på en monterad disk som inte är användartillgänglig.
Om du vill göra regelbundna säkerhetskopieringar av data för återställning till tidpunkt rekommenderar vi att du använder import-/exportfunktionen . Mer information finns i Konfigurera datapersistence för Azure Cache for Redis.
Kan jag automatisera import/export med hjälp av PowerShell, CLI eller andra hanteringsklienter?
Ja, se följande instruktioner för Premium-nivån :
- PowerShell-instruktioner för att importera Redis-data och exportera Redis-data.
- Azure CLI-instruktioner för att importera Redis-data och exportera Redis-data
För Enterprise- och Enterprise Flash-nivåerna:
- PowerShell-instruktioner för att importera Redis-data och exportera Redis-data.
- Azure CLI-instruktioner för att importera Redis-data och exportera Redis-data
Jag fick ett timeout-fel under min import-/exportåtgärd. Vad betyder det?
Om du till vänster är kvar på Importera data eller Exportera data i mer än 15 minuter innan du påbörjar åtgärden får du ett felmeddelande som liknar följande exempel:
The request to import data into cache 'contoso55' failed with status 'error' and error 'One of the SAS URIs provided could not be used for the following reason: The SAS token end time (se) must be at least 1 hour from now and the start time (st), if given, must be at least 15 minutes in the past.
Lös det här felet genom att starta import- eller exportåtgärden innan 15 minuter har gått.
Jag fick ett fel när jag exporterade mina data till Azure Blob Storage. Vad hände?
Export fungerar endast med RDB-filer som lagras som sidblobar. Andra blobtyper stöds inte för närvarande, inklusive Blob Storage-konton med frekventa och lågfrekventa nivåer. Mer information finns i kontoöversikten för Azure Storage. Om du använder en åtkomstnyckel för att autentisera ett lagringskonto tenderar brandväggsundanstag på lagringskontot att orsaka att importen/exporten misslyckas.
Vad händer om brandväggen är aktiverad på mitt lagringskonto?
Om du använder en Premium-nivåinstans måste du kontrollera "Tillåt att Azure-tjänster i listan över betrodda tjänster får åtkomst till det här lagringskontot" i inställningarna för lagringskontot. Använd sedan hanterad identitet (system eller användartilldelad) och etablera RBAC-rollen Storage Blob Data Contributor för objekt-ID:t.
Mer information finns i Hanterad identitet för lagringskonton – Azure Cache for Redis
Enterprise - och Enterprise Flash-instanser stöder inte import från eller export av data till lagringskonton som använder brandväggar eller privata slutpunkter. Lagringskontot måste ha åtkomst till det offentliga nätverket.
Kan jag importera eller exportera data från ett lagringskonto i en annan prenumeration än min cache?
På Premium-nivån kan du importera och exportera data från ett lagringskonto i en annan prenumeration än din cache, men du måste använda hanterad identitet som autentiseringsmetod. Du måste välja den valda prenumerationen som innehåller lagringskontot när du konfigurerar importen eller exporten.
Vilka behörigheter måste beviljas till SAS-token (containersignatur för delad åtkomst) för lagringskontot för att tillåta export?
För att exporten till ett Azure-lagringskonto ska fungera korrekt måste sas-token (signatur för delad åtkomst) ha följande behörigheter:
read
add
create
write
delete
tag
move
Nästa steg
Läs mer om Azure Cache for Redis-funktioner.