4、Redis持久化机制

65 阅读1分钟

Redis

1、概述

单线程 非关系型数据库NoSQL

常用类型有字符串string、哈希hash、列表list(有序、可重复)、无序集合set、有序集合zset

常用API set get del ;hset hget ;lpush rpush ;lpop rpop;sadd srem

持久化方式:RDB AOF

2、RDB持久化机制

2.1、优点
  • RDB 是一个非常紧凑(compact)的文件,它保存了 Redis 在某个时间点上的数据集。 这种文件非常适合用于进行备份
  • RDB 在恢复大数据集时的速度比 AOF 的恢复速度要快(因为其文件要比AOF的小)
  • RDB的性能要比AOF更好
2.2、缺点
  • RDB的持久化不够及时,可能会存在数据丢失
  • RDB持久化时如果文件过大可能会造成服务器的阻塞,停止客户端请求

3、AOF持久化机制

3.1、优点
  • AOF的持久性更加的耐久(可以每秒 或 每次操作保存一次)
  • AOF 文件有序地保存了对数据库执行的所有写入操作, 这些写入操作以 Redis 协议的格式保存, 因此 AOF 文件的内容非常容易被人读懂, 对文件进行分析(parse)也很轻松。
  • AOF是增量操作
3.2、缺点
  • 对于相同的数据集来说,AOF 文件的体积通常要大于 RDB 文件的体积
  • 根据所使用的 fsync 策略,==AOF 的速度可能会慢于 RDB.

4、选择

  • 如果你非常关心你的数据, 但仍然可以承受数分钟以内的数据丢失,选择RDB 持久化。
  • 如果对数据的完整性要求比较高, 选择AOF