Здравствуйте, UI добавления расписания выглядит примерно так:
На выходе мы имеем такой json
[
{
"times": [
{"start": "10:00", "end": "11:30"},
{"start": "14:00", "end": "15:30"},
{"start": "16:00", "end": "17:30"}
],
"dates": {
"start": "21.10.2017",
"end": "25.10.2017"
}
]
Его я сохраняю в jsonb поле postgresql.
Для бека стоит задача выбирать из бд:
1. Те сеансы которые будут сегодня учитывая что:
1.1. Бывают сеансы у которых начало сегодня (например в 23:30), а окончание завтра (в 01:00)
1.2 Бывают сеансы у которых начало в 00:30 или даже в 04:00 следующего дня, но их хотелось бы показывать как сеансы на сегодня
Интересует мнение как бы арихтектурно вы решили подобную задачу?
Использовали ли бы elasticsearch или обошлись одним лишь postgresql? И если only postgre, то хранили бы вы преподготовленные данные в отдельной таблице или искали бы по jsonb полю?