《Mongodb权威指南》学习笔记 第一章

1.1 丰富的数据模型

Mongodb是面向文档的数据库,不是关系型数据库。放弃关系模型的主要原因就是为了获得更加方便的扩展性。

基本思路是将原来的“行”(row)的概念转换成更加灵活的“文档document”模型。

1.2  容易扩展

Mongodb从最初设计的时候就考虑到了扩展的问题。它所采用的面向文档的数据模型使其可以自动在多台服务器之间分割数据。它还可以平衡集群的数据和负载,自动重排文档。

1.3 丰富的功能

索引

MongoDb支持通用辅助索引,能进行多种快速查询,也提供唯一的、复合的和地理空间索引能力。

存储JavaScript

开发人员不必使用存储过程了,可以直接在服务端存取JavaScript的函数和值

聚合

Mongodb支持MapReduce和其他聚合工具

固定集合

集合的大小是有上限的,这对某些类型的数据(比如日志)特别有用

文件存储

Mongodb支持用一种容易使用的 协议存储大型文件和文件的元数据。

mongodb是不具备连接(join)和复杂的多行事物,因为这两个功能是在很难在一个分布式系统上实现。

1.4 不牺牲速度

Mongodb使用Mongodb传输协议作为与服务器交互的主要方式(与之对应的协议需要更多的开销,如HTTP/REST)。它对文档进行动态填充,预分配数据文件,用空间换取性能的稳定。默认的存储引擎中使用了内存映射文件,将内存管理工作交给操作系统去处理。动态查询优化器会“记住”执行查询最高效的方式。

Mongodb并不是具备所有的关系型数据库的功能。它尽可能地将服务器端处理逻辑交给客户端(由驱动程序或者用户的应用程序处理)

1.5 简便的管理

MongoDB的管理理念就是尽可能地让服务器自动配置,让用户能在需要的时候调整设置(但不强制)



你可能感兴趣的:(nosql,mongodb,mongodb,javascript,文档,服务器,存储,mapreduce)