当前位置: 首页 > 面试题库 >

elasticsearch-查询多个索引是可能的吗?

韶浩博
2023-03-14
问题内容

我有一个带有3个索引的elasticsearch集群

/users/user
/events/visit
/events/register
/pages/page

因此,现在我需要运行处理多个索引的查询。

例如: 获取在页面X中注册的用户的性别。要获取此信息,我需要来自多个索引的信息。

这可能吗?也许整合Hadoop?


问题答案:

在Elasticsearch本身中,这非常容易!任何时候您指定索引时,都可以用逗号分隔其他索引。

curl -XGET 'http://localhost:9200/index1,index2/_search?q=yourQueryHere'

您也可以使用_all搜索所有索引。

curl -XGET 'http://localhost:9200/_all/_search?q=yourQueryHere'

这是来自Elasticsearch网站的一些有用文档。该站点具有大量信息,但IMO有时很难找到。

https://www.elastic.co/guide/zh-CN/elasticsearch/reference/current/search-
search.html



https://www.elastic.co/guide/en/elasticsearch/reference/current/multi-
index.html



 类似资料:
  • 问题内容: 我在同一台Ubuntu服务器上有一个Rails 3应用程序的暂存和生产实例(使用tyre gem)。看来这两个实例都共享相同的elasticsearch索引,这显然不是我想要的。 如何使生产和登台实例使用单独的实例? 问题答案: 您需要覆盖索引名称。假设您要绑定ActiveRecord,它将根据相关模型创建索引名称。您可以使用这样的前缀来调整名称; 然后会创建一个名为的索引,以此类推。

  • 问题内容: 如何在Elasticsearch中按数组索引查询/过滤? 我有一个像这样的文件: 我想搜索 LIN [0] 是否为“ UP”并且 LIN [1]是否 存在。 谢谢。 问题答案: 这看起来可能像hack,但是可以肯定地起作用。首先,我们将令牌计数类型与多字段一起应用以捕获令牌数量作为字段。因此,映射将如下所示- 链接-http: //www.elasticsearch.org/guide

  • 问题内容: 想象一个有多列的表,例如。我通常按​​进行选择,但是,客户端应用程序中有多个查询,它们对列的子集使用各种条件。 当MySQL在多列有多个WHERE条件的单个表上执行查询时,它真的可以利用在不同列上创建的索引吗?还是使其快速的唯一方法是为所有可能的查询创建多列索引? 问题答案: 是的,MySQL可以对单个查询使用多个索引。优化器将确定哪些索引将使查询受益。您可以用来获取有关MySQL如何

  • 我希望使用DynamoDB表来请求我在查询中创建的二级索引。 从现在开始,对于我正在做的一个二级索引: 我会像这样构建我的KeyConditionExpression: 我读了一遍又一遍这份文件,但我不知道怎么做: https://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/gettingstartedguide/GettingStarted.P

  • 我有一个endpoint,我正在将它代理到ElasticSearchAPI中,以进行简单的用户搜索。 有关这些参数的一些详细信息如下 所有参数都是可选的 昵称可以作为全文搜索进行搜索(即'myUser'将返回'myUsername') 电子邮件必须完全匹配 名称可以搜索为每个令牌的全文搜索(即'john'将返回'John Smith') ElasticSearch调用应将参数集体视为AND'd。

  • 我正在通过猫鼬使用MongoDB。 > MongoDB是执行集合扫描还是索引有助于提高查询效率?查询是否与仅使用id字段有任何不同? 如果MongoDB在您查询非索引字段时进行集合扫描。如果集合扫描完全相同,查询多个非索引字段是否会加快查询速度?假设我查询五个非索引字段而不是两个(都返回相同的文档)。两个查询是否都进行相同的集合扫描?