我正在对MongoDB中的多个条目进行一些复杂的数据处理,首先我要进行map/reduce/finalize,然后我需要执行一些其他逻辑来计算和写入总数和其他在map/redure本身中无法计算的数字。
我已经创建了一个单独的JS函数来运行db.eval()
,它完成了我需要做的事情,但我刚刚发现db.eval()
在MongoDB 3.0中不受欢迎,这对我来说很糟糕,因为我有一个很快升级到3.0的计划,我们真的需要它的新WiredTiger引擎。
我曾将db.cursor.forEach()
函数视为实现类似逻辑的另一种方式,但目前的MongoDB PHP驱动程序似乎不支持它。
所以问题是,在MongoPHP堆栈中执行复杂的每个文档的函数有什么解决办法吗?
Mongo的MapReduce是用JavaScript实现的,聚合框架是基于C++的,对我来说速度更快。你考虑过使用聚合框架吗?