MongoDB庖丁解牛(NoSQL理论)

  • A+
所属分类:MongoDB 数据库

部分理论摘自:

http://www.lanceyan.com/

NoSQL的优势

大数据量:可以通过廉价服务器存储大量的数据,轻松摆脱传统mysql单表存储量级限制。

高扩展性:Nosql去掉了关系数据库的关系型特性,很容易横向扩展,摆脱了以往老是纵向扩展的诟病。

高性能:Nosql通过简单的key-value方式获取数据,非常快速。还有NoSQL的Cache是记录级的,是一种细粒度的Cache,所以NoSQL在这个层面上来说就要性能高很多。

灵活的数据模型,NoSQL无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式。而在关系数据库里,增删字段是一件非常麻烦的事情。如果是非常大数据量的表,增加字段简直就是一个噩梦。

高可用:NoSQL在不太影响性能的情况,就可以方便的实现高可用的架构。比如mongodb通过mongos、mongo分片就可以快速配置出高可用配置。

MongoDB介绍

在nosql数据库里,大部分的查询都是键值对(key、value)的方式。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中最像关系数据库的。支持类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。所以这个非常方便,我们可以用sql操作MongoDB,从关系型数据库迁移过来,开发人员学习成本会大大减少。

MongoDB是一种文件导向数据库,由C++撰写而成,效率你懂得!2007年10月,MongoDB由10gen团队所发展。2009年2月首度推出。

在段段的6年间,使用排行榜荣登第四,用户正在持续增长。 目前官方最新版本 MongoDB
3.2,支持WiredTiger存储引擎,支持数据缓存/压缩文件,下面开始一点点了解MongoDB的知识!

NoSQL优势、劣势

NoSQL

非关系型数据库

分布式

不提供ACID

优势

1、避免不必要的复杂性

2、高吞吐量,适合现在的web 2.0环境

3、高水平扩展能力和低端硬件集群

4、不使用对象-关系映射

劣势

不支持ACID

功能简单

没有统一的数据查询模型

YaLei

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: