如何定义一个将在多个索引(群集级别)中使用的自定义分析器?我能找到的所有示例都显示了如何在特定索引上创建自定义分析器。
我的分析器例如:
PUT try_index
{
"settings": {
"analysis": {
"filter": {
"od_synonyms": {
"type": "synonym",
"synonyms": [
"dog, cat => animal",
"john, lucas => boy",
"emma, kate => girl"
]
}
},
"analyzer": {
"od_analyzer": {
"tokenizer": "standard",
"filter": [
"lowercase",
"od_synonyms"
]
}
}
}
},
"mappings": {
"record": {
"properties": {
"name": {
"type": "string",
"analyzer":"standard",
"search_analyzer": "od_analyzer"
}
}
}
}
}
知道如何将我的分析仪范围更改为集群级别吗?
感谢
答案 0 :(得分:1)
没有"范围"用于分析仪。但你可以用index templates做类似的事情:
PUT /_template/some_name_here
{
"template": "a*",
"order": 0,
"settings": {
"analysis": {
"filter": {
"od_synonyms": {
"type": "synonym",
"synonyms": [
"dog, cat => animal",
"john, lucas => boy",
"emma, kate => girl"
]
}
},
"analyzer": {
"od_analyzer": {
"tokenizer": "standard",
"filter": [
"lowercase",
"od_synonyms"
]
}
}
}
}
}
在"template"
处,您应该在创建索引时将应用此模板的索引名称设置为 。您可以很好地指定"*"
并匹配所有索引。我认为这是你能做的最好的事情。