Bhu*_*kar 1 elasticsearch elasticsearch-analyzers
我试图将路径层次分析器添加到我的类型的一个字段中。
我想在同一字段上配置路径分析器和反向路径分析器,以便获得一个字段的正常路径和反向路径。
例如
path =“ / angular / directive / structural”
我想配置此路径字段,例如每当我分析该字段时,如果我指定反向,则应该以正常顺序和反向顺序获取令牌。
下面是我的映射。
PUT /elastic_course
{
"settings": {
"analysis": {
"analyzer": {
"path_analyzer": {
"tokenizer": "path_tokenizer"
},
"reverse_path_analyzer": {
"tokenizer": "reverse_path_tokenizer"
}
},
"tokenizer": {
"path_tokenizer": {
"type": "path_hierarchy",
"delimiter": "/",
"replacement": "-"
},
"reverse_path_tokenizer": {
"type": "path_hierarchy",
"delimiter": "/",
"replacement": "-"
}
}
}
},
"mappings": {
"book" : {
"properties": {
"author": {
"type": "string",
"index": "not_analyzed"
},
"genre": {
"type": "string",
"index": "not_analyzed"
},
"score": {
"type": "double"
},
"synopsis": {
"type": "string",
"index":"analyzed",
"analyzer":"english"
},
"title": {
"type": "string"
},
"path":{
"type":"string",
"analyzer":"path_analyzer",
"fields": {
"reverse": {
"type":"string",
"analyzer":"reverse_path_analyzer"
}
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我已经配置了这个分析器。现在如何获取路径和反向路径的令牌?
谢谢。
您可以声明该path字段的子字段,每个子字段都具有不同的分析器:
"path":{
"type":"string",
"analyzer":"path_analyzer",
"fields": {
"reverse": {
"type":"string",
"analyzer":"reverse_path_analyzer"
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以在查询中参考path和path.reverse。
| 归档时间: |
|
| 查看次数: |
1622 次 |
| 最近记录: |