NoSQL数据库简介

社区广播:运维派(Yunweipai.com)是国内最早成立的IT运维社区,欢迎大家投稿,让运维人不再孤寂的成长!

平时大家见到或听到的数据库类型如MySQL、Oracle RDBMS等大多是关系型数据库,使用时会写一些SQL语句来做增删改查,而今天要说的NoSQL数据库,顾名思义就是非关系型数据库,它的出现,就是为了解决关系型数据库存在的一些问题,可以用NoSQL来进行弥补,现在听得比较多的NoSQL数据库有Redis、MongoDB、HBase等。

NoSQL的出现时为了解决关系型数据库的问题,那么关系型数据库有哪些问题呢?

首先就是高并发时的性能问题,当数据库处于高负荷运转时,关系型数据库的性能会遇到瓶颈,这个时候的数据库操作会变得更加的费时,虽然可以使用memcached解决,但是也会带来hash不一致等问题。

然后就是扩展性,当要给数据增加一个字段时,需要更改大量的表结构,这变相地增加了维护成本。

还有就是恢复时速度缓慢,当一个关系型数据库的数据存储很多长文本或者大数据时,恢复数据的过程会变的更缓慢。

而NoSQL的优势就在于解决以上问题,首先当数据之间解除关系依赖后,NoSQL的数据库可以轻易地部署在分布式系统上,这样通过多台机器可以分担单一机器的高负荷,解决高负荷下的性能瓶颈问题。同时,由于数据之间无关系,所以可以随时增加或删除字段。还有,就是因为结构简单,它的反应能力比关系型数据库快多了。

因此NoSQL有着高扩展性、分布式计算、低成本、架构的灵活性、半结构化数据等特点。比如在存储微博信息这种场景下,就是非常适合使用NoSQL数据库。

当然,在挑选数据库时,还是得分具体情况,如果你的业务量小,那么关系型非关系型数据库都随便选,挑自己最顺手的。而当业务量扩大后,就需要分场景处理了,有的业务可能有复杂的数据关联,这种就离不开关系型数据库,而有的地方只是简单的key-value数据,那么就果断地上NoSQL。

作者:果果

文章出处:给产品经理讲技术(订阅号ID:pm_teacher)

网友评论comments

发表评论

电子邮件地址不会被公开。 必填项已用*标注

暂无评论

Copyright © 2012-2017 YUNWEIPAI.COM - 运维派 - 粤ICP备14090526号-3
扫二维码
扫二维码
返回顶部