Configurare la persistenza dei dati per un'istanza di cache di Azure per Redis
La persistenza di Redis consente di rendere persistenti i dati archiviati nell'istanza della cache. In caso di errore hardware, l'istanza della cache viene riattivata con i dati del file di persistenza quando torna online. La possibilità di rendere persistenti i dati è un modo importante per aumentare la durabilità di un'istanza della cache perché tutti i dati della cache vengono archiviati in memoria. La perdita di dati è possibile se si verifica un errore quando i nodi della cache sono inattivo. La persistenza deve essere una parte fondamentale della strategia di disponibilità elevata e ripristino di emergenza con cache di Azure per Redis.
Avviso
Se si usa la persistenza nel livello Premium, verificare se l'account di archiviazione ha l'eliminazione temporanea abilitata prima di usare la funzionalità di persistenza dei dati. L'uso della persistenza dei dati con l'eliminazione temporanea causa costi di archiviazione molto elevati. Per altre informazioni, vedere Abilitare l'eliminazione temporanea?
Avviso
L'opzione di scrittura sempre per la persistenza AOF nei livelli Enterprise ed Enterprise Flash è impostata per essere ritirata il 1° aprile 2025. Questa opzione presenta limitazioni significative per le prestazioni non è più consigliata. È invece consigliabile usare l'opzione di scrittura ogni secondo o usare la persistenza RDB.
Ambito della disponibilità
Livello | Basic e Standard | Premium | Enterprise, Enterprise Flash |
---|---|---|---|
Disponibile | No | Sì | Sì (anteprima) |
Tipi di persistenza dei dati in Redis
Sono disponibili due opzioni per la persistenza con cache di Azure per Redis: il formato del database Redis (RDB) e il formato AOF (Append only File):
- Persistenza RDB: quando si usa la persistenza RDB, cache di Azure per Redis salva in modo permanente uno snapshot della cache in un formato binario. Lo snapshot viene salvato in un account Archiviazione di Azure. La frequenza di backup configurabile determina la frequenza con cui rendere persistente lo snapshot. Se si verifica un evento irreversibile che disabilita sia la cache primaria che quella di replica, la cache viene ricostruita automaticamente usando lo snapshot più recente. Altre informazioni sono disponibili sui vantaggi e gli svantaggi della persistenza RDB.
- Persistenza AOF: quando si usa la persistenza AOF, cache di Azure per Redis salva ogni operazione di scrittura in un log. Il log viene salvato almeno una volta al secondo in un account Archiviazione di Azure. Se si verifica un evento irreversibile che disabilita le cache primaria e di replica, la cache viene ricostruita automaticamente usando le operazioni di scrittura archiviate. Altre informazioni sono disponibili sui vantaggi e gli svantaggi della persistenza AOF.
cache di Azure per Redis funzionalità di persistenza devono essere usate per ripristinare automaticamente i dati nella stessa cache dopo la perdita di dati. I file di dati persistenti RDB/AOF non possono essere importati in una nuova cache o nella cache esistente. Per spostare i dati tra le cache, usare la funzionalità Importazione ed Esportazione . Per altre informazioni, vedere Importare ed esportare dati in cache di Azure per Redis.
Per generare tutti i backup dei dati che possono essere aggiunti a una nuova cache, è possibile scrivere script automatizzati usando PowerShell o l'interfaccia della riga di comando che esportano periodicamente i dati.
Prerequisiti e limitazioni
Le funzionalità di persistenza devono essere usate per ripristinare i dati nella stessa cache dopo la perdita di dati.
- I file di dati persistenti RDB/AOF non possono essere importati in una nuova cache o nella cache esistente. Usare invece la funzionalità Importazione/Esportazione.
- La persistenza non è supportata con le cache che usano la replica geografica passiva o la replica geografica attiva.
- Nel livello Premium la persistenza AOF non è supportata con più repliche.
- Nel livello Premium i dati devono essere salvati in modo permanente in un account di archiviazione nella stessa area dell'istanza della cache.
- Nel livello Premium, gli account di archiviazione in sottoscrizioni diverse possono essere usati per rendere persistenti i dati se l'identità gestita viene usata per connettersi all'account di archiviazione.
Differenze tra persistenza nei livelli Premium ed Enterprise
Nel livello Premium i dati vengono salvati in modo permanente direttamente in un account Archiviazione di Azure di cui si è proprietari e gestiti. Archiviazione di Azure crittografa automaticamente i dati quando vengono salvati in modo permanente, ma è anche possibile usare chiavi personalizzate per la crittografia. Per altre informazioni, vedere Chiavi gestite dal cliente per la crittografia di archiviazione di Azure.
Avviso
Se si usa la persistenza nel livello Premium, verificare se l'account di archiviazione ha l'eliminazione temporanea abilitata prima di usare la funzionalità di persistenza dei dati. L'uso della persistenza dei dati con l'eliminazione temporanea causa costi di archiviazione molto elevati. Per altre informazioni, vedere Abilitare l'eliminazione temporanea?
Nei livelli Enterprise ed Enterprise Flash i dati vengono salvati in modo permanente in un disco gestito collegato direttamente all'istanza della cache. Il percorso non è configurabile né accessibile all'utente. L'uso di un disco gestito aumenta le prestazioni di persistenza. Il disco viene crittografato usando chiavi gestite da Microsoft (MMK) per impostazione predefinita, ma è possibile usare anche chiavi gestite dal cliente. Per altre informazioni, vedere Gestione della crittografia dei dati.
Come configurare la persistenza dei dati usando il portale di Azure
Come configurare la persistenza dei dati usando PowerShell e l'interfaccia della riga di comando di Azure
Gestione della crittografia dei dati
Poiché la persistenza di Redis crea dati inattivi, la crittografia di questi dati è un problema importante per molti utenti. Le opzioni di crittografia variano in base al livello di cache di Azure per Redis in uso.
Con il livello Premium, i dati vengono trasmessi direttamente dall'istanza della cache a Archiviazione di Azure all'avvio della persistenza. È possibile usare vari metodi di crittografia con Archiviazione di Azure, tra cui chiavi gestite da Microsoft, chiavi gestite dal cliente e chiavi fornite dal cliente. Per informazioni sui metodi di crittografia, vedere crittografia Archiviazione di Azure per i dati inattivi.
Con i livelli Enterprise ed Enterprise Flash, i dati vengono archiviati in un disco gestito montato nell'istanza della cache. Per impostazione predefinita, il disco che contiene i dati di persistenza e il disco del sistema operativo vengono crittografati usando chiavi gestite da Microsoft. È anche possibile usare una chiave gestita dal cliente (CMK) per controllare la crittografia dei dati. Per istruzioni, vedere Crittografia nelle cache di livello Enterprise.
Domande frequenti sulla persistenza
Nell'elenco seguente sono fornite risposte a domande frequenti sulla persistenza di Cache Redis di Azure.
- È possibile abilitare la persistenza per una cache creata in precedenza?
- È possibile abilitare la persistenza AOF e RDB allo stesso tempo?
- Come funziona la persistenza con la replica geografica?
- Quale modello di persistenza è consigliabile scegliere?
- Cosa accade se è stato eseguito il ridimensionamento a una dimensione diversa e viene ripristinato un backup eseguito prima dell'operazione di ridimensionamento?
- È possibile usare lo stesso account di archiviazione per la persistenza in due cache diverse?
- Verranno addebitati i costi per l'archiviazione usata nella persistenza dei dati
- Con quale frequenza RDB e persistenza AOF scrivono nei BLOB e è necessario abilitare l'eliminazione temporanea?
- La presenza di eccezioni del firewall nell'account di archiviazione influisce sulla persistenza
- Ricerca per categorie controllare se l'eliminazione temporanea è abilitata nell'account di archiviazione?
Persistenza RDB
- È possibile modificare la frequenza di backup RDB dopo avere creato la cache?
- Perché sono presenti più di 60 minuti tra i backup quando si ha una frequenza di backup RDB di 60 minuti?
- Cosa accade ai backup RDB precedenti quando viene eseguito un nuovo backup?
Persistenza AOF
- Quando è consigliabile usare un secondo account di archiviazione?
- La persistenza AOF influisce su velocità effettiva, latenza o prestazioni della cache?
- Come si rimuove il secondo account di archiviazione?
- Che cos'è un'operazione di riscrittura e in che modo influisce sulla cache?
- Quali potrebbero essere gli effetti del ridimensionamento di una cache con la persistenza AOF abilitata?
- Come vengono organizzati i dati AOF nello spazio di archiviazione?
- È possibile abilitare la persistenza AOF se si dispone di più repliche?
È possibile abilitare la persistenza per una cache creata in precedenza?
Sì, la persistenza può essere configurata sia durante la creazione della cache che nelle cache Premium, Enterprise o Enterprise Flash esistenti.
È possibile abilitare la persistenza AOF e RDB allo stesso tempo?
No, è possibile abilitare RDB o AOF, ma non entrambi contemporaneamente.
Come funziona la persistenza con la replica geografica?
Se si abilita la persistenza dei dati, la replica geografica non può essere abilitata per la cache.
Quale modello di persistenza è consigliabile scegliere?
Il salvataggio permanente di file Append-only (AOF) salva ogni scrittura in un log, con un effetto significativo sulla velocità effettiva. Rispetto a AOF con la persistenza RDB, che salva i backup in base all'intervallo di backup configurato con un effetto minimo sulle prestazioni. Scegliere La persistenza AOF se l'obiettivo principale è ridurre al minimo la perdita di dati ed è possibile gestire una velocità effettiva inferiore per la cache. Se si desidera invece mantenere la velocità effettiva ottimale nella cache e avere comunque un meccanismo per il ripristino dei dati, è preferibile scegliere la persistenza RDB.
- Altre informazioni sono disponibili sui vantaggi e gli svantaggi della persistenza RDB.
- Altre informazioni sono disponibili sui vantaggi e gli svantaggi della persistenza AOF.
Per altre informazioni sulle prestazioni quando si usa la persistenza AOF, vedere La persistenza AOF influisce sulla velocità effettiva, la latenza o sulle prestazioni della cache?
La persistenza AOF influisce su velocità effettiva, latenza o prestazioni della cache?
La persistenza AOF influisce sulla velocità effettiva. AOF viene eseguito sia nel processo primario che in quello di replica, pertanto viene visualizzato un carico di CPU e server superiore per una cache con persistenza AOF rispetto a una cache identica senza persistenza AOF. AOF offre la migliore coerenza con i dati in memoria perché ogni scrittura ed eliminazione viene mantenuta con pochi secondi di ritardo. Il compromesso è che AOF è più a elevato utilizzo di calcolo.
Se il carico della CPU e del server è inferiore al 90%, si verifica una riduzione della velocità effettiva, ma la cache funziona normalmente, in caso contrario. Oltre il 90% della CPU e del carico del server, la riduzione della velocità effettiva può aumentare notevolmente e la latenza di tutti i comandi elaborati dalla cache aumenta. La latenza aumenta perché la persistenza AOF viene eseguita sia nel processo primario che in quello di replica, aumentando il carico sul nodo in uso e inserendo la persistenza nel percorso critico dei dati.
Cosa accade se è stato eseguito il ridimensionamento a una dimensione diversa e viene ripristinato un backup eseguito prima dell'operazione di ridimensionamento?
Per la persistenza sia RDB sia AOF:
- Se è stata ridimensionata una dimensione maggiore, non c'è alcun effetto.
- Se sono state ridimensionate fino a dimensioni inferiori e si dispone di un'impostazione di database personalizzata maggiore del limite di database per le nuove dimensioni, i dati in tali database non vengono ripristinati. Per altre informazioni, vedere L'impostazione databases personalizzata viene modificata durante il ridimensionamento?
- Se è stata ridimensionata una dimensione inferiore e non è disponibile spazio sufficiente per contenere tutti i dati dell'ultimo backup, le chiavi vengono rimosse durante il processo di ripristino. In genere, le chiavi vengono rimosse usando i criteri di rimozione allkeys-lru .
È possibile usare lo stesso account di archiviazione per la persistenza in due cache diverse?
No, è necessario usare account di archiviazione diversi per cache diverse. Ogni cache deve avere un proprio account di archiviazione per la persistenza.
Importante
Usare account di archiviazione separati per la persistenza ed eseguire operazioni di esportazione periodiche in una cache.
Verranno addebitati i costi per l'archiviazione usata nella persistenza dei dati?
- Per le cache Premium , vengono addebitati i costi per l'archiviazione usata in base al modello tariffario dell'account di archiviazione in uso.
- Per le cache Enterprise ed Enterprise Flash, non vengono addebitati costi per l'archiviazione su disco gestito. È incluso nel prezzo.
Con quale frequenza RDB e persistenza AOF scrivono nei BLOB e è necessario abilitare l'eliminazione temporanea?
È consigliabile evitare di abilitare l'eliminazione temporanea negli account di archiviazione quando vengono usati con cache di Azure per Redis persistenza dei dati con il livello Premium. La persistenza RDB e AOF può scrivere nei BLOB ogni ora, ogni pochi minuti o ogni secondo. Inoltre, l'abilitazione dell'eliminazione temporanea in un account di archiviazione significa che cache di Azure per Redis non può ridurre al minimo i costi di archiviazione eliminando i dati di backup precedenti.
L'eliminazione temporanea diventa rapidamente costosa con le dimensioni tipiche dei dati di una cache che esegue anche operazioni di scrittura ogni secondo. Per altre informazioni sui costi di eliminazione temporanea, vedere Prezzi e fatturazione.
È possibile modificare la frequenza di backup RDB dopo avere creato la cache?
Sì, è possibile modificare la frequenza di backup per la persistenza RDB usando la portale di Azure, l'interfaccia della riga di comando o PowerShell.
Perché sono presenti più di 60 minuti tra i backup quando si ha una frequenza di backup RDB di 60 minuti?
L'intervallo di frequenza di backup di persistenza RDB non viene avviato fino al completamento del processo di backup precedente. Se la frequenza di backup è di 60 minuti e il completamento del processo di backup richiede 15 minuti, il backup successivo non verrà avviato fino a 75 minuti dopo l'ora di inizio del backup precedente.
Cosa accade ai backup RDB precedenti quando viene eseguito un nuovo backup?
Tutti i backup di persistenza RDB, ad eccezione del più recente, vengono eliminati automaticamente. Questa eliminazione potrebbe non verificarsi immediatamente, ma i backup meno recenti non vengono resi persistenti per un periodo illimitato. Se si usa il livello Premium per la persistenza e l'eliminazione temporanea è attivata per l'account di archiviazione, viene applicata l'impostazione di eliminazione temporanea e i backup esistenti continuano a risiedere nello stato di eliminazione temporanea.
Quando è consigliabile usare un secondo account di archiviazione?
Usare un secondo account di archiviazione per la persistenza AOF quando si ritiene di avere operazioni set superiori al previsto nella cache. L'impostazione del secondo account di archiviazione aiuta a garantire che la cache non raggiunga i limiti di larghezza di banda di archiviazione. Questa opzione è disponibile solo per le cache di livello Premium.
Come si rimuove il secondo account di archiviazione?
È possibile rimuovere l'account di archiviazione secondario della persistenza AOF impostandolo come il primo account di archiviazione. Per le cache esistenti, accedere alla persistenza dei dati dal menu Risorsa per la cache. Per disabilitare la persistenza AOF, selezionare Disabilitato.
Che cos'è un'operazione di riscrittura e in che modo influisce sulla cache?
Quando il file AOF diventa sufficientemente grande, viene automaticamente accodata una riscrittura nella cache. L'operazione di riscrittura ridimensiona il file AOF con il set minimo di operazioni necessarie per creare il set di dati corrente. Durante le riscritture, è possibile prevedere di raggiungere i limiti di prestazioni prima, soprattutto quando si gestiscono set di dati di grandi dimensioni. Le riscritture si verificano meno spesso quando il file AOF diventa più grande, ma richiede una quantità significativa di tempo quando si verifica.
Quali potrebbero essere gli effetti del ridimensionamento di una cache con la persistenza AOF abilitata?
Se il file AOF al momento del ridimensionamento è elevato, l'operazione di scalabilità richiederà più tempo del previsto perché ricarica il file al termine del ridimensionamento.
Per altre informazioni sul ridimensionamento, vedere Cosa accade se sono state ridimensionate a dimensioni diverse e viene ripristinato un backup eseguito prima dell'operazione di ridimensionamento?
Come vengono organizzati i dati AOF nello spazio di archiviazione?
Quando si usa il livello Premium, i dati archiviati nei file AOF vengono divisi in più BLOB di pagine per partizione. Per impostazione predefinita, la metà dei BLOB viene salvata nell'account di archiviazione primario e la metà vengono salvate nell'account di archiviazione secondario. La suddivisione dei dati tra più BLOB di pagine e due account di archiviazione diversi aumenta le prestazioni.
Se la frequenza massima di scritture nella cache non è molto elevata, è possibile che non siano necessarie prestazioni aggiuntive. In tal caso, è possibile rimuovere la configurazione dell'account di archiviazione secondario. Tutti i file AOF vengono invece archiviati in un unico account di archiviazione primario. Nella tabella seguente viene visualizzato il numero di BLOB di pagine totali usati per ogni piano tariffario:
Livello Premium | BLOB |
---|---|
P1 | 8 per partizione |
P2 | 16 per partizione |
P3 | 32 per partizione |
P4 | 40 per partizione |
Quando è abilitato il clustering, ogni partizione nella cache ha un proprio set di BLOB di pagine, come indicato nella tabella precedente. Ad esempio, una cache P2 con tre partizioni distribuisce il file AOF tra 48 BLOB di pagine: sedici BLOB per partizione, con tre partizioni.
Dopo una riscrittura, nello spazio di archiviazione sono presenti due set di file AOF. Le riscritture si verificano in background e aggiungono al primo set di file. Impostare le operazioni inviate alla cache durante la riscrittura, aggiungere al secondo set. Un backup viene archiviato temporaneamente durante le riscritture in caso di errore. Il backup viene eliminato tempestivamente al termine di una riscrittura. Se l'eliminazione temporanea è attivata per l'account di archiviazione, l'impostazione di eliminazione temporanea si applica e i backup esistenti continuano a rimanere nello stato di eliminazione temporanea.
La presenza di eccezioni del firewall nell'account di archiviazione influisce sulla persistenza?
L'uso dell'identità gestita aggiunge l'istanza della cache all'elenco dei servizi attendibili, semplificando l'esecuzione delle eccezioni del firewall. Se non si usa l'identità gestita e si autorizza invece a un account di archiviazione usando una chiave, la presenza di eccezioni del firewall nell'account di archiviazione tende a interrompere il processo di persistenza. Questo vale solo per la persistenza nel livello Premium.
È possibile abilitare la persistenza AOF se si dispone di più repliche?
Con il livello Premium non è possibile usare la persistenza AOF (Append-only File) con più repliche. Nei livelli Enterprise ed Enterprise Flash l'architettura di replica è più complessa, ma la persistenza AOF è supportata quando le cache aziendali vengono usate nella distribuzione con ridondanza della zona.
Ricerca per categorie controllare se l'eliminazione temporanea è abilitata nell'account di archiviazione?
Selezionare l'account di archiviazione usato dalla cache per la persistenza. Selezionare Protezione dati dal menu Risorsa. Nel riquadro di lavoro controllare lo stato Abilita eliminazione temporanea per i BLOB. Per altre informazioni sull'eliminazione temporanea negli account di archiviazione di Azure, vedere Abilitare l'eliminazione temporanea per i BLOB.
Passaggi successivi
Altre informazioni sulle funzionalità di cache di Azure per Redis.