Упрощенный вариант - по квадратам. При создании элемента, который может отображаться на карте - необходимо сохранять в БД информацию о квадрате, которому он принадлежит. При обращении к БД делается select по номеру квадрата.
Правильно было бы данные о принадлежности сектору хранить не только для отображения на экране сматрфона (тут и прямоугольники подойдут), а и для подбора подходящего исполнителя. И тут сервису может быть актуальна ситуация разбиения местности на сектора произвольной формы.
В этом случае подбор происходит в два этапа:
* подбор подходящих секторов на основе «квадратного» распределения * уточнение подходящего сектора методом проверки принадлежности точки одному из них
Можно подробнее почитать про проблему тут: https://habr.com/ru/articles/301102/