перегнать карту OSM в тайлы и всё это дело в MySQL

Используем свой специфический софт для мониторинга транспортных средств. Появилась необходимость в карте всей Республики Саха (Якутия) которой у нас к сожалению не было ранее, был только город Якутск. Встала необходимость каким-нибудь образом конвертировать карту osm в необходимый для нас формат а вот реализовать это пока не получается. Ситуация такая! Есть база MySQL в ней находятся таблица такой структуры:


Id:
MapID:
Scale:
Ind_X:
Ind_Y:
Data:
Flags:

Полей в базе десятки тысяч, в поле Data (тип: Blob) хранятся не большие куски карты в растовом виде (обычные картинки), Ind_X и Ind_Y наверно координаты, Scale - масштаб, MapID везде неизменно: 1468934149, Flags: где 0 где 1.
Вот хотел бы узнать реально ли из osm конвертировать всё это дело в необходимый мне формат?
Что было сделано мной уже, скачал и установил mapnik-0.7.1 и Python26, команда from mapnik import * выполняется без ошибок, что дальше делать не знаю и вообще в правильном ли направлении я копаю?
Заранее благодарю всех откликнувшихся!

Подозреваю, достаточно нарендерить тайлов с обычной структурой TMS (/z/x/y/), а потом засунуть в эту БД. Что там за флаг, надо уже смотреть.

Кто-то знает толк в извращениях (я не о вас лично, а о создавших такое чудо). Зачем хранить тайлы в MySQL? Чем не устраивает ФС для хранения тайлов? Вместо нормальной раздачи статики будет бессмысленный поток байтов (тайлов) между базой и фронтендом. o_O
Все эти вопросы я адресую авторам сего. :slight_smile:

Подскажите чем рендерить?

Это осмыслено, когда есть одна база на несколько фронтендов, например.
Но мускул для этого действительно плохо подходит.

xtraDB вроде вполне справиться, хотя хранить именно растр оО по моему проще зеркальное кеширование в nginx.

с помощью xtraDB я разве смогу нарэндерить тайлы? или вы про хранение этих тайлов говорите?

Gnomesu, это народ уже в офтоп пустился на предмет хранения файликов в dbms.

хранение конечно - это хранилище для mysql :slight_smile:

Ну и я поофтоплю. Только hdfs на кластере из 10-15 нод! Только хардкор!

Гм, это чего за фронтенды такие, которые могут MySQL, но не умеют HTTP…
Ну, может быть.

По поводу рендеринга кто-нибудь сможет всё таки мне что-нибудь подсказать? :slight_smile:

начни с этого, дальше по ссылкам

Если не сильно гигансткая территория модно использовать Maperitive - очень простая штука и мощная

Maperitive наделал тайлов в разных папках, что теперь с этим добром делать понять не могу :confused:

Эта структура папок, вероятно, по смыслу соответствует вашим полям Scale/Ind_X/Ind_Y :slight_smile:

вероятно соответствует :slight_smile:

есть какая-нибудь утилита чтобы всё это добро правильно затолкать в sql?

Gnomesu, так как хранение файлов в sql - ваше ноу-хау, ни у кого нет нормальных утилит для его поддержки.
Кроме, разве что, mbtiles…

ЗАЧЕМ? это заталкивать в базу? Надо просто выкинуть эти папки на веб-сервер вроде nginx и вон она карта))

Ну хочется человеку, или, может, начальство требует.
Наше дело - 1) выразить сомнение в целесообразности такого подхода - выразили уже.
2) Дать хоть какой-то совет. Как нарендерить - немекнули, уже, кажется, рендерит, осталось - как в базу затолкать. Написать простенький скрипт или программу на чем угодно, чтобы рекурсивно прошелся по всем директориям и для каждого .png /.jpg сгенерировал insert, пересчитав путь директории и имя файла в значения соотв. полей. Это совсем не сложно, минимальные знания программирования и от силы пару часов работы, а то и полчаса, если рука набита.

Что-то мне подсказывает что у меня ничего не получится :frowning:
Возьмётся кто-нибудь за данную работу за денежку?
Требуется порезать и загнать карту республики в бд MySQL и написать подробную инструкцию о том как это сделать чтобы в дальнейшем смог сам этим заниматься так как карта регулярно обновляется.
Кто возьмётся? Сколько запросите за данную работу?