初识NoSQL

NoSQL 介绍

NoSQL,即not only sql,泛指非关系型数据库

  • 关系型数据库,保证数据的完整性、关联性
    id   name   age   salary
  • 非关系型数据库,不保证数据的完整性、关联性,对数据的读写操作效率高
    保证键值存储:key=>value
    set name value
    get name

NoSQL 数据库分类

键值数据库:Redis、Memcache
列表型数据库:HBase(java)
文档型数据库:MongoDB

Redis 介绍

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,提供多种语言的API。

意大利工程师,2000年左右,开发一个项目需实时统计,但MySQL读写性能差,便决定自己写一个数据库。为了提升读写速度,在内存中开辟一块空间进行读写,从而提升了读写数据的效率,后来得到VMware赞助。

Linux系统 —>内存(Redis读写)—>磁盘(文件)—>连接mysql数据库 —> 读写表

Redis 应用场景

由于Redis是基于内存存储的,所以对读写效率要求高,且数据量小的建议使用Redis存储
例如:

  • 缓存字符串(数据量少)
  • 任务队列(订单生成)
  • 排行榜程序(sorted set有序集合)
  • 分布式环境下session存储
    image
原文地址:https://www.cnblogs.com/writerW/p/8933130.html