Skip to main content

What is the persistence mechanism of Redis? Their advantages and disadvantages?


 Redis provides two persistence mechanisms, RDB and AOF mechanisms:

1. RDBRedis DataBase) persistence mode:

Refers to the semi-persistent mode of using a snapshot of the data set) to record all the key-value pairs of the redis database, and write the data to a temporary file at a certain point in time. After the end of the persistence, replace the last persistent file with this temporary file File to achieve data recovery.

advantage:

(1) There is only one file dump.rdb, which is convenient for persistence.

(2) Good disaster tolerance, a file can be saved to a safe disk.

(3) To maximize performance, fork the child process to complete the write operation and let the main process continue to process commands, so IO is maximized. Use a separate child process for persistence, the main process will not perform any IO operations, ensuring the high performance of redis)

(4) When the data set is large, the startup efficiency is higher than that of AOF.

shortcoming:

Data security is low. RDB is persisted at intervals. If redis fails between persistence, data loss will occur. So this method is more suitable when the data requirements are not rigorous

2. AOFAppend-only file) persistence method:

It means that all command line records are completely persistently stored in the format of the redis command request protocol) and saved as an aof file.

advantage:

(1) Data security, aof persistence can be configured with appendfsync attribute, there is always, every time a command operation is performed, it will be recorded in the aof file once.

(2) Write files through append mode, even if the server is down in the middle, you can use the redis-check-aof tool to solve the data consistency problem.

(3) The rewrite mode of the AOF mechanism. Before the AOF file is rewrite (when the file is too large, the command will be merged and rewritten), you can delete some of the commands (such as the incorrectly operated flushall))

shortcoming:

(1) The AOF file is larger than the RDB file, and the recovery speed is slow.

(2) When the data set is large, the startup efficiency is lower than that of rdb.


Also read:

40 Redis interview questions for 2021 - 2022

Comments

Popular posts from this blog

40 Redis interview questions for 2021 - 2022

  Redis interview questions 1.What is Redis?. 2. What is the data type of Redis? 3. What are the benefits of using Redis? 4. What are the advantages of Redis over Memcached? 5. What are the differences between Memcache and Redis? 6. Is Redis single-process and single-threaded? 7. What is the maximum storage capacity of a string type value? 8. What is the persistence mechanism of Redis? Their advantages and disadvantages? 9. Redis common performance problems and solutions: 10. What is the deletion strategy of redis expired keys? 11. Redis recycling strategy (elimination strategy)? 12. Why does edis need to put all data in memory? 13. Do you understand the synchronization mechanism of Redis? 14. What are the benefits of Pipeline? Why use pipeline? 15. Have you used Redis cluster? What is the principle of cluster? 16. Under what circumstances will the Redis cluster solution cause the entire cluster to be unavailable? 17. What are the Java clients supp...

Recursion-maze problem - Rat in the Maze - Game

  package com.bei.Demo01_recursion; public class MiGong {     public static void main(String[] args)  {         //First create a two-dimensional array to simulate the maze         int [][]map=new int[8][7];         //Use 1 for wall         for (int i = 0; i <7 ; i++) {             map[0][i]=1;             map[7][i]=1;         }         for (int i = 0; i <8 ; i++) {             map[i][0]=1;             map[i][6]=1;         }         //Set the bezel         map[3][1]=1;         map[3][2]=1;         //Output         for (int i = 0; i <8 ; i++) {             for (int j = 0; j ...

165 + Big Data and Artificial intelligence ( AI ) terms and terminology Glossary

  Latest and most comprehensive big data/artificial intelligence terms & terminology in English (highly recommended for collection) for years 2021 and 2022   A  1.  Apache Kafka:  named after the Czech writer Kafka, used to build real-time data pipelines and streaming media applications. The reason it is so popular is that it can store, manage, and process data streams in a fault-tolerant manner, and it is said to be very "fast". Given that the social network environment involves a lot of data stream processing, Kafka is currently very popular.