首页 > 关于 mongodb 和 elasticsearch 结合使用

关于 mongodb 和 elasticsearch 结合使用

假设我需要根据标题和标签来搜索文章。

  1. 索引问题
    在 elasticsearch 中对文章的标题和标签进行索引之后,是否有必要在 mongodb 中对文章的标题和标签进行索引?因为在 elasticsearch 中可以得到文章的 id ,然后可以直接使用文章的 id 进行查询,这种情况下是不是只对文章 id 进行索引就可以了?

  2. 分页问题
    在不是用 elasticsearch 的时候,我是用 这里的方法 实现分页的。实现起来比较繁琐,因为需要拿到 currentId 和 currentPage 才能进行分页。
    如果用 elasticsearch 之后,可以直接通过 from / size 实现分页,但它会返回 size 个 id,然后再通过 mongodb 进行 size 次查询。也就是一次分页会有 size 次查询。原来的方法应该只有一次查询。不知道哪种方法会比较好?


  1. 如果搜索是在elasticsearch内完成,则无需再在mongodb里对标题或标签做索引。文章id应该默认就有索引,如果你用的是_id字段
  2. 你可以用 {_id: {$in: [ size 个 id 数组] }}查询 来一次得到size个文档。
【热门文章】
【热门文章】