14.Elasticsearch索引设置

本文讲解Elasticsearch中的索引级别相关的设置方法:

(本文为官方文档翻译:点击进入原文
在前一篇的分页查询中,很多人在分页页码过大时会遇到一个错误:Result window is too large, from + size must be less than or equal to: [10000] but was [10025].,解决方案请参考:点击进入

1.Update Indices Settings

实时更改特定的索引级别设置。
REST端点是/_settings(更新所有索引)或{index}/_settings来更新一个(或多个)索引设置。请求的主体包括更新的设置,例如:

PUT /twitter/_settings
{
    "index" : {
        "number_of_replicas" : 2
    }
}

可以在此文中找到可以动态更新设置的索引列表,为了保护现有的设置不被更新,preserve_existing请求参数可以设置为true。

2.Bulk Indexing Usage

例如,使用更新设置API可以用来动态的将批量索引改变的更高效,然后将其移动到更实时的索引状态。在开始批量索引之前,请使用:

PUT /twitter/_settings
{
    "index" : {
        "refresh_interval" : "-1"
    }
}

(另一个优化选项是在没有任何副本的情况下启动索引,并且只在以后添加它们,但这实际上取决于用例)。
然后,一旦完成了批量索引,就可以更新设置(例如,回到默认值):

PUT /twitter/_settings
{
    "index" : {
        "refresh_interval" : "1s"
    }
}

3.Updating Index Analysis

还可以为索引定义新的分析器。但是必须先关闭索引,然后在修改后打开它。

例如,如果content分析器还没有在myindex上定义,那么您可以使用以下命令来添加它:

POST /twitter/_close

PUT /twitter/_settings
{
  "analysis" : {
    "analyzer":{
      "content":{
        "type":"custom",
        "tokenizer":"whitespace"
      }
    }
  }
}

POST /twitter/_open

更多设置,请参考:点击这里

猜你喜欢

转载自blog.csdn.net/weixin_39800144/article/details/80501708