odniesienie http://mongodb.github.io/node-mongodb -native/2.0/tutoriale/streams/ możesz przesyłać strumieniowo wyniki jeden po drugim i tworzyć tablice identyfikatorów.
var MongoClient = require('mongodb').MongoClient
var url = 'mongodb://localhost:27017/myproject';
// Use connect method to connect to the Server
MongoClient.connect(url, function(err, db) {
console.log("Connected correctly to server");
var col = db.collection('terms');
var ids = []
var findCursor = col.find({term_id: {'$in': flatTree}});
findCursor.on("data", function(data) {
ids.push(data._id)
});
findCursor.on("end", function(data) {
// let's finish
console.log(ids)
});
});
nie sprawdzałem czasu, ale na pewno powinien być krótszy (termsCol.find:0,162ms +termsCol.toArray:30.910ms)