Redis有string、hash、list、set、sorted set共5种数据类型;而Redis内部则使用一个redis Object对象(包含类型type、编码方式encoding等属性)来表示所有的key和value;其中类型type 表示value是什么数据类型,编码方式encoding则是5种数据类型在redis内部的存储方式。如:type=string表示value是一个普通字符串,对应的encoding可以是raw或者是int,如果是raw表示存储类型为字符类型,如果是int则代表存储类型为数值型类存储。
Redis有两种主要的持久化方式;分别是RDB和AOF。
RDB 持久化可以在指定的时间间隔内生成数据集的时间点快照, RDB 是一个非常紧凑(compact)的文件,它保存了 Redis 在某个时间点上的数据集。这种文件非常适合用于进行备份;其时间间隔可以通过配置文件配置。Redis默认使用的持久化是RDB方式。
AOF 持久化记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集。AOF 文件是一个只进行追加操作的日志文件;若说两种方式特点:在恢复速度上来说,RDB 恢复数据集的速度要比 AOF 恢复的速度要快。