弹性的,mongoosastic为什么只索引集合的一部分

我用mongoosasticmongodb上使用弹性

我的问题是当我做一个集合索引。 Mongoosastic仅索引collections的一部分(例如,我的collections有50,000个文件,但是只有3000个是无效的)。

我使用这个代码来生成文档和索引:

var post, count = 0, countes = 0; for (i = 0; i < 50000; i++) { post = new BlogPost(req.body) post.save(function() { count++; console.log(count + "\n") //res.redirect('/'); post.on('es-indexed', function() { countes++; console.log('document' + countes + ' indexed'); }); }); 

我有点困惑,为什么你使用req.body但我认为你想要做的是:

 var stream = BlogPost.synchronize(); var count = 0; stream.on('data', function(err, doc){ count++; }); stream.on('close', function(){ console.log('indexed ' + count + ' documents!'); cb(null, 'indexed ' + count + ' documents'); }); stream.on('error', function(err){ console.log(err); cb(err, null); }); 

这将通过您现有的BlogPost收集和索引所有这些。