recherche

Maison  >  Questions et réponses  >  le corps du texte

关于 mongodb 和 elasticsearch 结合使用

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

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

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

PHPzPHPz2765 Il y a quelques jours612

répondre à tous(1)je répondrai

  • ringa_lee

    ringa_lee2017-04-24 09:13:34

    1. Si la recherche est terminée dans elasticsearch, il n'est pas nécessaire d'indexer les titres ou les balises dans mongodb. L'ID de l'article doit être indexé par défaut, si vous utilisez le champ _id
    2. Vous pouvez utiliser la requête {_id: {$in: [ size id array] }} pour obtenir la taille des documents à la fois.

    répondre
    0
  • Annulerrépondre