Выбор архитектуры каталога и поискового движка для организации фасетного поиска?
mongodb/elasticsearch 
Проще структура, просто делаете набор атрибутов ( кол-во комнат, координаты, и т.д). Дальше в elasticsearch и оттуда вытаскиваете facet/aggregation. Можно вообще сразу данные в elasticsearch хранить, а не только индекс.
Реализовывал на MySQL + Sphinx. Фасетный поиск делается легко через MVA атрибуты. Поле с характеристиками объекта можно задать в JSON формате - в карточке объекта не придется делать лишний запрос на получение этих характеристик.  Подробнее о фасетном поиске на сфинксе можно почитать тут.