Как ещё один вариант:
1. Поднять у себя классический OSM тайловый сервер
2. Допилить под себя стили
3. Доливать в базу свои векторные данные
4. Обновлять/удалять устаревшие тайлы на лету после обновления
Тайлам выставить нужное время жизни чтобы они не кешировались у клиента (хотя, если клиент это не веб) то с этим будет проще. Самое проблемное, на мой взгляд, это п.2 Вся остальная обвязка уже хорошо работает.
Плохой вариант, если данных очень много и много пользователей постоянно обновляют подложку в разных местах
Ну я это ещё в самом начале предлагал :)
Время жизни - не выйдет генерить, если только не генерить на стороне клиента какой-то постфикс-параметр, типа хеш из параметров фильтра, что бы именно у клиента кеш тайлов под выбранный фильтр хранился.
На стороне сервера всегда 100% новая генерация