发布时间:2023-07-02 15:00
redis是一款开源的内存数据结构存储
,用作数据库,缓存,消息中间件
,支持多种数据结构,如:strings,hashes,lists,sets,带有范围查询的sorted sets ,bitmaps,hyperloglogs,带有半径查询的geospatial Indexes,和stream;
Redis内置了的主从复制,事务,以及不同级别的持久化功能,
并通过Sentinel和自动分区的Cluster提供了高可用性
;
在redis中可以对这些类型进行原子操作(线程安全)
;
为了获得优秀的性能,redis把数据存储在内存
中,根据实际情况你可以每隔一段时间将数据转存至磁盘或者追加每一个操作指令到log中,来实现持久化;如果只需要用于内存缓存,你可以禁用持久化;
redis还支持异步主从复制和非常快的非阻塞的首次同步,自动重连和部分数据重新同步在遇到网络分裂(异常)时;
Redis使用c编写,可以运行于绝大多数POSIX系统上,例如 Linux,OS X,BSD,而且不需要任何的外部依赖,Linux和OS X是Redis开发和测试最多的两个操作系统,建议使用LInux系统部署,Windows版本没有官方支持。
官网:https://redis.io
可以看出redis和mysql有非常大的区别,主要体现在数据结构
和存储方式
上。
mysql是关系型数据库,存储数据前必须明确定义表结构和数据类型
,数据之间可以存在关联关系,
而redis中并不需要提前定义数据模型,随时可以添加新的结构到数据库中,redis也不能维护数据间的关系;
非关系型数据库优势: