一.单机数据库的瓶颈
1.数据量总大小一个机器放不下
2.数据的索引(B+TREE)一个机器放不下的时候
3.访问量(混合读写)一个实例不能承受
二.什么是NoSql
NoSql(Not Only SQL)-- 不仅仅是SQL 泛指非关系型的数据库。
NoSql的产生是为了解决大规模数据集合多重数据种类的挑战,尤其是大数据引用难题,包括超大规模数据存储。
例如谷歌每天为他们的用户收集万亿比特的数据,这些类型的数据存储不需要固定的模式,无需多余的操作就可以横向扩展。
三.特点
易扩展:NoSql数据库种类繁多,但是一个共同的特点是去掉了关系数据库的关系型特性。数据之间无关系,这样就非常容易扩展也无形之间在架构的层面上带来了可扩展的能力。
多样灵活的数据类型:无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式。
没有声明性的查询语言
没有预定义的模式
键值对存储,列存储,文档存储,图形数据库
最终一致性,而非ACID属性
非结构化和不可预知的数据
CAP原则是NOSQL数据库的基石:Consistency(一致性)。 Availability(可用性)。Partition tolerance(分区容错性)
高性能,高可用性和可伸缩性