redis笔记总结之redis介绍

1、Redis介绍:redis

  redis的发展历史简单的理解为由于使用相似MySql这类关系型数据库不方便进而开发的开源的、轻量级的、非关系型的,直到如今一直不断完善的一款NoSql数据库。具体的介绍你们能够上网搜一下,这里就不作介绍了。数据库

一、特性:缓存

  1.1存储结构服务器

    redis以字典结构存储数据,通俗的讲是以key=value(键值对)的形式存储的,并容许其余应用经过TCP协议读取字典中的内容。多线程

    目前redis支持的数据类型有:字符串类型(string);散列类型(hash);列表类型(list);集合类型(set);有序集合类型(zset)。memcached

    这种存储结构的优点:性能

      在关系型数据库中,不一样的数据须要放在不一样的表中,有特定须要的话须要进行多表连查。而对于redis这样以键值的形式存储的数据而言,能够对键进行差集、交集、并集的操做,方便不少。spa

  1.2内存存储与持久化线程

    redis数据库中全部的数据都存在内存中。因为内存的读写速度远快于硬盘,所以,redis在性能上远超于那些读取到磁盘上的数据库,在一台普通的笔记本电脑上,redis能够在一秒内读写超过十万个键值。code

    将数据存储到内存中也是有隐患的,例如程序忽然退出后内存中的数据就没了。不过,redis提供了持久化的支持,经过RDB方式或者AOF方式将内存数据持久化到磁盘上,两种方式后面总结。

  1.3功能丰富

    redis虽然是做数据库开发的,可是不少用作缓存和队列使用的。

    redis中能够设置键的生存时间,生存时间到期后就会自动删除。这一功能能够做为缓存来使用。redis是单线程模式,而memcached支持多线程,在多核服务器上memcached性能更高。做为缓存系统,redis还能够限定数据占用的空间大小,超出空间限制后按照必定的规则删除没必要要的键。

    除此以外,redis的列表类型键能够用来实现队列,能够支持阻塞式读取,能够很容易实现一个高性能的优先级队列。更高层次上,redis还支持“订阅/发布”的消息模式,能够基于此来构建聊天室等系统。

  1.4简单稳定

    再强大的功能使用起来很复杂一样不会很吸引人,然而redis使用起来也至关的方便简单。

    例如:在常规的关系型数据库中想要获取user表的usercode为3的username字段数据时使用SQL语句:select username from user where usercode = 3;

       然而在redis中是以键值对的形式存储的,咱们只须要按键取值便可:HGET user:3 username

 

                                       注:此笔记仅根据本人理解所写,若有错误之处,还请留言指正,谢谢。

相关文章
相关标签/搜索