Redis是什么

Redis是什么

 

Redis是什么,首先Redis官网上是这么说的:A persistent key-value database with built-in net interface written in ANSI-C for Posix systems

Redis是 key value server , 它可以代替mysql作为数据库,它也可以作为cache服务器存储热数据。而且Redis支持复杂的数据特性,比如list,set。

 

互联网信息的存储方式有两种:

    1.关系型数据库

    2.key value 

企业的业务数据并不是简单的数据特性,就比如权限管理,比如用户的权限,是个list数据结构。

如果用关系型数据库存储,需要用多行数据来存储权限,每行都会有冗余信息,如果用Redis存储

就可以变的简单和高效,因为redis支持list数据结构的原子性操作,可以添加或者删除原子成员。

而且使用Redis后也不用在关心数据持久化的问题。

 

 

用get/set方式使用Redis

 

    作为一个key value 存储的存在,很多开发者自然的使用get/set方式使用redis

  其实这不是最优化的使用方法,假设一个 key value 存储单元 最少占用 512个字节,

  那么即使存放1字节的数据,也要占用一个存储单元 , 这时候就有个设计模式,可以

  解决这个问题,可以复用key,几个key-value放入一个key中,value作为set使用,这样

  就可以节约内存,这样同样的512字节,可以存放10-100倍的数据。

 

  Redis存储方式(数据持久化):

    1.快照(snapshots): 快照模式并不是很健壮,当系统停止或者是redis被kill掉时,最后写入到redis 的数据就会丢失

    2.AOF:是一个纯文本的完全是Redis操作命令的文本,来弥补弥补快照模式的不足

    3.AOF重写:因为AOP要记录每个操作日志,所以文件很大,而AOF重写是为了解决这个问题而存在的模式

    

 

 

 

 

 

 

你可能感兴趣的:(redis)