MongoDB 2.0的亮点

亮点一 数据压缩

跑过MongoDB一段时间的管理员都会奇怪,这个家伙怎么这么吃硬盘。大家在各自 的实践中总结了各种最佳实践来应对这种永无止境的硬盘吞噬。比如手工的导入 导出,或者利用复制组的自动恢复特性,定期人为制造故障,来强迫系统进行故 障恢复,来达到导入导出的目的。MongoDB对于硬盘的利用率的确不高,这也是广 泛遭到诟病的一点。新的MongoDB 2.0有了campact命令,用来解决这一问题。看 上去有点像做磁盘碎片整理的程序。会不会也很慢呢?很不幸,还是会很慢,不过 好在不需要导入导出所要求的那么多的空间。所以还是要在备份节点执行,还得 选择负载不高的时刻执行。不过后来想想,叫做压缩不如叫做碎片整理更加准确。

 

亮点二 索引

索引原来就有,而且数据量少的话,根本感觉不到这东西需要提高性能。呵呵, 开玩笑了,线上的业务哪个数据量能少呢。新版的索引据称效率提高25%,体积减 少25%。这是个相当不错的消息,管理员尽管用就是了,没什么好犹豫的。只是从 原有的系统升级到2.0并不能自动利用新版索引。需要强制重建索引才行。不过, 管理员要是执行了上面的campact命令的话,会附带重建指定的索引。

 

亮点三 复制组节点的优先级

原来很多人都问我,复制组中的某台机器恢复过来了,怎么继续让它成为活跃节 点(primary)。很不幸,以前没啥好办法。优先级的设定非常重要,尤其是对大型 集群,能够避免负载传递这种连锁反应。优先级高的节点一旦与最新的数据同步, 则会触发选举,并在选举中胜出。很实用吧。

 

其他

增加了对多边形区域的支持,以及多个地点的支持。LBS相关的应用会觉得这个功 能非常贴心。

MapReduce性能有大幅提升,去掉了一些不必要中间转换过程。

  1. 还没有评论

  1. 还没有引用通告。