Redis其实就是一个用C语言写的一个程序,这个程序用来存储 key-value数据,数据先放在内存,然后写入磁盘指定位置。
下面我们梳理一下Redis存储两种方式: RDB和AOF
第一种方式:RDB(Redis DataBase)
RDB是将数据写入一个临时文件,持久化结束后,用这个临时文件替换上次持久化的文件,达到数据恢复。
rdis database存储方式,是将数据存储在一个xxx.rdb的文件中。文件中保存的数据就是redis中的内存数据。默认的存储方式,效率高,对磁盘的访问比较合理,对内存数据的监控也是有一定临界值的,保证数据尽可能不丢失。
redis.conf
# In the example below the behaviour will be to save:
# after 900 sec (15 min) if at least 1 key changed
# after 300 sec (5 min) if at least 10 keys changed
# after 60 sec if at least 10000 keys changed
# Note: you can disable saving completely by commenting out all "save" lines.
# It is also possible to remove all the previously configured save
# points by adding a save directive with a single empty string argument
# like in the following example:
# save ""
# 持久数据的规则. RDB持久规则. 存储数据的文件由dbfilename参数决定
save 900 1
save 300 10
save 60 10000
# RDB持久数据的文件命名. 可以使用绝对路径配置,如果没有路径配置,在命令运行的相对位置开始寻址存在。
dbfilename dump.rdb
第二种方式:AOF(appendonly file)
AOF是将执行过的指令记录下来,数据恢复时按照从前到后的顺序再将指令执行一遍,实现数据恢复。
其中,AOF默认关闭,开启方法,修改配置文件redis.conf:appendonly yes
append of file 存储方式。对磁盘和IO的资源需求,比rdb方式高很多。对redis服务器的性能有很大的影响。Aof和rdb可以同时开启,但是,在redis重启的时候,会优先读取aof中保存的数据变化日志。不推荐同时启用,对磁盘的压力和IO的压力太高。推荐使用rdb。
# 是否启用append of file持久化方式.默认关闭.
# 每秒持久一次数据. 以追加的方式,持久到数据文件.
appendonly no
# aof持久方式的文件名称.
appendfilename "appendonly.aof"
以上就是redis存储方式有哪些的详细内容,更多请关注亿速云其它相关文章!