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