一、简介
       
        1.丰富的数据类型
        MongoDB是一种非关系型数据库,是面向文档的数据库。
        MongoDB没有模式,文档的键不会事先定义,也不会固定不变,由于 没有模式需要修改,通常不需要迁移大量数据,应用层可以处理新增和丢失的键,这样开发者可以非常容易的变更数据模型。
        

2.容易扩展

        MongoDB从最初设计的时候就考虑到了扩展的问题,它所采用的面向文档的数据模型,使其可以自动在多台服务器之间分割数据。它还可以平衡集群的数据和负载,自动重排文档。这样开发者就可以专注于编写应用,而不是考虑如何扩展,要是需要更大的容量,只需在集群中添加数据,然后让数据库处理剩下的事情。
        
        3.丰富的功能
 
         ■ 索引:MongoDB支持通用辅助索引,能进行多种快速查询。
         ■ 存储JavaScript:开发人员不必使用存储过程了,直接在服务端存取JavaScript的函数和值
         ■ 聚合:支持MapReduce和其他聚合工具
         ■ 固定集合:集合的大小是有上限的
         ■ 文件存储:支持用一种容易使用的协议存储大型文件和文件的元数据
 
        4.不牺牲速度
 
        卓越的性能是MongoDB的主要目标。MongoDB使用MongoDB协议作为与服务器交互的主要方式(预与之对应的协议需要更多的开销,如HTPP/REST)。它对文档进行动态填充,预分配数据文件,用空间换取性能稳定。默认的存储引擎使用了内存映射文件,将内存管理工作交给操作系统区处理。动态查询优化器会记住执行查询的最高效方式。
 
        5.简便的管理
 
        MongoDB尽量让服务器自治来简化数据库的管理,除了启动数据库服务器之外,几乎没有什么必要的操作。如果主服务器挂掉了,MongoDB会自动切换到备份服务器,并且将备份服务器提升为活跃服务器。在分布式环境下,集群只需要知道新增加的节点,就会自动集成和配置新节点。
 
        
         

最新文章

  1. C# uploadify 上传 -220 IO Error 问题
  2. 递归O(NlgN)求解逆序数
  3. [译]C#控制管理VisualSVN Server
  4. ASP.NET MVC - 发布网站
  5. Jenkins学习之——(3)将项目发送到tomcat
  6. UML造型——使用EA时序图工具的开发实践和经验
  7. http服务详解(1)——一次完整的http服务请求处理过程
  8. loadrunner 场景设计-学习笔记之性能误区
  9. Jenkins 之邮件配置
  10. js基础学习笔记(零七)
  11. mysql 客户端
  12. November 28th 2016 Week 49th Monday
  13. font(字体)所使用的属性
  14. 只有父类的init方法才有创建servletConfig与servletContext的能力
  15. java图形用户界面练习。j2se
  16. eval()解析json以及js中js数组、对象与json之间的转换
  17. Edu 0空投合约源码
  18. Express定制参数解析错误响应值
  19. 大话Spark(2)-Spark on Yarn运行模式
  20. spring data jpa封装specification实现简单风格的动态查询

热门文章

  1. es5 api
  2. android小知识之圆角ListView
  3. Making your first driver - complete walkthrough(使用VisualDDK)
  4. webp 初探
  5. OpenStack安装部署管理中常见问题解决方法
  6. HDU 5818 Joint Stacks(左偏树)
  7. HDU 5729 Rigid Frameworks(连通性DP)
  8. javascript - Show mouse cursor in phantom.js - Stack Overflow
  9. C标准中一些预定义的宏
  10. 【转】Linq实现DataTable行列转换