首页 文章

如何让elasticsearch搜索(API)处理与其一致的时间

提问于
浏览
0

弹性搜索API最终是一致的,有利于查询响应时间 . 只要可以确定与其一致的日期,最终的一致性就不是问题 .

  • 任何elasticsearch搜索(API)结果都可以返回与其一致的时间吗?要么

  • 有没有办法让elasticsearch搜索(API)结果包含与之一致的时间?要么

  • 是否有可能在搜索查询时提供一个日期,而API可能会回复“对提供的日期不一致”或与该日期一致的结果?

最终期望的功能是能够为每个批量更新/索引步骤提供(可能是功能性的)日期并使搜索查询处理它 . 如果不可能,真正的技术更新/索引日期就足够了 .

是否有可能知道所有节点之间的给定更新/同步何时结束?

在阅读this之后,我在评估针对工业项目的弹性搜索的过程中向我提出了这个问题 .

1 回答

  • 1

    哦,那是很多问题)

    首先,如果您面临一致性要求/问题,则需要切换到一致的数据存储 . ES非常棒,但有时候必须保持一致性 .

    谈论"time since last sync" / "time consistent with" . 据我所知,到目前为止,还有synced flush机器,可以通过 /_stats?level=shards 检查"inactive"指数的状态 . 不确定它是否适合您的用例 .

    如果需要一致状态,可以执行的操作是使用wait_for_active_shards=all索引数据,将索引从AP转换为CP模式,或者[偶尔]仅使用 _search?preference=_primary 从主分片读取数据,以使索引类型为CA

相关问题