MongoDB是一款强大、灵活,且易扩展的通用型数据库,其包含以下设计特点
1.1易于使用
与关系型数据库不同的是,它没有table/rows/records,相反采用更为灵活的文档(document);另外不在预定义模式,即没有数据类型、长度的限制,文档的key跟value不再受这些约束,即添加、删除更容易
1.2易于扩展
MongoDB采用横向扩展,即横向扩展机器。顺带提一下,纵向扩展是加大单机的配置,但始终会出现单机负载不了业务的时候。那横向扩展只需要向集群添加新机器,Mogondb就会自动将现有数据向新服务器传送
1.3丰富的功能
处理能够创建、读取、更新、删除以外,还提供其他不断扩展的功能:索引、聚合、特殊的集合类型(如某个时刻过期的sesssion、也支持固定大小的集合,用于保存近期的数据,如日志)、文件存储
但mongodb并不具备存在于关系型数据中的一些功能,如:jon和复杂的事务,因为在分布式的系统中这两个功能难以高效的实现