J’ai profité de l’été pour me (re)-lancer dans le chantier “serveurs de tuiles”.
Petits rappels
OpenStreetMap France héberge génère plusieurs fonds de carte à l’aide de ses “serveurs de tuiles”:
-
rendu “FR”, une adaptation commencé en 2012 du style OSM de l’époque, destinée à un public francophones (noms en français en priorité, icône plus parlantes en France, etc) avec des ajouts originaux (terrains de sport, etc)
-
le rendu “humanitaire” largement utilisé par HOT et disponible aussi sur openstreetmap.org
-
le rendu “CyclOSM” , le petit dernier, lui aussi disponible sur openstreetmap.fr
À cela s’ajoute aussi OpenRiverBoat, un rendu adapté à la navigation fluviale, des rendus en langues régionales, des rendus techniques.
Les trois premiers sont assez fortement utilisés et complexes. Le rendu “FR” contient par exemple 82 couches différentes parfois multiples ce qui donne au total plus de 170 couches de dessin pour arriver au rendu final avec plus de 10000 règles qui servent à décider comment représenter graphiquement tel ou tel objet.
Les outils utilisés
Le cœur est une base postgresql/postgis, qui contient les données OSM utiles à la fabrication du fond de carte et à sa mise propre mise à jour.
Les données OpenStreetMap brutes sont importées dans postgresql puis mises à jour régulièrement à l’aide d’osm2pgsql. Typiquement la base résultat occupe environ 1To.
La génération du fond de carte est faite par renderd qui utilise la librairie mapnik pour transformer les données vectorielles issues de postgresql en images en appliquant une feuille de style.
Cette feuille de style au format XML utilisée par mapnik, est générée à l’aide de kosmtik à partir un code source écrit en cartocss, une sorte de CSS adaptée à la cartographie.


