Redis 概念

泪湿孤枕 提交于 2020-03-17 01:58:06

Redis是什么

Redis是一个使用C语言编写的key-value开源的NOSQL存储系统。
(MySQL以二维表格的形式存储)。

NoSQL适用场景

  • 对数据的高并发读写
  • 对数据的高可扩展性
  • 快速存取数据

NoSQL不适用场景

  • 不支持事务
  • 不支持基于sql的结构化查询存储,处理复杂的关系

NoSQL数据库举例

memcache

  • 很早出现的NoSql数据库,数据都在内存中。
  • 一般不持久化支持简单的key-value模式。
  • 一般是作为缓存数据库辅助持久化的数据库。

redis

  • 几乎覆盖了Memcached的绝大部分功能。
  • 数据都在内存中。
  • 支持持久化,主要用作备份恢复。
  • 支持简单的key-value模式。
  • 还支持多种数据结构的存储,比如 list、set、hash、zset等。
  • 一般是作为缓存数据库辅助持久化的数据库。
  • 现在市面上用得非常多的一款内存数据库。

mongoDB介绍

  • 高性能、开源、模式自由(schema free)的文档型数据库数据都在内存中, 如果内存不足,把不常用的数据保存到硬盘。
  • 虽然是key-value模式,但是对value(尤其是json)提供了丰富的查询功能。
  • 支持二进制数据及大型对象可以根据数据的特点替代RDBMS(关系数据库管理系统) ,成为独立的数据库。或者配合RDBMS,存储特定的数据。

列式存储HBase

  • HBase是Hadoop项目中的数据库。
  • 它用于需要对大量的数据进行随机、实时的读写操作的场景中。
  • HBase的目标就是处理数据量非常庞大的表,可以用普通的计算机处理超过10亿行数据,还可处理有数百万列元素的数据表。

redis的特点

  • 高效性:Redis读取的速度是110000次/s,写的速度是81000次/s
  • 原子性:Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。
  • 支持多种数据结构:string(字符串);list(列表);hash(哈希),set(集合);zset(有序集合)
  • 稳定性:持久化,主从复制(集群)
  • 其他特性:支持过期时间,支持事务,消息订阅。
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!