[Redis入门到精通day01]NoSQL引入redis

Redis入门到精通day01

一、NoSQL引入redis

1.mysql发展史

  • 单机MySQL

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lbeHd038-1595725513595)(D:\学习笔记\redis\imgs\单机mysql.jpg)]

​ 数据访问量不大,单一数据库足以应付访问,大量网站都是静态数据无序动态交互

​ 随着发展存在以下问题

​ 1、数据量逐渐增多,一个机器放不下

​ 2、数据索引(B + Tree)也放不下

​ 3、访问量过大,读写会导致实例down机

  • MemCached(缓存也就是redis)+Mysql+垂直拆分

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-P3umS72K-1595725513601)(D:\学习笔记\redis\imgs\缓存+mysql.jpg)]

    1、通过增加一个缓存中间件来读取,减少数据库压力

    2、将单个Mysql拆解成多个,缓解单个压力

  • mysql读写分离

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PL3LLNL0-1595725513603)(D:\学习笔记\redis\imgs\读写分离.jpg)]

    设置主从库,写入操作放在主库,读操作从从库中分库读取

  • mysql集群

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NzrqMPHs-1595725513608)(D:\学习笔记\redis\imgs\集群.jpg)]

    1、随着数据量增多,使用mysql集群

大数据时代到来,传统型数据库无法支持现在业务的发展

所以引入了NoSQL,NoSQL泛指非关系型数据库,这中数据库存储不需要固定的模式,可以直接进行横向扩展

2.NoSQL简介

关系型数据库:ACID

原子性、一致性、隔离性、持久性

非关系型数据库:最终一致性

key-value存储

CAP定理

1.特征

  • 易扩展

    去掉关系型特征,使得数据之间没有联系,容易扩展

  • 大数据量,高性能

    无关系型,数据库结构非常简单

  • 多灵活数据模型

    无序为要存库的数据建立字段,随时可以存储自定义数据格式

KV+Cache+Persistence

3V+3高:

​ 大数据3V:海量(Volume)+多样(Variety)+实时(Velocity)

​ 互联网3高:高并发,高可扩,高性能

3.NoSQL数据模型

聚合模型

  • KV键值

  • Bson

  • 列族

  • 图形

4.分布式数据库中的CAP原理

传统ACID

  • A原子性Atomicity

  • C一致性consistency

  • I独立性Isolation

  • D持久性Durability

NoSql数据库CAP

  • C强一致性consistency
  • A可用性Availability
  • P分区容错性Partition tolerance

CAP只能3进2,而在分布式存储系统中,必须满足P

CA 传统oracle数据库/AP大多数网站架构都是AP/CPRedis/Mongodb

5.分布式和集群概念

简单来讲:
1分布式:不同的多台服务器上面部署不同的服务模块(工程),他们之间通过Rpc/Rmi之间通
信和调用,对外提供服务和组内协作。
2集群:不同的多台服务器上面部署相同的服务模块、通过分布式调度软件进行统一的调度,对
外提供服务和访问。

猜你喜欢

转载自blog.csdn.net/qq_41522089/article/details/107589041