V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
main1234
V2EX  ›  程序员

对于 ES 近实时搜索特性、refresh 的疑问

  •  
  •   main1234 · 8 天前 · 803 次点击

    ES 写入 doc 文档后,简化的步骤如下 1.写入到内存缓冲区 2.写入新打开的 segment 3.写入 disk

    在步骤 1 ,文档不可被检索;步骤 2 ,文档可以被检索

    在步骤 2 ,打开并写入文档到 segment 为 refresh ,但是 segment 还没有被刷盘,此时文档可以被检索

    我理解步骤 2 是一个相对轻量化的步骤(相对于刷盘),那为什么默认情况步骤 1/2 要间隔 1 秒,为什么不从近实时变成实时可搜索

    1 条回复    2025-01-23 10:17:15 +08:00
    Cells
        1
    Cells  
       7 天前
    为了平衡 搜索时效性 与 系统性能 ,如果实时刷新的话,IO 资源消耗肯定会明显上升,而且对于集群来说,合并的压力肯定更大了。
    正常业务里 1s 的延时是完全可以接受的,没必要为了这 1s 的延时牺牲大量的性能,实在是需要实时的可以配置下 refresh 。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   742 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 19:24 · PVG 03:24 · LAX 11:24 · JFK 14:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.