Configurare la persistenza dei dati per un'istanza della cache di Azure per Redis
La persistenza 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 poiché 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 inattivi. 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'eliminazione temporanea è abilitata nell'account di archiviazione 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 È necessario 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 File di solo accodamento (AOF):
- Persistenza RDB: quando si usa la persistenza RDB, la cache di Azure per Redis mantiene uno snapshot della cache in formato binario. Lo snapshot viene salvato in un account di archiviazione di Azure. La frequenza di backup configurabile determina la frequenza con cui rendere persistente lo snapshot. Se si verifica un errore 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, la 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 di archiviazione di Azure. Se si verifica un errore irreversibile che disabilita sia la cache primaria che quella di replica, la cache viene ricostruita automaticamente usando le operazioni di scrittura più recenti. Altre informazioni sono disponibili sui vantaggi e gli svantaggi della persistenza AOF.
Le funzionalità di persistenza della cache di Azure per Redis 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à Importare ed Esportare. Per altre informazioni, vedere Importare ed esportare dati nella 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à Importare/Esportare.
- 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 di archiviazione di Azure di cui si è proprietari e che si gestisce. Archiviazione di Azure crittografa automaticamente i dati quando sono persistenti, ma è anche possibile usare chiavi proprie 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'eliminazione temporanea è abilitata nell'account di archiviazione 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 È necessario 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 con chiavi gestite da Microsoft (MMK) per impostazione predefinita, ma è possibile usare anche chiavi gestite dal cliente (CMK). Per altre informazioni, vedere la gestione della crittografia dei dati.
Configurare la persistenza dei dati con il portale di Azure
Configurare la persistenza dei dati con 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 rilevante per molti utenti. Le opzioni di crittografia variano in base al livello della cache di Azure per Redis in uso.
Con il livello Premium, i dati vengono trasmessi direttamente dall'istanza della cache ad Archiviazione di Azure quando viene avviata la 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 di Archiviazione di Azure per 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 si è passati a una dimensione diversa e viene ripristinato un backup creato 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 le persistenze RDB e AOF scrivono nei BLOB? È necessario abilitare l'eliminazione temporanea?
- La presenza di eccezioni del firewall nell'account di archiviazione influisce sulla persistenza?
- Come è possibile verificare se l'eliminazione temporanea è abilitata nell'account di archiviazione?
Persistenza RDB
- È possibile modificare la frequenza di backup RDB dopo avere creato la cache?
- Perché trascorrono più di 60 minuti tra i backup se è stata impostata 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 sulla velocità effettiva, sulla latenza o sulle 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 al momento della creazione della cache che nelle cache Premium, Enterprise o Enterprise Flash esistenti.
È possibile abilitare la persistenza AOF e RDB allo stesso tempo?
No, è necessario scegliere una delle due. Non è possibile usarle entrambe 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. Confrontare AOF con il salvataggio permanente di RDB, che salva i backup in base all'intervallo di backup configurato con un effetto minimo sulle prestazioni. È consigliabile scegliere la persistenza AOF se lo scopo principale è ridurre al minimo la perdita di dati e si è in grado di gestire una velocità effettiva minore 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 le prestazioni della cache?
La persistenza AOF influisce sulla velocità effettiva, sulla latenza o sulle prestazioni della cache?
La persistenza AOF influisce sulla velocità effettiva. La persistenza AOF viene eseguita 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. La persistenza AOF offre la migliore coerenza con i dati in memoria perché ogni scrittura ed eliminazione viene mantenuta solo con un ritardo di pochi secondi. L’aspetto negativo è che la persistenza AOF ha un utilizzo di calcolo più elevato.
Se il carico della CPU e quello del server sono entrambi inferiori al 90%, si verifica una riduzione della velocità effettiva, ma per il resto la cache funziona normalmente. Con un carico della CPU e del server superiore al 90%, la velocità effettiva può essere ridotta maggiormente e aumenta la latenza di tutti i comandi elaborati dalla cache. 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 si è passati a una dimensione diversa e viene ripristinato un backup creato prima dell'operazione di ridimensionamento?
Per la persistenza sia RDB sia AOF:
- Se si è passati a una dimensione maggiore, non ci sono effetti.
- Se si è passati a una dimensione minore e l'impostazione dei database personalizzata è superiore al limite dei database per la nuova dimensione, i dati di questi database non vengono ripristinati. Per altre informazioni, vedere L'impostazione databases personalizzata viene modificata durante il ridimensionamento?
- Se si è passati a una dimensione minore che non è abbastanza grande per contenere tutti i dati del backup più recente, le chiavi vengono rimosse durante il processo di ripristino. Generalmente, le chiavi vengono rimosse mediante il criterio di rimozione allkeys-lru.
È possibile usare lo stesso account di archiviazione per la persistenza in due cache diverse?
No, occorre usare account di archiviazione diversi per le diverse cache. Ogni cache deve avere il 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 di prezzi 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 le persistenze RDB e AOF scrivono nei BLOB? È necessario abilitare l'eliminazione temporanea?
Si sconsiglia di abilitare l'eliminazione temporanea negli account di archiviazione quando viene usata con la persistenza dei dati della cache di Azure per Redis con il livello Premium. Le persistenze RDB e AOF può scrivere nei BLOB ogni ora, ogni qualche minuto oppure ogni secondo. Inoltre, l'abilitazione dell'eliminazione temporanea in un account di archiviazione significa che la cache di Azure per Redis non può ridurre al minimo i costi di archiviazione eliminando i dati dei 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 il portale di Azure, l'interfaccia della riga di comando o PowerShell.
Perché trascorrono più di 60 minuti tra i backup se è stata impostata una frequenza di backup RDB di 60 minuti?
L'intervallo di frequenza di backup della persistenza RDB inizia solo dopo il completamento del processo di backup precedente. Se la frequenza di backup è 60 minuti e per il completamento del processo di backup sono richiesti 15 minuti, il backup successivo verrà avviato solo 75 minuti dopo l'ora di inizio del backup precedente.
Cosa accade ai backup RDB precedenti quando viene eseguito un nuovo backup?
A eccezione di quello più recente, tutti i backup della persistenza RDB vengono eliminati automaticamente. L'eliminazione potrebbe non avvenire immediatamente, ma i backup meno recenti non vengono mantenuti per un tempo 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 un numero di operazioni set nella cache superiore a quello previsto. 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 a Persistenza dei dati dal menu Risorse della cache. Per disabilitare la persistenza AOF, selezionare Disabilitare.
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 l'operazione di riscrittura è normale raggiungere prima i limiti di prestazioni, soprattutto quando si usano grandi set di dati. L'operazione di riscrittura avviene meno spesso man mano che il file AOF diventa più grande, ma quando a quel punto si renderà necessaria, richiederà molto più tempo.
Quali potrebbero essere gli effetti del ridimensionamento di una cache con la persistenza AOF abilitata?
Se il file AOF al momento del ridimensionamento è grande, l'operazione di ridimensionamento richiede più tempo del previsto perché ricarica il file dopo che il ridimensionamento è stato completato.
Per altre informazioni sul ridimensionamento, vedere Cosa accade se si è passati a una dimensione diversa e viene ripristinato un backup creato 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, una metà dei BLOB viene salvata nell'account di archiviazione primario, mentre l'altra metà 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. La tabella seguente illustra il numero totale di BLOB di pagine usato 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. Una cache P2 con tre partizioni, ad esempio, distribuisce il proprio file AOF su 48 BLOB di pagine: 16 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 si accodano al primo set di file. Le operazioni set inviate alla cache durante la riscrittura si accodano al secondo set. In caso di errore, un backup viene archiviato temporaneamente durante le riscritture. Il backup viene eliminato tempestivamente al termine di una riscrittura. Se l'eliminazione temporanea è attivata per l'account di archiviazione, viene applicata l'impostazione di eliminazione temporanea e i backup esistenti restano nello stato di eliminazione temporanea.
La presenza di eccezioni del firewall nell'account di archiviazione influisce sulla persistenza?
Sì. L'uso delle impostazioni del firewall nell'account di archiviazione può impedire il funzionamento della funzionalità di persistenza. È possibile verificare se sono presenti errori nella persistenza dei dati visualizzando la metrica Errori. Questa metrica indica se la cache non è in grado di rendere persistenti i dati a causa di restrizioni del firewall sull'account di archiviazione o altri problemi.
Per usare la persistenza dei dati con un account di archiviazione con un firewall configurato, usare l'autenticazione basata su identità gestita per connettersi all'archiviazione . 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 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 File di solo accodamento (AOF) con più repliche. Nei livelli Enterprise ed Enterprise Flash l'architettura di replica è più complessa, ma la persistenza AOF è supportata quando le cache Enterprise vengono usate nella distribuzione con ridondanza della zona.
Come è possibile verificare se l'eliminazione temporanea è abilitata nell'account di archiviazione?
Selezionare l'account di archiviazione usato dalla cache per la persistenza. Selezionare Protezione dei dati dal menu Risorse. Nel riquadro di lavoro controllare lo stato di 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à della cache di Azure per Redis.