Существует два пробела, названных, например. Company
и Cars
. Пространство Company
имеет идентификатор компании (первичный индекс) и геолокационные (точечные) поля (вторичный индекс). Пространство Cars
имеет автомобиль (первичный индекс) и компании (массив всех компаний, где можно взять этот автомобиль). Мне нужно получить 10 ведущих компаний в указанном прямоугольнике, где можно взять напрокат конкретный автомобиль. Какое (если можно так сказать) лучшее решение для достижения этого?Комплекс SELECT в Tarantool
Здесь мне нужно объединить пространственные и не пространственные индексы, чтобы получить результат. Мой поисковый план - это поиск кортежа и получение всех компаний (их может быть 1000), а затем в другом месте для фильтрации 10 из указанного прямоугольника.
Мой прецедент - это что-то похожее на это (а не на аренду автомобиля), но вся логика такая же. Будет гораздо больше компаний, чем автомобилей (в миллионах от . Компании и 300-500k от Автомобили). Как оптимизировать мой план, чтобы получить эту информацию, какие индексы использовать и т. Д.? Как вы видите, должны быть пространственные и не пространственные условия для одного select
.
«из 10 компаний в указанном прямоугольнике» - каковы критерии 'топ' для компании? индекс? –
@VasiliySoshnikov Результирующий набор будет иметь сотни результатов. Верните 10-50 ближайших к центру прямоугольника. – Aleksandar