我正在尝试重新索引我的文档,以便它们可以排序,这需要使用" raw"来生成可排序的字段多字段属性。未经分析的字符串版本。
我正在关注this文章,但在使用排序查询搜索文档时,我仍然遇到错误。
我有一个关于重新索引数据的问题......如果我将doucments重新索引到这个新索引中,那么我是否需要一些额外的逻辑来设置分析版本和non_analyzed或& #34;生"字符串的版本也是?或者弹性搜索会自动填充那个吗?这是我的领域的样子:
{
"entityName": {
"type":"string",
"fields": {
"raw": {
"type":"string",
"index":"not_analyzed"
}
}
}
}
所以当我使用_source
索引文档时,如:
{
...
"entityName":"Ned Stark"
...
}
analyzed
字段 和 not_analyzed
字段的映射是否完成,或者我还需要做些什么来告诉索引填写" raw"财产也是?
答案 0 :(得分:3)
不,你不需要做任何其他事情。
重新索引文档后,您必须在给定的文档文章中说明查询应使用哪些字段。
原始子字段:
POST /_search
{
"query": {
"match": {
"entityName.raw": "foo-bar"
}
}
}
或原始分析类型:
POST /_search
{
"query": {
"match": {
"entityName": "foo-bar"
}
}
}