1、什么是Nosql?
2、为什么要使用NoSql ?
3、NoSql数据库的优势
4、常见的NoSql产品
1、什么是Nosql?
![](https://img-blog.csdnimg.cn/e7f302a6600f47f48fcdb102d72f900a.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yid5bCY5bG_6aOO,size_18,color_FFFFFF,t_70,g_se,x_16)
NoSQL
,泛指非关系型的数据库。随着互联网
web2.0
网站的兴起,传统的关系数据库在处理
web2.0
网站,特别是超大规模和高并发的
SNS
类型的
web2.0
纯动态网站已经显得力不从心,出现了很多难以克服的问题,而非关系型的
数据库则由于其本身的特点得到了非常迅速的发展。
NoSQL
数据库的产生就是为了解决大规模数据集合,多重数据
种类带来的挑战,尤其是大数据应用难题。
NoSQL
最常见的解释是
“non-relational”
,
“Not Only SQL”
也被很多人接受。
NoSQL
仅仅是一个概念,泛指
非关系型的数据库
,区别于关系数据库,它们不保证关系数据的
ACID
特性。
2、为什么要使用NoSql ?
![](https://img-blog.csdnimg.cn/10b0df2a233f46a1af798f834ce6e953.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yid5bCY5bG_6aOO,size_20,color_FFFFFF,t_70,g_se,x_16)
在
90
年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付。在那个时候,更多的都是 静态网页,动态交互类型的网站不多。
到了最近
10
年,网站开始快速发展。火爆的论坛、博客、
sns
、微博逐渐引领
web
领域的潮流。在初 期,论坛的流
量其实也不大,如果你接触网络比较早,你可能还记得那个时候还有文本型存储的论坛程 序,可以想象一般的论坛
的流量有多大。
传统的数据库遇到的
瓶颈
传统的关系数据库具有不错的性能,高稳定型,久经历史考验,而且使用简单,功能强大,同时也积累 了大量的成功案例。在互联网领域,
MySQL
成为了绝对靠前的王者,毫不夸张的说,
MySQL
为互联网 的发展做出了卓越的
贡献。
3、NoSql数据库的优势
![](https://img-blog.csdnimg.cn/f6d51608799f4e3b9e906b3110c82653.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yid5bCY5bG_6aOO,size_20,color_FFFFFF,t_70,g_se,x_16)
(1)
易扩展
NoSQL
数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性。
数据之间无关系
,这样就非常容易扩展。也无形之间,在架构的层面上带来了可扩展的能力。
(2)
大数据量,高性能
NoSQL
数据库都具有非常高的读写性能,尤其在大数据量下,同样表现优秀。这得益于它的无关系性, 数据库的结构简单。一般
MySQL
使用
Query Cache
,每次表的更新
Cache
就失效,是一种大粒度的
Cache
,在针对
web2.0
的交互频繁的应用,
Cache
性能不高。
NoSQL
的
Cache
是记录级的,是一种细 粒度的
Cache
,所以
NoSQL
在这个层面上来说就要性能高很多了。
(3)
灵活的数据模型
NoSQL
无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式。而在关系数据库里,增删 字段是一件非常麻烦的事情。如果是非常大数据量的表,增加字段简直就是一个噩梦。这点在大数据量 的
web2.0
时代
尤其明显。
(4)
高可用
NoSQL
在不太影响性能的情况,就可以方便的实现高可用的架构。比如
Cassandra
,
HBase
模型,通过 复制
模型也能实现高可用。
4、常见的NoSql产品
![](https://img-blog.csdnimg.cn/aba7a61e24df48d0998940165f50cc6a.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yid5bCY5bG_6aOO,size_20,color_FFFFFF,t_70,g_se,x_16)