1

我目前在集成 ElasticSearch 和 MongoDB 时遇到了问题。本质上,我需要将一些 Mongo 文档转换为与我的 ElasticSearch 查询匹配的可搜索文档。幸运的是,这部分微不足道并得到了照顾。不过我的问题是我需要这个速度很快。比网络时间更快,我真的希望能够索引大约 100 文档/秒,这对于 Mongo 的网络调用是不可能的。

我可以通过使用 ElasticSearch 的批量索引来加快速度,但这只是问题的一半。有没有办法捆绑读取或缓存集合(集合的可管理部分,因为这个集合比我想保留在内存中的要大)来帮助加快速度?我无法真正找到有关此的任何文档,因此,如果您可以将我指向相关文档,我认为这是一个完全可以接受的答案。

我更喜欢使用 Pymongo 的解决方案,但我更乐意使用通过请求或类似的东西直接与 MongoDB 对话的东西。关于如何缓解这种情况的任何想法?

4

1 回答 1

0

pymongo 是线程安全的,因此您可以并行运行多个查询。(我假设您可以以某种方式对文档空间进行分区。)

如果需要在单个线程中处理结果,则将结果提供给本地队列。

于 2014-06-23T02:49:37.613 回答