В этом случае я пытаюсь решить проблему.Расчет расстояния в Cloudant
Клиент отправляет свое текущее местоположение, которое приходит через API, управляемый приложением Node.js. База данных Cloudant хранит список координат (несколько тысяч).
Что бы оптимальный способ получить а) список всех координат и б) расстояние от каждого из этих координат от расположения клиента КОТОРЫХ с) попадет в X километрового радиуса расположения клиента
Геопространственный индекс уже создан для этих сохраненных координат.
Скорость и эффективность являются ключевыми, но иногда они могут быть противоположными качествами. Если возможно, я бы предпочел использовать собственные функции в Cloudant вместо пользовательского кода.
Cloudant Search - это путь, если вы хотите, чтобы расстояния от данной точки были возвращены. [Cloudant Geo] (https://docs.cloudant.com/geo.html) является более гибким индексом, поскольку он позволяет запрашивать нерегулярный многоугольник, но db не может добавить эту информацию относительного расстояния в ответ. Вот учебник https://examples.cloudant.com/simplegeo_places/_design/geo/search.html – Raj