【问题标题】:Elasticsearch data-stream selecting indices to searchElasticsearch 数据流选择索引进行搜索
【发布时间】:2023-01-19 00:49:06
【问题描述】:

使用我们当前的搜索引擎实现,我们会做类似的事情:

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

数据流似乎对我们有益。我看到的问题是数据流创建的所有索引默认情况下都是隐藏的,所以我将无法看到它们(默认情况下)因此我将无法只查询我感兴趣的那些索引(从到)。
是否有一些简单的机制可以让我们只选择我们想要的索引,或者 ES 是否有一些功能?我知道有 @timestamp 字段,但我不知道它是否也以某种方式用于过滤掉仅包含给定日期的索引。

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    这就是数据流的全部要点,即您不需要知道要查询哪些索引,您只需查询数据流(即像别名一样)或其子集technical-logs*,ES 将确保只查询底层满足您的约束的索引(从/到时间间隔等)

    时序数据流使用time bound indices。这些后备索引中的每一个都是sorted by @timestamp,这样当您搜索特定时间间隔时,ES 将只查询相关的后备索引。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多