Требуется эксперт по проектировании БД Mongo
Коллекции БД:
1) Квартиры - создаются пользователем, имеют индивидуальные параметры, хранят данные по бронированиям их может быть много (до 5000).
Данные бронирований квартиры хранятся:
- в виде массива 1 бронь - 1 объект
- в виде объекта, который хранит данные каждого забронированного дня для вывода в календаре).
Квартиры выводятся в виде списка, они могут не содержать адреса. Квартиры могут публиковаться в каталоге ЖК (для этого должен быть привязан ЖК).
2) Жилые комплексы (ЖК) - имеют адрес, GPS-координаты, отображаются как списком, так и на карте +есть фильтр по параметрам квартир.
Сам по себе ЖК имеет только 1 параметр (GPS) для поиска.
Пользователь может публиковать квартиры в каталоге ЖК, в случае публикации квартиры, она добавляется в ЖК;
При выводе ЖК на карте: есть фильтр по GPS ЖК + фильтр по параметрам квартир, которые были опубликованы в ЖК. Фактически поиск происходит по GPS + по квартирам, которые входят в этот ЖК. На карте отображаются ЖК в виде точек.
При выводе списком: есть фильтр по параметрам квартир. Вывод осуществляется в виде списка ЖК, каждый из которых содержит 4 последние квартиры, опубликованные в ЖК.
3) Подборки - в подборку добавляются ЖК, также могут выделяться конкретные квартиры в этом ЖК. Подборки выводятся в виде списка.
При открытии подборки данные отображаются в виде списка ЖК которые есть в подборке.
При открытии ЖК в подборке, отображается список квартир этого ЖК. Если были выделены квартиры ЖК, то, они выводятся вверху списка.
На текущий момент БД сформирована, но есть опасения, что ее структура не верная.
Есть несколько конкретных вопросов по структуре.
Задача - оптимизация ресурсов сервера/клиента при работе с БД.
Прошу указывать стоимость.