Яндекс / OSM / Геосервисы
Получение информации с картографических ресурсов: Yandex Maps (при условии покупки ключа доступа Заказчиком) и Open Street Maps, а также использование внутренних изолированных геоинформационных сервисов (картография, прямое/обратное геокодирование, маршрутизация).
Возможность использование тайловых слоев (формат XYZ, код проекции: EPSG: 3857) в качестве подложки карты.
Стек сервиса предоставления картографической подложки основан на свободно распространяемых библиотеках основными компонентами которого являются:
postgresql - СУБД с расширениями (postgis) для обработки ГИС данных;
mapnik - набор библиотек для рендеринга тайлов;
renderd - cервер рендеринга заданных областей карт;
mod-tile - веб-сервер Apache с модулем расширения для работы с тайлами;
вспомогательные утилиты - загрузчики, генераторы стилевых файлов и т.д.
Особенности работы сервиса:
картографическая информация выгружается и хранится непосредственно в БД Postgres SQL;
актуальность картографических данных поддерживается автоматически, двумя режимами работы:
инкрементальная загрузка изменений карт из общедоступных источников векторных данных в формате .pbf ("Protocolbuffer Binary Format");
периодической загрузка полной карты с удалением предыдущих данных.
Стек сервера маршрутизации основан на библиотеке маршрутизации и сервере с открытым исходным кодом GraphHopper, написанный на Java и предоставляющий веб-интерфейс под названием GraphHopper Maps, а также API-интерфейс маршрутизации через HTTP(S).
Сервис прямого/обратного геокодирования:
предоставляет возможность поиска объектов по названию или по координатам;
имеет возможность загружать данные картографии OpenStreetMap;
в качестве базы данных используется h2gis (расширение h2database) с возможностью хранения и быстрого поиска объектов с координатами;
для поиска по наименованию используется библиотека для высокопроизводительного полнотекстового поиска Lucene.
Прямое геокодирование:
поиск городов, трасс, улиц, домов по их наименованиям;
независимость от порядка слов;
поиск по части слова;
возможность задать размер поисковой выдачи
возможность загрузки пользовательских объектов для учета в поисковой выдачи
приоритет более значимых объектов перед менее значимыми (чем выше приоритет, тем выше позиция объекта в выдаче);влияние координат пользователя на приоритет (объекты в определенном радиусе от пользователя имеют повышенный приоритет);
возможность указать на карте область, в которой будет осуществлен приоритетный поиск.
Обратное геокодирование:
поиск ближайших объектов по заданным координатам в том числе улиц, если не найден адрес;
если координаты поиска указывают на точку вне населенных пунктов, поиск ближайшего населенного пункта в большом радиусе и определение расстояния до него;
возможность загрузки пользовательских объектов для учета в определении местоположения;
пакетная обработка списка координат.