Redis从入门到实战(一Redis简介)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis从入门到实战(一Redis简介)相关的知识,希望对你有一定的参考价值。
⭐ 作者简介:码上言
⭐ 代表教程:Spring Boot + vue-element 开发个人博客项目实战教程
⭐专栏内容:Redis从入门到实战、个人博客系统
文章目录
在学习redis之前,我们先学习一下NoSQL。
1、NoSQL
1.1、什么是NoSQL?
NoSQL概念在2009年被提了出来。NoSQL最常见的解释是“non-relational”,“Not Only SQL”也被很多人接受(“NoSQL”一词最早于1998年被用于一个轻量级的关系数据库的名字)。NoSQL被我们用得最多的当数key-value存储,当然还有其他的文档型的、列存储、图型数据库、xml数据库等。
很多的数据类型用户的个人信息,社交网络,地理位置。这些数据类型的存储不需要一个固定的格式! 不需要多月的操作就可以横向扩展的 ! Map<String, Object>使用键值对来控制!
1.2、NoSQL 特点
- 易扩展
NoSQL 数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性。
数据之间无关系,这样就非常容易扩展,也无形之间,在架构的层面上带来了可扩展的能力。
- 大数据量高性能
NoSQL数据库都具有非常高的读写性能,尤其是在大数据量下,同样表现优秀。这得益于它的非关系 性,数据库的结构简单。
一般mysql使用Query Cache
,每次表的更新Cache就失效,是一种大力度的Cache
,在针对Web2.0的 交互频繁应用,Cache性能不高,而NoSQL
的Cache是记录级的,是一种细粒度的Cache,所以NoSQL 在这个层面上来说就要性能高很多了。
官方记录:Redis 一秒可以写8万次,读11万次!
- 多样灵活的数据模型
NoSQL无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式,而在关系数据库里,增删字段是一件非常麻烦的事情。如果是非常大数据量的表,增加字段简直就是噩梦。
1.3、分类
分类 | 例子 | 应用场景 | 数据结构 | 优点 | 缺点 |
键值(key - value) | Tokyo Cabinet/Tyrant,Redis,Oracle | 内存缓存,主要用于处理大量数据的高访问负载,也用于一些日志系统等等。 | key指向value的键值对,通常用hash table来实现 | 查找速度快 | 数据无结构化,通常只被当作字符串或者二进制数。 |
列存储数据库 | Cassandra,HBase,Riak | 分布式的文件系统 | 以列簇式存储,将同一列数据存在一起 | 查找速度快,可扩展性强,更容易进行分布式扩展。 | 功能相对局限 |
文档型数据库 | CouchDB,MongoDb | Web应用(与Key-Value类似,Value是结构化的,不同的是数据库能够了解Value的内容) | Key-Value对应的键值对,Value为结构化数据 | 数据结构要求不严格,表结构可变,不需要想关系型数据库一样需要预先定义表结构 | 查询性能不高,而且缺乏统一的查询语法。 |
图形数据库 | Neo4J,InfoGrid,Graph | 社交网络,推荐系统等,专注于构建关系图谱 | 图结构 | 利用图结构相关算法。比如最短路径寻址,N度关系查找。 | 这种结构不太好做分布式的集群方案 |
以上是关于Redis从入门到实战(一Redis简介)的主要内容,如果未能解决你的问题,请参考以下文章