redis简单的介绍

1.什么是redis

  • redis是一个nosql(not only sql不仅仅是sql)数据库,也称之为非关系型数据库(相对于传统关系型数据库,例如:mysql、oracle、sqlserver、postgresql等)
  • redis是将数据存放在内存中,由于内容存取速度快所以redis广泛用于互联网企业中
  • 优点:存取速度快,官方称读速度每秒会达到30万次,写的速度每秒达10万次每秒,具体速度限制于硬件
  • 缺点:对持久化支持不够良好,所以redis一般不作为数据的主数据库存储,一般配合关系型数据库使用
  • 关系型数据库: 以二维表形式存储数据
  • 非关系型数据库:以键值对形式存储数据

2.redis应用领域

分布式缓存
分布式session
保存博客或者论坛的留言回复等
总之是用在数据量大,并发量高的情况下

3.redis数据类型

  1. String字符串:
    格式: set key value
    取值: get key
    string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。
    string类型是Redis最基本的数据类型,一个键最大能存储512MB。
  2. Hash(哈希)
    格式: hmset name key1 value1 key2 value2
    取值: hmget name key1 key2 , hgetall name
    删除: hdel name key1
    Redis hash 是一个键值(key=>value)对集合。
    Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。
  3. List(列表)
    Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)
    格式: lpush key value
    取值: lrange key 1 -1
    在 key 对应 list 的头部添加字符串元素
    格式: rpush key value
    在 key 对应 list 的尾部添加字符串元素
    格式: lpop key , rpop key
    key 对应 list 中删除第一个或最后一个元素
    格式: llen key
    返回 key 对应 list 的长度
  4. Set(集合)
    格式: sadd key value
    取值: smembers key
    删除: srem key
    Redis的Set是string类型的无序集合。
    集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。
  5. zset(sorted set:有序集合)
    格式: zadd name score value
    Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。
    不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
    zset的成员是唯一的,但分数(score)却可以重复。

4. 持久化:

  • RDB(不用任何配置,系统默认持久化方案)
    通过快照完成的,可以设置间隔多久保存一次
    优点:让redis的数据存取速度变快
    缺点:服务器断电时会丢失部分数据
  • AOF
    可以设置实时保存
    优点:持久化良好,能保存数据的完整性
    缺点:大大降低了redis的存取速度
    配置 appendonly yes 使用aof持久化
posted @ 2020-03-22 14:54  runbean  阅读(245)  评论(0编辑  收藏  举报