Я создаю систему бронирования отелей с помощью Elasticsearch и пытаюсь найти способ вернуть отели, которые имеют переменное число последовательных дат доступны (например, 7 дней) по диапазону датElasticsearch последовательных даты
I Я в настоящее время храню даты и цены в качестве детского документа в отеле, но я не уверен, как провести поиск, или если это возможно даже при моей текущей настройке?
Редактирование: добавлены отображения
Отель Mapping
{
"hotel":{
"properties":{
"city":{
"type":"string"
},
"hotelid":{
"type":"long"
},
"lat":{
"type":"double"
},
"long":{
"type":"double"
},
"name":{
"type":"multi_field",
"fields":{
"name":{
"type":"string"
},
"name.exact":{
"type":"string",
"index":"not_analyzed",
"omit_norms":true,
"index_options":"docs",
"include_in_all":false
}
}
},
"star":{
"type":"double"
}
}
}
}
Дата Mapping
{
"dates": {
"_parent": {
"type": "hotel"
},
"_routing": {
"required": true
},
"properties": {
"date": {
"type": "date",
"format": "dateOptionalTime"
},
"price": {
"type": "double"
}
}
}
}
настоящее время я использую диапазон дат для выбора доступных дат, а затем запрос поле, чтобы соответствовать город - остальные поля будут использованы позднее
Я предлагаю предоставить фактические документы и конкретные примеры того, чего вы хотите достичь. На этот вопрос гораздо легче ответить. – DrTech
Можете ли вы разместить хотя бы один источник документа? –
Я добавил сопоставления для отеля (родителя) и даты (детские) документы - извините за форматирование, я не могу показаться отступом .. – swleighton