1.1赞扬:
Redis 基于 键值对的NoSQL 数据库,与很多键值对SQL 不同的数据是,Redis的值可以是由
String , 字符串
hash 哈希
list 列表
set 集合
zset 有序集合
Bitmaps 位图
HyperLogLog
GEO 地理信息定位 等多种数据结构和算法组成
Redis 利用快照和日志的形式将 内存的数据保存到硬盘上,再发生类似断电的时候,数据就不会丢失
额外的:
Redis 还提供了
键过期,发布订阅,事务, 流水线,Lua 脚本等附加功能
1.2特性:
1. 速度快
all data 都放在 内存中
Redis 是用 C language 实现的,一般说 C语音 离 operation System 更近
所以 速度更 fast
2. 基于键值对的数据结构
多种不同的数据结构。另外还包括两种 ”神奇的数据结构“
HyperLogLog
GEO 地理信息
3. 丰富的Function
键过期功能,实现缓存
发布订阅功能, 实现消息系统
Lua 脚本功能, 利用其创造新的Redis 命令
简单的事务功能
流水线功能,这样客户端能一批命令一次性传到 Redis,减少网络开销
4. 简单稳定
三个方面: 源码少,单线程模型, 不需要依赖于操作系统中类库
5.客户端语言多
提供简单的TCP 通信协议,很多编程语言可以方便的接入到Redis
6. 持久化
提供两种 持久化方式: RDB 和AOF
7. 主从copy
提供复制功能,实现多个相同数据的Redis 副本。
8. 高可用和分布式
Redis Sentinel 能够保证 结点的故障发现和自动转移。
1.3 使用场景
1. 缓存
2. 排行榜系统
3. 计数器应用
4. 社交 network
5. 消息队列系统
Redis can't doing something:
从 数据规模来看: 如果数据量非常大,几亿几亿的那种,基本不可能用Redis
从 数据冷热来看: 热数据 通常是指需要 频繁操作的data,反之为冷数据。
so,如果冷数据放在 redis,那就是浪费。而热数据在Redis中加速读写,对后端也是减轻负载。
1.4 配置文件
可执行文件 | 作用 |
---|---|
redis-server | 启动Redis |
redis-cli | Redis 命令客户端 |
redis-benchmark | Redis 基准测试工具 |
redis-check-aof | Redis AOF 持久化文件检测和检测工具 |
redis-check-dump | Redis RDB 持久化文件检测和检测工具 |
redis-sentinel | 启动Redis Sentinel |