Redis 6 笔记详解

一、NoSQL数据库概述

技术发展的阶段划分

在介绍Redis之前,我们先了解技术发展的几个关键阶段及其解决的主要问题:

1. 解决功能性问题:如Java、JSP、RDBMS等技术实现基本的应用功能需求。

2. 解决扩展性问题:技术扩展如Struts、Spring、Hibernate等,帮助开发者管理应用程序。

3. 解决性能问题:用户量增长催生了NoSQL数据库、Java线程、Hadoop等技术。

Web时代的变迁
  • Web1.0时代:数据访问量有限,单点服务器满足需求。
  • Web2.0时代:用户急剧增长,推动NoSQL等技术的发展。

二、NoSQL数据库特点与适用场景

NoSQL数据库的特点
  • 非依赖于SQL标准:不同查询语言和数据模型。
  • 非支持ACID特性:牺牲一致性以换取扩展性和性能。
  • 高性能:在大规模数据读写操作中表现优异。
NoSQL数据库适用场景
  • 高并发读写:适合处理大量并发请求的应用。
  • 海量数据处理:能高效处理PB级别的数据。
  • 高可扩展性:随着业务增长,易于横向扩展。
NoSQL数据库不适用场景
  • 需要事务支持:强一致性或事务支持不适用。
  • 复杂的查询需求:复杂SQL查询可能无法满足。

三、主流NoSQL数据库介绍

Memcache
  • 简介:Memcache是一个高性能的缓存系统。