Condividi tramite


Configurare la persistenza dei dati per un'istanza di Managed Redis di Redis (anteprima)

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 Managed Redis di Azure (anteprima).

Importante

La persistenza dei dati ha lo scopo di offrire resilienza in caso di errori imprevisti dei nodi Redis, ma non è una funzionalità di backup dei dati né di ripristino temporizzato (PITR). Se i dati danneggiati vengono scritti nell'istanza di Redis, questi dati verranno salvati in modo permanente. Per eseguire backup dell'istanza di Redis, usare la funzione di esportazione.

Ambito della disponibilità

Livello Ottimizzato per la memoria, bilanciato, ottimizzato per il calcolo Ottimizzato per Flash
Disponibile

Tipi di persistenza dei dati in Redis

Sono disponibili due opzioni per la persistenza con Redis gestito di Azure: il formato del database Redis (RDB) e il formato Append only File (AOF):

  • Persistenza RDB: quando si usa la persistenza RDB, Azure Managed Redis mantiene uno snapshot della cache in un formato binario. Lo snapshot viene salvato in un disco gestito montato nell'istanza di Redis. La frequenza di backup configurabile determina la frequenza con cui rendere persistente lo snapshot. Se si verifica un evento irreversibile che disabilita sia la replica primaria che quella primaria, 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, Managed Redis di Azure salva ogni operazione di scrittura in un log. Il log è salvato una volta al secondo in un disco gestito installato nell'istanza di Redis. 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.

Importante

Le funzionalità di persistenza di Managed Redis di Azure hanno lo scopo di ripristinare automaticamente i dati nella stessa cache dopo la perdita di dati. Gli utenti non possono accedere ai file di dati persistenti RDB/AOF né importarli in una cache nuova o esistente. Per spostare i dati tra le cache, usare la funzionalità Importare ed Esportare. Per altre informazioni, vedere Importare ed esportare dati in Managed Redis di Azure.

Per generare backup di dati che possono essere aggiunti a una nuova cache, è possibile scrivere script automatizzati usando PowerShell o l'interfaccia della riga di comando di Azure 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 attiva.
  • Per impostazione predefinita, il disco gestito che contiene i file di dati persistenti è crittografato usando chiavi gestite da Microsoft (MMK), ma è anche possibile usare 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

  1. Accedere al portale di Azure e iniziare a seguire le istruzioni nella guida introduttiva di Redis gestita di Azure.

  2. Quando si raggiunge la scheda Avanzate , selezionare le opzioni RDB o AOF nella sezione Persistenza dati.

    Screenshot che mostra la scheda Enterprise tier Advanced e La persistenza dei dati è evidenziata con una casella rossa.

  3. Per abilitare la persistenza RDB, selezionare RDB e configurare le impostazioni.

    Impostazione Valore suggerito Descrizione
    Frequenza di backup Usare l'elenco a discesa e selezionare un intervallo di backup. Le opzioni disponibili includono 60 minuti, 6 ore e 12 ore. Il conto alla rovescia per l'intervallo inizia dopo il corretto completamento dell'operazione di backup precedente. Al termine, viene avviato un nuovo backup.
  4. Per abilitare la persistenza AOF, selezionare AOF. È disponibile una sola opzione di frequenza di backup.

  5. Completare la creazione della cache seguendo le altre istruzioni della guida introduttiva di Redis gestita di Azure.

Nota

È possibile aggiungere la persistenza a un'istanza di Redis gestita di Azure creata in precedenza in qualsiasi momento passando alle impostazioni avanzate nel menu Risorsa.

Configurare la persistenza dei dati con PowerShell e l'interfaccia della riga di comando di Azure

Con PowerShell

Il comando New-AzRedisEnterpriseCache può essere usato per creare una nuova istanza di Redis gestita di Azure usando la persistenza dei dati. Usare i parametri RdbPersistenceEnabled, RdbPersistenceFrequency, AofPersistenceEnabled e AofPersistenceFrequency per configurare l'installazione della persistenza. Questo esempio crea una nuova istanza di B10 bilanciata usando la persistenza RDB con frequenza di un'ora:

New-AzRedisEnterpriseCache -Name "MyCache" -ResourceGroupName "MyGroup" -Location "West US" -Sku "Balanced_B10" -RdbPersistenceEnabled -RdbPersistenceFrequency "1h"

Le cache esistenti possono essere aggiornate usando il comando Update-AzRedisEnterpriseCacheDatabase. Questo esempio aggiunge la persistenza RDB con frequenza di 12 ore a un'istanza esistente:

Update-AzRedisEnterpriseCacheDatabase -Name "MyCache" -ResourceGroupName "MyGroup" -RdbPersistenceEnabled -RdbPersistenceFrequency "12h"

Uso dell'interfaccia della riga di comando di Azure

Il comando az redisenterprise create può essere usato per creare una nuova istanza di Redis gestita di Azure usando la persistenza dei dati. Usare i parametri rdb-enabled, rdb-frequency, aof-enabled e aof-frequency per configurare l'installazione della persistenza. Questo esempio crea una nuova istanza di B10 bilanciata usando la persistenza RDB con frequenza di un'ora:

az redisenterprise create --cluster-name "cache1" --resource-group "rg1" --location "East US" --sku "Balanced_B10" --persistence rdb-enabled=true rdb-frequency="1h" 

Le cache esistenti possono essere aggiornate usando il comando az redisenterprise database update. In questo esempio viene aggiunta la persistenza RDB con frequenza di 12 ore a un'istanza della cache esistente:

az redisenterprise database update --cluster-name "cache1" --resource-group "rg1" --persistence rdb-enabled=true rdb-frequency="12h" 

Gestione della crittografia dei dati

Poiché la persistenza di Redis crea dati inattivi, la crittografia di questi dati è un problema rilevante per molti utenti. In Azure Managed Redis 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 in Redis gestita di Azure.

Domande frequenti sulla persistenza

L'elenco seguente contiene risposte a domande comuni sulla persistenza di Managed Redis di Azure.

Persistenza RDB

Persistenza AOF

È 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 istanze di Managed Redis di Azure 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. Ciò è dovuto al fatto che la replica geografica attiva offre una resilienza migliore rispetto alla persistenza dei dati in caso di interruzione a livello di area. Se è necessario esportare una copia dei dati come backup, usare invece la funzionalità di esportazione.

Quale modello di persistenza è consigliabile scegliere?

La persistenza AOF salva ogni scrittura in un log e ciò può avere un impatto significativo sulla velocità effettiva. La persistenza RDB salva i backup in base all'intervallo di backup configurato con un impatto 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?

L'uso della persistenza AOF influisce sulla velocità effettiva. AOF è in esecuzione in tutti i processi primari, pertanto una cache con persistenza AOF avrà un carico su CPU e server maggiore di 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.

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

Viene addebitato il costo del disco gestito usato nella persistenza dei dati?

Non vengono addebitati costi per l'archiviazione sul disco gestito. È incluso nel prezzo.

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

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 normale 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?

Passaggi successivi