代码之家  ›  专栏  ›  技术社区  ›  Andrew Sledge

将弹性搜索索引设置为只读是否会提高性能

  •  9
  • Andrew Sledge  · 技术社区  · 12 年前

    虽然这是一项微不足道的简单任务,但我很好奇这是否对性能有积极的好处。

    curl -XPUT 'localhost:9200/my_index/_settings' -d '
    {
        "index" : {
            "blocks" {
                "read_only" : "true"
        } } }
    '
    
    1 回复  |  直到 12 年前
        1
  •  5
  •   Community Mohan Dere    6 年前

    我假设您的意思是“搜索性能”(搜索时间),因为您尝试将索引设置为只读。

    在不更改索引(添加/删除)的情况下,无论是否设置为只读,搜索性能(搜索时间)都应该相同。

    在这两种情况下,碎片都可以优化为只有一个片段。维护/搜索碎片中不断增加的段数没有开销。此外,也不需要合并段和刷新/刷新。

    请参阅ElasticSearch官方文件: Dynamically updatable indices 了解ElasticSearch如何进行索引更新。

    此外,根据此 discussion in Github ,Aaron Mildenstein提到:

    无论怎样,它对性能都没有改善。

    从技术上讲,一旦一个索引被优化为1段 每个碎片,并且禁用了bloom过滤器,实际上什么都没有 否则在软件级别,将以任何方式提高性能。