MongoDB 3.0 更新日志(翻译)
2015-04-02 本文已影响340人
谁又失忆
MongoDB 3.0 更新日志(翻译)
主要变化
- 支持存储引擎选择
API - 增加
WiredTiger存储引擎
WiredTiger支持所有原有的MongoDB功能。切换到该引擎需要改变文档存储结构。具体查看文档.3.0下,副本集中的不同实例可以拥有不用的存储引擎。 -
MMAPv1改进
支持文档级锁;提供no Padding Allocation Strategy,当操作仅是插入或是无增添更新建议使用;
副本集
- 增加一个副本集内实例的上限至50
- 调整
primary下台的操作
-
primary下台前,replSetStepDown会试图终止影响primary下台的用户操作 - 反止操作回滚,
replSetStepDown操作会等待选举出来的second完成状态的复制 -
replSetStepDown操作允许设置secondaryCatchUpPeriodSecs,用于等待second接替primary的时间
分片集群
- 增加
sh.removeTagRenge()命令,方便带tag的分片管理,与sh.addTagRang()对应 -
mongos进行读操作前会,会评估读取操作,做出更加可预测的操作? - 为块迁移操作提供的
writeConcern设置。 -
balancer操作更加可视化,sh.status()会包含balancer的状态信息
增加安全性
一些改进
- 新的
Query的内审系统。为query决策和执行提供更加合理的操作输出以及细粒度的内审 - 增强日志输出
-
MongoDB工具改进
-
mongodump和mongorestore增加新的选项。如:--numParallelCollections用与限制mongoresotre操作时的集合数;--excludeCollection和excludeCollectionWithPrefix用于mongodump操作时排除指定集合 -
mongostore可以直接标准格式的BSON数据 - 通过
--json选项,mongostat和mongotop可以输出JSON格式的结果 -
mongoimport,mongorestore和mongofiles提供--writeConcern选项 -
mongofiles允许你指定GirdFS文件的前缀,用于赛选特定的文件
- 索引
- 后台进行的索引创建,不再会被
dropDatabase,drop和dropIndexes打断,同时会输出错误信息:“background operation is currently running” -
createIndexes执行时,只会扫描集合一遍,只要一个索引在前台建立,所有的索引都会在前台建立
-
Query改进
- 支持big多边形的
query,如$geoIntersects和$geoWithin -
aggregate()操作,提供$dateToString操作用来输出标准化时间字符串 - 增加
$eq操作
- 提供
ssl支持