Redis使用场景和特点

redis的数据类型

redis是一个key-value存储系统。和所谓的mysql和oracle不一样,它是非关系型数据库,它支持的数据类型有它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)

redis和mysql的不同

这是一个很好用的数据库,怎么说呢,虽然看着数据类型很简单,但是读取速度和存储速度都比将数据放在硬盘中的mysql和oracle快很多。但是因为键数据存储在内存中,所以保持时间有限。所以两者其实可以配套使用,互相弥补不足之处。

例如一些不容易变动的数据我们可以存储到Redis中。作为一个在内存中操作数据的数据库,相比起mysql不用使用IO操作。比如我们手里有一个企业级的数据库,有两千万条数据,但是其实并不是每一个数据都会被常常用到。比如不是每一个淘宝用户都会常常查看自己的消费记录,那么我们可以将一些常常被查看的消费记录存储在redis中,提高其数据的获取速度。而大量的数据则存放在mysql之中永久保存。

redis的发布和订阅

redis是一个很好用的小型数据库(毕竟使用内存,存储数据有限,如果搭建了集群另说。。。)。好用在哪里呢?好用在居然还能发布和订阅
当时我就在想,这不就抢了ActiveMQ的功能嘛?当然不是,这个毕竟只是小小的发布和订阅。怎么可能比ActiveMQ功能更加完善呢?
他只是有这个功能而已,不过我觉得这个功能在集群中非常有用。

redis集群

说实在的,这个东西我只是大致的了解,没有动手搭建过。当时集群的作用是很明显的,拥有更多的存储空间。在大数据大行其道的背景下,集群是必然也必须的。
当时由于不了解,所以就不展开说了。AOF存储策略是目前而言,较多人使用的方法,但是更多的人会同时使用RDB和AOF一起使用。但是这样服务器压力则较大。但是数据丢失的可能性最低。

你可能感兴趣的:(Redis使用场景和特点)