Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 24125|Risposta: 2

[Redis] Differenza di persistenza di Redis tra RDB e AOF

[Copiato link]
Pubblicato su 04/02/2021 13:47:27 | | | |
Redis Windows 64-bit download, indirizzo ufficiale del download
https://www.itsvse.com/thread-2576-1-1.html

Redis ha tre modi per iniziare
https://www.itsvse.com/thread-4008-1-1.html

La differenza tra salvataggio e salvataggio in redis
https://www.itsvse.com/thread-4010-1-1.html

Tutorial per l'installazione Redis 5.0.3 di CentOS 7
https://www.itsvse.com/thread-7201-1-1.html


1. Prefazione

Recentemente, Redis è stato utilizzato come cache nel progetto per facilitare la condivisione dei dati tra molteplici processi aziendali. Poiché i dati di Redis sono memorizzati in memoria, se la persistenza non è configurata, tutti i dati verranno persi dopo il riavvio di Redis, quindi devi abilitare la funzione di persistenza di Redis per salvare i dati sul disco e, quando Redis viene riavviato, puoi recuperare i dati dal disco. Redis offre due modi per persistere: persistenza RDB (il principio è scaricare i record database di Reids in memoria sulla persistenza RDB su disco) e l'altro è la persistenza AOF (il principio è scrivere i log delle operazioni di Reids in un file sotto forma di appendice). Qual è quindi la differenza tra questi due metodi di persistenza e come scegliere di cambiarla? La maggior parte delle cose che leggo su Internet spiegano come configurare e usare questi due metodi, ma non c'è un'introduzione alla differenza tra i due e a quali scenari applicabili utilizzare.


2. La differenza tra i due

La persistenza RDB si riferisce alla scrittura di un'istantanea del dataset in memoria su disco entro un intervallo di tempo specificato, e il processo operativo effettivo consiste nel forkare un sottoprocesso, prima scrivere il dataset in un file temporaneo, poi sostituire il file precedente dopo il successo della scrittura, e memorizzarlo con compressione binaria.



La persistenza AOF registra ogni operazione di scrittura e cancellazione processata dal server sotto forma di log, e l'operazione di query non verrà registrata, ma sarà registrata in testo, e puoi aprire il file per vedere il record dettagliato dell'operazione.



3. Vantaggi e svantaggi dei due

Quali sono i vantaggi della RDB?

1). Una volta usato, l'intero database Redis conterrà un solo file, perfetto per i backup dei file. Ad esempio, potresti voler archiviare le ultime 24 ore ogni ora, e anche archiviare gli ultimi 30 giorni ogni giorno. Con una strategia di backup del genere, possiamo facilmente recuperare in caso di guasto catastrofico del sistema.

2). RDB è una scelta molto valida per il disaster recovery. Perché possiamo facilmente comprimere un singolo file e trasferirlo su un altro supporto di archiviazione.

3). Massimizzare le prestazioni. Per il processo di servizio Rederis, l'unica cosa che deve fare all'inizio della persistenza è fornire forchi ai processi figli, e poi i processi figli completeranno questi compiti di persistenza, il che può evitare di gran lunga che il processo di servizio esegue operazioni di IO.

4). Rispetto al meccanismo AOF, se il dataset è grande, l'efficienza di avvio di RDB sarà maggiore.

Quali sono gli svantaggi della RDB?

1). Se vuoi garantire un'alta disponibilità dei dati, cioè evitare la perdita di dati nel modo più ampio, allora RDB non sarà una buona scelta. Perché una volta che il sistema si interrompe prima della persistenza programmata, i dati precedentemente scritti su disco verranno persi.

2). Poiché RDB assiste nella persistenza dei dati attraverso i sottoprocessi fork, se il set di dati è grande, può causare l'intero blocco del servizio per centinaia di millisecondi, o addirittura 1 secondo.

Quali sono i vantaggi dell'AOF?

1). Questo meccanismo può portare una maggiore sicurezza dei dati, cioè persistenza dei dati. In Redis sono fornite 3 strategie di sincronizzazione, ovvero sincronizzazione al secondo, sincronizzazione per modifica e desincronizzazione. In effetti, la sincronizzazione al secondo avviene anch'essa in modo asincrono, e la sua efficienza è molto alta; la differenza è che una volta che il sistema si blocca, i dati modificati si perdono entro quel secondo. E ogni volta che una modifica viene sincronizzata, possiamo pensarla come persistenza di sincronizzazione, cioè ogni cambiamento di dato che avviene viene immediatamente registrato su disco. È prevedibile che questo metodo sia il meno efficiente. Per quanto riguarda la mancata sincronizzazione, non c'è bisogno di aggiungere altro, penso che tutti possano capirlo correttamente.

2). Poiché il meccanismo adotta la modalità append per scrivere file di log, anche se c'è un periodo di inattività durante il processo di scrittura, il contenuto già presente nel file di log non verrà distrutto. Tuttavia, se scriviamo solo metà dei dati e il sistema crasha questa volta, non preoccuparti, possiamo usare lo strumento redis-check-aof per aiutarci a risolvere il problema di coerenza dei dati prima dell'inizio successivo di Redis.

3). Se il log è troppo grande, Redis può attivare automaticamente il meccanismo di riscrittura. Cioè, Redis scrive continuamente i dati di modifica nel vecchio file disco in modalità append, e Redis crea anche un nuovo file per registrare quali comandi di modifica vengono eseguiti durante questo periodo. Pertanto, la sicurezza dei dati può essere meglio garantita quando si passa tra le riscritture.

4). AOF contiene un file di log chiaro e facile da comprendere che registra tutte le modifiche. In effetti, possiamo anche completare la ricostruzione dei dati tramite questo file.

Quali sono gli svantaggi dell'OV?

1). Per lo stesso numero di dataset, i file OF sono solitamente più grandi dei file RDB. RDB recupera grandi dataset più velocemente di AOF.

2). A seconda della strategia di sincronizzazione, AOF tende a essere più lento dell'RDB in termini di efficienza di esercizio. In breve, l'efficienza della politica di sincronizzazione al secondo è relativamente alta, e l'efficienza della politica di disabilitazione sincrona è efficiente quanto quella di RDB.

I criteri per scegliere i due sono se il sistema è disposto a sacrificare alcune prestazioni in cambio di una maggiore coerenza nella cache (AOF), oppure se è disposto a non abilitare backup in cambio di prestazioni più elevate quando le operazioni di scrittura sono frequenti, e poi a fare backup (RDB) quando si esegue manualmente il Salva. RDB ha un significato finale più coerente. Tuttavia, l'ambiente produttivo è in realtà più una combinazione dei due.


4. Configurazioni comuni

Configurazione di persistenza RDB

Redis scarica un'istantanea del dataset nel file dump.rdb. Inoltre, possiamo anche modificare la frequenza degli snapshot dump del server Redis tramite il file di configurazione; dopo aver aperto il file 6379.conf, cerchiamo save e possiamo vedere le seguenti informazioni di configurazione:



Configurazione persistente AOF

Ci sono tre modi per sincronizzare nel profilo Rederis, sono:



Configurazione completa:



Un nuovo file "appendonly.aof" verrà creato sotto la cartella di test, come segue:





Precedente:DataTables implementa l'esportazione delle tabelle in Excel, CSV e stampa
Prossimo:SQL Server stabilisce il livello di isolamento delle transazioni
 Padrone di casa| Pubblicato su 08/02/2021 11:45:25 |
Redis modifica il numero di porta predefinito e imposta la password di accesso
https://www.itsvse.com/thread-2577-1-1.html
Pubblicato su 22/09/2021 20:26:16 |
Impara a imparare...
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com