Oslandia et Mappy vers l’OpenSource

By lundi 10 février 2014NewsFR

Depuis plus de deux ans, Oslandia accompagne Mappy  dans sa transition vers l’OpenSource. La première étape est symbolisée par le projet de migration des bases de données Oracle du backoffice cartographique vers PostGIS. Celui-ci vient notamment d’être finalisé et fonctionne actuellement en production.

Mappy propose des services de calcul d’itinéraire et de cartographie. Supportant plusieurs milliards de requêtes par mois, la plateforme LBS (Location Based Services) est au cœur de l’activité de Mappy et sert de socle aux nouveaux produits tel que le Web To Store. Oslandia travaille conjointement avec Mappy pour migrer cette plateforme cartographique d’une solution développée en interne, vers une solution basée entièrement sur des logiciels libres, afin de préparer les défis techniques et opérationnels à venir.

La migration

Les backoffices de préparation des données et de création du plan cartographique ont été entièrement migrés avec succès. Cette pile applicative était initialement basée sur Oracle Spatial, SQL Server, et des outils internes non standards de création de carte. Elle n’utilise plus désormais que des composants OpenSource.
Oracle et SQL Server ont été entièrement remplacés par PostgreSQL et PostGIS, qui constitue le socle de base de données géographique pour le stockage et le prétraitement des données géographiques. Mapnik, Python, Tornado, Varnish, MemCached, Debian sont les autres composants OpenSource utilisés.

La migration vers ces composants OpenSource a permis de rationaliser et d’optimiser l’architecture du composant « carte »:

  • Temps de traitement des données réduit
  • Standardisation des formats et API
  • Forte diminution de la dette technique
  • Nombre de lignes de code optimisé
  • Baisse du coût de la plateforme, et passage à l’échelle plus économique
  • Montée en compétence et motivation des équipes
  • Maîtrise complète des outils

Oslandia a permis à Mappy d’intégrer la culture et les méthodes de l’OpenSource dans ses équipes, et leur a fourni les compétences techniques nécessaires pour mettre en place cette architecture à forte charge. Les compétences d’Oslandia en systèmes d’information géographique, et son expertise unique en France sur PostGIS, ont permis de mener à bien ce projet.

Mappy a ainsi pu bénéficier des dernières technologies OpenSource à la pointe de l’état de l’art, et également pu contribuer à certains projets libres comme Mapnik.

Étapes de migration

La migration s’est effectuée avec plusieurs étapes, de façon à conserver une maitrise sur le projet, en validant par des tests le plus tôt possible les composants migrés.

La plateforme initiale était celle ci :

La plateforme cible, avec tous les composants migrés vers de l’OpenSource, est désormais celle ci :

 

Grâce à la disponibilité des composants OpenSource, un prototype a pu être développé en moins de deux semaines afin de valider les choix d’architecture. Ensuite, la migration a proprement parler a pu débuter. Les choix des composants OpenSource ont été assez rapide, comme déjà évoqué plus haut. L’architecture cible s’est donc mise en place assez rapidement et le développement et les processus de migration ont pu être mis au point une fois cette étape franchie.

La migration a permis à Mappy de contribuer a Mapnik, avec à la clef une amélioration de 25% des performances de lecture de données en utilisant PostGIS, et de libérer Pycnik, un outil de génération de styles en Python pour Mapnik.

PostGIS

PostGIS, la base de données géographique supportant toute l’infrastructure, a permis d’atteindre de très hautes performances et un niveau fonctionnel élevé.
La base de 75Go bénéficie des toutes dernières avancées de PostgreSQL et PostGIS, tels que la réplication au fil de l’eau, les nouvelles fonctions géographiques de PostGIS, les requêtes CTE récursives, le support de JSON et bien plus.

Audrey Malherbe ( @AudreyMalherbe ) responsable du projet chez Mappy, souligne que le choix de PostgreSQL et de PostGIS était une évidence :

Nous voulions basculer dans l’OpenSource en nous appuyant sur des technologies performantes et reconnues comme PostGIS. Il était important pour nous de contribuer à l’OpenSource et l’expertise technique d’Oslandia et son implication dans la communauté nous ont permis de nous lancer dans cette aventure en toute confiance.

En chiffres

Les plus geeks d’entre vous aiment voir ce genre de chiffres :

  • 85% du trafic de Mappy
  • 14 serveurs (4 PostGIS, 8 Tornik, 2 Varnish)
  • 240 req/s en pic sans cache
  • 2500 req/s en pic avec le cache
  • 94% de Cache Hit Ratio
  • 2M d’objets en préchauffage de cache
  • 75 Go pour la base PostGIS
  • 300 Go pour la base relief

La suite…

Plus d’informations techniques sur cette migration sont disponibles dans la `présentation d’Audrey au FROG 201

Mappy a l’intention de continuer ce virage vers l’OpenSource et d’étendre la méthode de migration aux autres services de la plateforme cartographique.

 

À propos de Mappy

Spécialiste du calcul d’itinéraire et des services de cartographie, Mappy est reconnu comme le leader français de la recherche locale par la carte, sur Internet, tablettes, mobiles et GPS.

Mappy propose à ses utilisateurs trois types de recherche : la recherche par le plan, qui permet de visualiser un quartier, de s’immerger dans la ville  grâce aux vues 360° dans 320 villes françaises, mais également de pousser la porte de plusieurs milliers de commerces ; la recherche d’itinéraires disponible pour les déplacements en voiture, en transports en commun, en vélo et en mode piéton ; enfin la recherche de produits, permettant de localiser un produit précis, dans une zone géographique donnée, de connaître son prix et sa disponibilité.

Acteur majeur du déplacement urbain, Mappy propose aux annonceurs une solution géolocalisée sur l’ensemble du territoire, facilitant les dispositifs web-to-store et la génération de trafic vers leurs points de vente.
Mappy compte aujourd’hui plus de 10 millions d’utilisateurs mensuels sur Internet, tablettes et mobiles (Mappy et MappyGPS Free).

Mappy est une filiale à 100% de Solocal Group.