MongoDB 2.5 将提供新的查询引擎
查看次数3501 发表时间2013-05-30 10:07:23
MongoDB 2.5.0(开发版本)中,包含了一个新的查询引擎实现。查询引擎主要的工作是通过查询条件,查询到匹配的数据。当然,这其中包括对索引的使用。现有的查询引擎在MongoDB发布的4年以来基本没有进行什么变更。... |

MongoDB 2.5.0(开发版本)中,包含了一个新的查询引擎实现。查询引擎主要的工作是通过查询条件,查询到匹配的数据。当然,这其中包括对索引的使用。
现有的查询引擎在MongoDB发布的4年以来基本没有进行什么变更。它最大的问题是缺乏扩展性,也没有查询优化的功能(我们知道,MongoDB的查询优化实际上是通过试错的方式来做的)。
在2.5.0版本中,查询引擎被完全重写,它包括三个独立的部分:
- 一个语法树(AST:abstract syntax tree)模块,用于解析查询语句
- 一个解析模块,将BSON的查询条件解析成AST
- 一个完全重写的查询API层,其功能和现有的查询模块类似
另外利用新的查询引擎,还可以实现一些更高级的查询,比如查询出 a == b + c 的记录。以后你可以这样写:{ a : { $sum : [ “$b” , “$c” ] } })。这样的功能对新的查询引擎来说很容易实现。
新的查询引擎目前已经重写完成并且可以测试了。如果你有兴趣测试测试,可以下载最新的2.5.0版本试玩。
下载地址:http://mongodb.org/downloads
相关代码都在Github上面:
Via blog.mongodb.org & NoSQLFan
(转发请注明转自:学PHP)
相关推荐
- “互联网女皇”2013年趋势报告:移动增势迅猛 (2013-05-30 10:07:23)
- Rails 老漏洞仍在肆虐,请尽快升级 (2013-05-30 13:07:33)
- 2013年度中国优秀开源项目征集活动正式启动 (2013-05-30 14:07:24)
- MIT 实验室开源相对论游戏引擎 OpenRelativity (2013-05-30 17:07:24)
- Linux Mint 15发布,关注度第1的Linux发行版 (2013-05-30 17:07:25)
- 互联网女皇报告:移动设备仍有3-4倍的发展空间 (2013-05-30 09:49:53)
- json2html:将JSON对象转换为HTML (2013-05-29 18:07:41)
- 搭载 Blink 引擎的 Opera 浏览器亮相 (2013-05-29 17:07:36)
- 未来苹果将向第三方开发者开放API (2013-05-29 17:07:36)
- 你不需要遵守的 7 个敏捷开发最佳实践 (2013-05-29 16:07:50)
发表评论