Redis 是一个开放源代码( BSD 许可)的内存中数据结构存储,用作数据库,缓存和消息代理。它支持数据结构,例如字符串,哈希,列表,集合,带范围查询的排序集合,位图 ( bitMap ),超日志 ( hyperlog ),带有半径查询和流的地理空间索引 ( geohash )。 Redis 还内置了副本, Lua 脚本, LRU 驱逐策略,事务和不同级别的磁盘持久性,并通过 Redis SentinelRedis Cluster 自动分区提供了高可用性。

Redis 还支持一下特性:

  • 事务
  • 发布 / 订阅模式
  • lua 脚本
  • 键值的允许生存时长.
  • LRU 驱逐
  • 故障自动转移

# 与其他数据库对比

与其他数据库的对比:

- Redis MongoDB Hbase Mysql
数据库类型 NoSQL NOSQL NoSQL 关系型数据库
数据类型 key-value, 提供 String,List,zet 等多种结构 Collection.Document.BSON 基于列模式的映射数据库,可表示简单的 key-value 的映射关系。 DB.table.row/col
持久化 支持 (RDB/AOF) 支持 支持 支持
是否支持集群 支持 支持 支持 支持
使用场景 缓存 (内存稳定,读写性能极佳), 读多写少 使用 Mysql 等关系型数据库,但是会遇到表结构不稳定的时候 (灵活) 数据库大,特别大,列数据库,适合写多读少的场景 常规的数据存储
是否支持索引 支持 支持 支持 支持
是否支持事务 支持 不支持 支持 支持

# 最后

期望与你一起遇见更好的自己

期望与你一起遇见更好的自己