У меня проблема с выполнением поиска фасетки на вложенном объекте.not_analyzed для вложенного типа на ElasticSearch?
Возьмем, к примеру у меня есть следующий документ:
tags: [
{
tag: "tag0",
tag_url: "http://xxxxxxx.com/tag/tag0/"
},
{
tag: "tag1",
tag_url: "http://xxxxxx.com/tag/tag1/"
}
],
categories: [
{
category: "cat0",
category_url: "http://xxxxxx.com/category/cat0/"
},
{
category: "cat1",
category_url: "http://xxxxxx.com/category/cat1/"
}
],
и я хочу, чтобы выполнить фаску на tags.tag
и tags.tag_url
И так я, что отображение этого я использую для того, чтобы создать index:not_analyzed
для вложенные поля?
Я попытался это отображение:
mapping_data[mapping_name]["properties"] = {
"tags.tag" : {
"type": "multi_field",
"fields" : {
"tags.tag": {"type" : "string", "index" : "analyzed", "store": "yes"},
"untouched" : {"type" : "string", "index" : "not_analyzed"}
}
},
"tags.tag_url" : {
"type": "multi_field",
"fields" : {
"tags.tag_url": {"type" : "string", "index" : "analyzed", "store": "yes"},
"untouched" : {"type" : "string", "index" : "not_analyzed"}
}
},
"categories.category" : {
"type": "multi_field",
"fields" : {
"categories.category": {"type" : "string", "index" : "analyzed", "store": "yes"},
"untouched" : {"type" : "string", "index" : "not_analyzed"}
}
},
"categories.category_url" : {
"type": "multi_field",
"fields" : {
"categories.category_url": {"type" : "string", "index" : "analyzed", "store": "yes"},
"untouched" : {"type" : "string", "index" : "not_analyzed"}
}
},
}
и
mapping_data[mapping_name]["properties"] = {
"tags" : {
"type": "nested"
},
"categories" : {
"type": "nested"
},
}
Но это не дает мне нужный результат.
Использование type:nested
, все еще токенизирует вложенное поле, а type: multi_field
не может быть выражено так, чтобы вложенное поле было not_analyzed
. (учтите, что я использовал tags.tag
в варианте multi_field
, но безрезультатно.)
Итак, как выразить отображение для достижения грани для вложенных документов?
PS: http://www.elasticsearch.org/guide/reference/mapping/nested-type/ и http://www.elasticsearch.org/guide/reference/mapping/nested-type/ не дали результата, который мне нужен, поскольку у меня нет значения_поля.