如何获得索引的默认分析器

时间:2015-02-10 13:47:09

标签: elasticsearch

我使用此定义为索引设置默认分析器:

"index": {
    "analysis": {
      "analyzer": {
        "default": {
          "type": 'simple'
        }
      }
    }
  }

然后我通过查询获取此索引的设置 http://localhost:9200/test/_settings?pretty=true 我只得到这个,没有关于分析器:

 {
  "test" : {
    "settings" : {
      "index" : {
        "creation_date" : "1423575850265",
        "uuid" : "Ac8QSGWbTtSCG7ib4VpV3Q",
        "number_of_replicas" : "1",
        "number_of_shards" : "5",
        "version" : {
          "created" : "1040299"
        }
      }
    }
  }
}

1 个答案:

答案 0 :(得分:1)

删除索引并重试。你的定义应该有效。很可能它不起作用,因为已存在具有相同名称的索引。

SENSE

中尝试以下代码
DELETE test

POST test
{
    "index" : {
        "analysis" : {
            "analyzer" : {
                "default" : {
                    "type" : "simple"
                }
            }
        }
    }
}

GET test/_settings

此代码返回:

{
   "test": {
      "settings": {
         "index": {
            "creation_date": "1423576958602",
            "uuid": "0iKpaL8uSKOSFT-oI1TJoQ",
            "analysis": {
               "analyzer": {
                  "default": {
                     "type": "simple"
                  }
               }
            },
            "number_of_replicas": "1",
            "number_of_shards": "5",
            "version": {
               "created": "1040199"
            }
         }
      }
   }
}

编辑:

  

问题在于'简单'周围的单引号,所有键/值都应该是双引号 - Maxim K。

JSON syntax需要使用双引号。