前言
学习之初,首先要认识一个技术的优点,明白他是什么?他能干什么?
NoSQL
NoSQL最常见的解释是“non-relational”,Not Only SQL也被很多人接受。NoSQL仅仅是一个概念,泛指非关系型的数据库,区别于关系数据库,它们不保证关系数据的 ACID。
特性
- 易扩展
数据之间无关系,这样就非常容易扩展。 - 大数据量、高性能
一般MySQL使用Query Cache。NoSQL的Cache是记录级的。性能更优秀。 - 灵活的数据类型
NoSQL无须事先为要存储的数据建立字段,随时可以存储自定义的数据格式。 - 高可用
NoSQL分类
Redis是什么?
- Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写
- 总的说:它是一个高性能的键值数据库。是当前最热门的的的NoSql数据库之一。
- 可用于缓存,事件发布或订阅,高速队列等场景。支持网络,提供字符串,哈希,列表,队列,集合结构直接存取,基于内存,可持久化。并提供多种语言的API。
为什么需要使用Redis?
1、高性能
- mysql是持久化的数据库,数据写到内存中,涉及到频繁的IO流操作,读写数度慢
- Redis数缓存类数据库用于存储使用频繁的数据,这样减少访问数据库的次数,提高运行效率
- 相对于MySQL读写速度来说,Redis的读写性能是相当彪悍的
- 官方给出的数据是:读的速度是110000次/s,写的速度是81000次/s
2、数据类型丰富
- redis提供五种数据类型:string,hash,list,set及zset(sorted set)。