MongoDB 2.4的发布说明
MongoDB 2.4包括增强的地理空间支持、切换到V8 JavaScript引擎、安全增强以及文本搜索(测试版)和散列索引。
主要新功能
MongoDB的以下变化同时影响标准版和企业版:
文本搜索
添加对MongoDB数据库中内容文本搜索的支持作为测试版功能。有关更多信息,请参阅文本索引。
地理空间支持增强功能
- 添加新的2dsphere索引。新指数支持GeoJSON对象
Point
、LineString
和Polygon
。请参阅2dsphere
索引和地理空间查询。 - 介绍运营商
$geometry
、$geoWithin
和$geoIntersects
来处理GeoJSON数据。
哈希索引
使用字段值的散列将新的哈希索引添加到索引文档中。当用于索引碎片键时,散列索引确保了均匀分布的碎片键。参见:Hashed Sharding。
汇总框架的改进
- 改进对地理空间查询的支持。查看
$geoWithin
运算符和$geoNear
管道阶段。 - 当
$sort
阶段紧接管道中的$limit
之前时,提高排序效率。 - 添加新的运算符
$millisecond
和$concat
,并修改$min
运算符处理null
值的方式。
更新运算符的更改
对地图,减少和附加限制$where
操作
的mapReduce
命令,组命令,并且$where
操作者的表达式不能访问某些全局功能或性质,例如db
,即在可用mongo
的shell。有关详细信息,请参见各个命令或运算符。
serverStatus
命令的改进
serverStatus
命令提供额外的指标和自定义。有关更多信息,请参阅db.serverStatus()
和serverStatus
。
安全增强功能
- 引入基于角色的访问控制系统用户权限现在为
Privilege Documents
使用一种新格式。 - 在每个数据库的用户特权文档中强制用户的唯一性。MongoDB的先前版本没有执行此要求,现有数据库可能有副本。
- 使用由aCertificate Authority签名的SSL证书支持加密连接。请参阅为TLS/SSL配置
mongod
和mongos
。
有关安全和风险管理策略的更多信息,请参阅MongoDB安全实践和程序。
性能改进
V8 JavaScript引擎
将默认JavaScript引擎从SpiderMonkey更改为V8。该更改改进了JavaScript操作的并发性,现代化了JavaScript实现,并删除了非标准SpiderMonkey功能,并影响了所有JavaScript行为,包括命令mapReduce
,团体,以及eval
和查询运算符$where
。
有关所有更改的更多信息,请参阅MongoDB 2.4中的JavaScript更改
默认情况下为mongod
启用BSON文档验证mongorestore
mongod
启用基本的BSON对象验证mongorestore
写入MongoDB数据文件时。有关详细信息,请参阅wireObjectCheck
。
索引构建增强功能
- 通过单个
mongod
实例在后台添加对多个并发索引构建的支持。有关背景索引构建的更多信息,请参阅后台构建索引。 - 允许
db.killOp()
方法终止前台索引构建。 - 改进索引创建期间的索引验证。有关更多信息,请参阅MongoDB 2.4中的兼容性和索引类型更改。
将参数设置为命令行选项
提供--setParameter
作为mongos
和mongod
命令行选项。setParameter
可用选项的列表,请参阅mongod
和mongos
。
更改了块迁移的复制行为
默认情况下,在分片集群中的块迁移期间,每个文档在均衡器进行下一次操作之前,都会传播到至少一个次要的次要。请参阅范围迁移和复制。
改进了块迁移队列行为
提高从超载碎片上移动多个块的性能。平衡器不再等待当前迁移的删除阶段完成,然后开始下一个块迁移。有关详细信息,请参阅同步范围迁移清理。
企业
以下更改是MongoDB企业版特有的:
SASL库更改
在2.4.4中,MongoDB Enterprise使用Cyrus SASL。早期的2.4 Enterpriseversions使用GNU SASL(libgsasl
)。要升级到2.4.4 MongoDBEnterprise或更高版本,您必须安装与此更改相关的所有软件包依赖项,包括适当的Cyrus SASL GSSAPI
库。有关依赖项的详细信息,请参阅安装MongoDB Enterprise。
支持Kerberos的新模块化身份验证系统
在2.4中,MongoDB Enterprise现在支持通过aKerberos机制进行身份验证。有关更多信息,请参阅在Linux上使用Kerberos身份验证配置MongoDB。对于支持向MongoDB进行Kerberos身份验证的驱动程序,请参阅驱动程序支持。
有关安全和风险管理策略的更多信息,请参阅MongoDB安全实践和程序。
其他信息
平台说明
对于macOS,MongoDB 2.4仅支持macOS 10.6版本(Snow Leopard)及更高版本。MongoDB 2.4中没有其他平台支持更改。请参阅下载页面了解有关平台支持的更多信息。
升级流程
有关完整的升级说明,请参阅将MongoDB升级到2.4。
其他资源
- MongoDB下载。
- 所有JIRA问题都在2.4中得到解决)。
- 所有向后不兼容的更改 AND "Backwards Compatibility" in ("Major Change"%2C"Minor Change" ) 。
- 所有第三方许可通知。
译者:韩鹏帅 参见