如何使用Elasticsearch查询多个集合

时间:2020-04-06 05:46:06

标签: node.js mongodb elasticsearch mongodb-query elasticsearch-indices

数据库:MongoDB, 服务器:Nodejs

我的MongoDB数据库中大约有10个集合,我能否使用Elasticsearch同时查询这些集合并返回适当的结果?

用户发送的示例查询

  • 对所有收藏集中最新创建的帖子进行分类
  • 对所有馆藏进行全文搜索

2 个答案:

答案 0 :(得分:1)

如果您使用的Elasticsearch版本低于6.X,则单个Elasticsearch索引中可以有多种类型(您的情况下是集合)。

例如,如果twitter是您的索引,则可以在单个elasticsearch索引中包含tweetsusersemployeesuser-profiles等。在twitter索引中进行搜索将在内部搜索所有这些类型。

但是,如果您使用的Elasticsearch索引大于6.X,并且使用不同的索引来存储这些集合,那么可以按照Elasticsearch文档中的说明在查询中使用multiple indices

答案 1 :(得分:0)

您可以为每个集合创建单独的索引,并使用aliases查询所有索引。

关于查询所有集合中最新创建的帖子,取决于您的用例,您可以为每个集合使用单个索引,也可以按天/月创建索引以对数据进行分区。