Каков наилучший способ реализовать поиск по тегам вasticsearch?
У меня он работает следующим образом.
Мой документ:
{
"_index": "phaasddb",
"_type": "phaasddb_type",
"_id": "id=Container-Image-c234a762-6848-4746-bd39-ab1ec4107e44|pk=Container",
"_score": 0.5753642,
"_source": {
"kind": "Image",
"name": "DJI_00020356.jpg 27",
"tags": [
"RekLabel-Spruce",
"RekLabel-Nature",
"RekLabel-Scenery",
"RekLabel-Flora",
"RekLabel-Aerial View",
"RekLabel-Outdoors",
"RekLabel-Tree",
"RekLabel-Landscape",
"RekLabel-Conifer",
"RekLabel-Plant"
],
"description": "Description",
"@SequenceNumber": "72247500000000054697124676",
"location": "Austin",
"@timestamp": "2018-09-19T22:18:21.915073",
"pk": "Container",
"id": "Container-Image-c234a762-6848-4746-bd39-ab1ec4107e44",
"createdAt": 1536877933
}
}
и мойЗапрос:
GET _search
{
"query": {
"bool": {
"must": [
{ "match": { "tags": "Spruce" }},
{ "match": { "tags": "Scenery" }}
]
}
}
}
Поле 'tags' - это просто строка, я помещаю в нее массив.Я читал о том, как сделать теги вложенными и, возможно, использовать запрос «термины».Это важно или важно?Я не понимаю достаточно, чтобы знать, до сих пор, кажется, это работает.