Elasticsearch 数据流选择要搜索的索引

问题描述 投票:0回答:1

使用我们当前的搜索引擎实现,我们会执行以下操作:

  • 按日期范围搜索
    from
    to
    (按
    @timestamp
  • 通过某个前缀获取所有索引(例如
    technical-logs*
  • 仅过滤掉那些应用范围
    from
    to
    的索引(例如,如果
    from=20230101
    to=20230118
    那么我们选择这些范围内带有前缀
    technical-logs-yyyyMMdd
    的所有索引)

数据流似乎对我们有益。我看到的问题是,数据流创建的所有索引默认情况下都是隐藏的,因此我无法看到它们(默认情况下),因此我无法仅查询我感兴趣的那些索引(从-到)。
是否有一些简单的机制可以让我们只选择我们想要的索引,或者 ES 是否有一些功能?我知道有

@timestamp
字段,但我不知道这是否也以某种方式用于过滤出仅包含给定日期的索引。

elasticsearch
1个回答
1
投票

这就是时间序列数据流的全部要点,即您不需要知道要查询哪些索引,您只需查询数据流(即像别名)或其子集

technical-logs*
并且ES将确保只查询满足您的约束的底层索引(从/到时间间隔等)

时间序列数据流使用时间绑定索引。然后,每个支持索引都按 @timestamp

 排序,这样当您搜索特定时间间隔时,ES 将只查询相关的支持索引。

© www.soinside.com 2019 - 2024. All rights reserved.