SlideShare une entreprise Scribd logo
Map as a Service
Loïc Ortola
CTO – jawg
Adrien Peyron
Solution Architect - OVH
Hier	
Les cartes ont changé
L’ Ère Mr Manuel
L’ Ère A. Larrache
Aujourd’hui	
Les cartes ont changé
Délégation – Clé-en-main – Simple
• Standard	
	
• Faible	Time-To-Market	
• Pay-as-you-go
Indépendance – Maitrise – Personnalisation
• Propriété	Intellectuelle	
• Fonc<onnalités	custom	
• Sur	instances	Dédiées	/	chez-vous
Jawg
Take control of your Maps.
hBp://jawg.io
Wonderland
Wonderland
Les incontournables
	
1.  C’est	quoi	une	carte?	
2.  A	quoi	sert	un	map-server?	
3.  Quid	des	performances	/	de	la	robustesse?
1. Qu’entend-on par Carte?
4	mé0ers	principaux	dans	les	maps	digitales	
•  Geocoding	
•  Rou<ng	(I<néraire)	
•  Cartes	(Fonds	de	carte)	ex	:	WMS	
•  Données	supplémentaires	(Vos	POIs)	ex	:	WFS
1. Qu’entend-on par Carte?
Carte	de	Paris	à	l’échelle	1:15	000	(zoom	15)	
Monde	en<er:	70	trillion	pixels
1. Qu’entend-on par Carte?
Carte	de	Paris	à	l’échelle	1:15	000	(zoom	15)	
Monde	en<er:	1	billion	<les	256x256	pixels
1. Qu’entend-on par Carte?
Zoom	0	
Scale	1:500	Million	
Zoom	1	
Scale	1:250	Million
1. Qu’entend-on par Carte?
Rendu jusqu’au Zoom 19:
Somme des tuiles des zooms 0 à 19:
S = ~= 366 billion tiles
1. Qu’entend-on par Carte?
2. Ca sert à quoi un map-server?
•  A	dessiner	des	données	sur	des	cartes	(routes	etc…)	
•  A	faciliter	le	stockage	/	le	cache	/	les	flux	de	données	
•  A	gérer	la	stratégie	d’import	/	réimport
2.1. Dessine moi une carte
•  Entrée:	Règles	de	“dessin”	
	
•  Sor<e:	Moteur	de	rendu	
•  Lecture	en	DB	
•  Clipping	/	drawing	
	
•  Prend	du	temps	et	des	ressources	
•  quelques	ms	à	plusieurs	minutes	de	rendu	
•  u<lise	le	CPU,	la	mémoire	&	le	disque
2.1. Dessine moi une carte
Besoin	d’op<misa<ons	
	…	sur	la	DB	
	
	 	…	sur	le	style	
	
	 	 	…	sur	les	requêtes
2.1. Optimiser le rendu des tuiles
Concept	:	La	Meta-<le	
	Rendre	plusieurs	tuiles	côte	à	côte,	et	les	découper	ensuite	
	
Avantages:	
•  Empêche	de	saturer	les	I/O		
•  Diminue	grandement	les	connec<ons	ac<ves	BDD	
	
Inconvénients	
•  Génère	des	tuiles	inu<les	è	plus	long
Rendement	
28/64	=	43%	
Ex: Meta8
Rendement	
28/256	=	11%	
2.1. Optimiser le rendu des tuiles
2.1. Donc…
•  Impossible	de	pré-calculer	toutes	les	tuiles	du	monde	à	tous	les	
niveaux	de	zoom.	
•  c’est	(infiniment)	long	
•  ça	prend	trop	de	place,	c’est	éphémère	
•  Besoin	de	logiques	de	“cache”	et	de	“pré-rendu”	
•  Système	hautement	contraint
2.2. Stockage des tuiles et cache
	
Une	“map”	ó	entre	12	et	48	tuiles		
	
è	Comment	diminuer	mes	I/O	quand	je	vais	chercher	des	données?
2.2. Stockage des tuiles et cache
	
•  Stocker	les	tuiles	con<gues	ensemble	(Meta-Tile)	
•  Concentrer	les	requêtes	demandant	la	même	informa<on	
•  Garder	un	cache	mémoire	(LRU)
2.3. (Ré-)importer des données
•  Une	archive	à	importer	dans	une	base	
•  Des	traitements	sur	la	donnée	pour	le	rendu	
•  Peut	prendre	plusieurs	heures	à	quelques	jours
2.3. (Ré-)importer des données
•  ABen<on	à	la	stratégie	de	mise	à	jour	(fréquence,	diff)	
•  Besoin	d’une	stratégie	d’invalida<on	des	caches	
•  A	dimensionner	de	façon	intelligente
3. Robustesse
Scalable Disponible
Elastique Support
Performant
Map-as-a-Service
1.  Introduc<on	
2.  Le	marché	de	la	cartographie	
3.  Map	services	
1.  Defini<on	
2.  GIS	
3.  WMS	
4.  WFS	
5.  Autres	mé<ers	
4.  Contraintes	/	architecture	
5.  Etude	de	cas	:	plateformes	de	mapping	
1.  Primi<ves	
2.  KPIs	
3.  BoBlenecks	
4.  Solu<ons	du	marché	
6.  Analyse
1.  Scenario
2.  Documentation
3.  Support services
4.  Scalabilité
5.  Service-discovery
6.  Intégration Cloud
7.  Je prends le pari
6.  Que personne ne lira cette ligne
7.  Si tu lis cette-ligne, tu viens de gagner une bière
8.  Il ne reste plus qu’à trouver un bar
8.  En plus, la journée a été longue non?
6.  A propos de cette bière… Tweet @loicortola
9.  J’ai faim.
10.  Raw Data
11.  Conclusion
Map-as-a-Service
1.  Introduc<on	
2.  Le	marché	de	la	cartographie	
3.  Map	services	
1.  Defini<on	
2.  GIS	
3.  WMS	
4.  WFS	
5.  Autres	mé<ers	
4.  Contraintes	/	architecture	
5.  Etude	de	cas	:	plateformes	de	mapping	
1.  Primi<ves	
2.  KPIs	
3.  BoBlenecks	
4.  Solu<ons	du	marché	
6.  Analyse
1.  Scenario
2.  Documentation
3.  Support services
4.  Scalabilité
5.  Service-discovery
6.  Intégration Cloud
7.  Je prends le pari
6.  Que personne ne lira cette ligne
7.  Si tu lis cette-ligne, tu viens de gagner une bière
8.  Il ne reste plus qu’à trouver un bar
8.  En plus, la journée a été longue non?
6.  A propos de cette bière… Tweet @loicortola
9.  J’ai faim.
10.  Raw Data
11.  Conclusion
Jawg maps @Ovh peut-il tenir
une invasion de zombies?
La pandémie
Virus = ZOMBIES Réseau principal
Hors ligne
La pandémie
•  Lancement	d’une	applica<on	:	WAZE	
	World		
	Against	the		
	Zombie		
	Epidemic	
•  Localise	les	ressources	&	abris	locaux
Le Scénario Pandémie
1	000	000	
U<lisateurs	poten<els	
1.12 milliards
16% de la
population est sain
11.2 millions
1% ont un accès
au réseau internet
Le Scénario Pandémie
Test de performance
•  Mode Cluster
•  Métriques ultra-détaillées
•  Live reporting
Architecture
+	:	Ressources	dédiées	
-	:	Scalabilité	
+	:	Ressources	dédiées	
-	:	Scalabilité	non-na<ve
Serveurs Dédiés
 Private Cloud
+	:	Scalabilité	en	1	ligne	
-	:	Ressources	Mutualisées
Public Cloud
Architecture
+	:	Ressources	dédiées	
-	:	Scalabilité	
+	:	Scalabilité	en	1	ligne	
-	:	Ressources	Mutualisées
+	:	Ressources	dédiées	
-	:	Scalabilité	non-na<ve
Serveurs Dédiés
 Public Cloud
 Private Cloud
Architecture dans la Réalité
PRISE	EN	MAIN	
RAPIDITE	
EXACTITUDE	
BANDE	PASSANTE	
CPU	
CPU	
CPU	
MEMOIRE	
I/O	
UTILISATEURS
CACHES
RENDERS
MTA LB
IP LB
 CPU
Architecture Test de Charge
EG-30		
HG-30	
EG-15	
HG-120	
INJECTEURS
CACHES
RENDERS
MTA LB
RRD DNS
 EG-7	
•  8	vCores	2,3Ghz	
•  30	Go	RAM	
•  2	Gbps	BP	
•  2	vCores	2,3Ghz	
•  7	Go	RAM	
•  300	Mbps	BP	
•  8	vCores	3,1Ghz	
•  30	Go	RAM	
•  2	Gbps	BP	
•  4	vCores	2,3Ghz	
•  15	Go	RAM	
•  1	Gbps	BP	
•  32	vCores	3,1Ghz	
•  120	Go	RAM	
•  4	Gbps	BP
OUI	
Objec0ve:	1	milliard	de	maps	
Reached:	40	milliards	de	maps	
WAZE	sauve	la	planète	
Jawg Maps @OVH peut-il tenir
une invasion de zombies?
Rétrospective : les embûches
•  Setup	
•  Spawn	<me	
•  OVH	Manager	vs	Horizon	+	Nova	+	Neutron	
•  Déploiement	
•  SSHJ	+	OpenStack	
•  Configura<on	Gatling	Frontline	
•  Run	
•  nf_conntrack_max	
•  steal-cpu	et	network	soyirq	
•  Bande	passante
Rétrospective : avec 4 caches
•  850	000	u<lisateurs	en	30	min	
•  Entre	1	et	15	map	views	/	user(ó	entre	28	et	420	tuiles	/	user)	
•  Sur	les	12	zones	les	plus	peuplées	du	monde	en<er
Rétrospective : avec 4 caches
•  108	k	req/s	en	pointe	ó	~25k	req/s/cache	
•  Moyenne	des	temps	de	réponse	=	65	ms	
•  99.9th	percen<le	de	temps	de	réponse	<	600ms
Rétrospective : avec 4 caches
•  2	Gbps	aBeints	sur	EG-30	
•  ~10k	u<lisateurs	concurrents
Rétrospective : avec 4 caches
•  90%	CPU	u<lisé	
•  5%	IOWait	
•  Steal	&	soyirq	négligeables
Rétrospective : recommandations
•  Op<miser	la	bande	passante	
•  Choisir	les	bonnes	instances	(Cloud	ou	Dédié)?		
•  Compression	g-zip	(<le-edge-cache)?	
•  Affiner	le	tuning	kernel	/	DB	/	Run<me	/	Conf	
•  file	descriptors,	ulimit,	conntrack	
•  PostGIS	/	profil	d’import	
•  Op<miser	l’architecture	
•  Cache	de	niveau	2	–	Object	Storage	
•  Sépara<on	DB	/	Render
Robustesse
Scalable Disponible
Elastique Support
Performant
Hos0ng	
OPS	
SoTware	
DEV	
Robustesse
Scalable
Disponible
Elastique
Support
Performant
White Papers
1.  Map	services:	from	theory	to	implementa<on	
•  Disponible	maintenant	@	hBp://jawg.io	
2.  Map	services:	Benchmarks	&	high-scale	profiles	
•  4e	trimestre	2016
Merci
Adrien	Peyron	
@APN_FR	
@OVH	
Loïc	Ortola	
@LoicOrtola	
@jawgio

Contenu connexe

Similaire à Map as a Service OVH Summit 2016

Paris Web 2012 - Les nouveaux horizons de la cartographie sur le Web
Paris Web 2012 - Les nouveaux horizons de la cartographie sur le WebParis Web 2012 - Les nouveaux horizons de la cartographie sur le Web
Paris Web 2012 - Les nouveaux horizons de la cartographie sur le Web
BBecquet
 
OpenStreetMap - La carte libre du monde
OpenStreetMap - La carte libre du mondeOpenStreetMap - La carte libre du monde
OpenStreetMap - La carte libre du monde
Severin Menard
 
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 06 Juillet ...
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 06 Juillet ...Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 06 Juillet ...
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 06 Juillet ...
quicky_osm
 
OpenStreetMap, la cartographie 2.0 [CIN, 2017-12]
OpenStreetMap, la cartographie 2.0 [CIN, 2017-12]OpenStreetMap, la cartographie 2.0 [CIN, 2017-12]
OpenStreetMap, la cartographie 2.0 [CIN, 2017-12]
Jean-Louis ZIMMERMANN
 
Cartographie des infrastructures
Cartographie des infrastructuresCartographie des infrastructures
Cartographie des infrastructures
François Lacombe
 
Modern DevOps - kill the bottleneck (part 2/2)
Modern DevOps - kill the bottleneck (part 2/2)Modern DevOps - kill the bottleneck (part 2/2)
Modern DevOps - kill the bottleneck (part 2/2)
Loic Ortola
 
OpenStreetMap : la carte libre du monde
OpenStreetMap : la carte libre du mondeOpenStreetMap : la carte libre du monde
OpenStreetMap : la carte libre du monde
Severin Menard
 
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...
quicky_osm
 
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...
quicky_osm
 
Presentation osm
Presentation osmPresentation osm
Presentation osm
epidrome
 
Osm 20141112-montesquieu
Osm 20141112-montesquieuOsm 20141112-montesquieu
Osm 20141112-montesquieu
Frédéric Rodrigo
 
#Polyglottisme, une autre manière de développer une application
#Polyglottisme, une autre manière de développer une application#Polyglottisme, une autre manière de développer une application
#Polyglottisme, une autre manière de développer une application
Thierry Wasylczenko
 
La cartographie Libre avec OpenStreetMap
La cartographie Libre avec OpenStreetMapLa cartographie Libre avec OpenStreetMap
La cartographie Libre avec OpenStreetMap
Florian Lainez
 
#HackFrancophonie @Etalab @CFImedias - Projet Espace OSM Francophone #ProjetE...
#HackFrancophonie @Etalab @CFImedias - Projet Espace OSM Francophone #ProjetE...#HackFrancophonie @Etalab @CFImedias - Projet Espace OSM Francophone #ProjetE...
#HackFrancophonie @Etalab @CFImedias - Projet Espace OSM Francophone #ProjetE...
chavent nicolas
 
OSM Nancy libre-sur-la-place, novembre 2017
OSM Nancy libre-sur-la-place, novembre 2017OSM Nancy libre-sur-la-place, novembre 2017
OSM Nancy libre-sur-la-place, novembre 2017
Jean-Louis ZIMMERMANN
 
Drupagora 2012 - Votre application cartographique avec Drupal
Drupagora 2012 - Votre application cartographique avec DrupalDrupagora 2012 - Votre application cartographique avec Drupal
Drupagora 2012 - Votre application cartographique avec Drupal
Core-Techs
 
Tutoriel Open Street Map - Atelier données
Tutoriel Open Street Map - Atelier donnéesTutoriel Open Street Map - Atelier données
Tutoriel Open Street Map - Atelier données
Montpellier Territoire Numérique
 
BigData et Hadoop au secours de téraoctets de logs inexploitables chez l'un d...
BigData et Hadoop au secours de téraoctets de logs inexploitables chez l'un d...BigData et Hadoop au secours de téraoctets de logs inexploitables chez l'un d...
BigData et Hadoop au secours de téraoctets de logs inexploitables chez l'un d...
Publicis Sapient Engineering
 
2011 12-14 orange v1.3
2011 12-14 orange v1.32011 12-14 orange v1.3
2011 12-14 orange v1.3
jmplanche
 
Un géoportail “responsive” - mythe ou réalité ? Geosummit 2014
Un géoportail “responsive” - mythe ou réalité ? Geosummit 2014Un géoportail “responsive” - mythe ou réalité ? Geosummit 2014
Un géoportail “responsive” - mythe ou réalité ? Geosummit 2014
geoportal of the federal authorities of the Swiss Confederation
 

Similaire à Map as a Service OVH Summit 2016 (20)

Paris Web 2012 - Les nouveaux horizons de la cartographie sur le Web
Paris Web 2012 - Les nouveaux horizons de la cartographie sur le WebParis Web 2012 - Les nouveaux horizons de la cartographie sur le Web
Paris Web 2012 - Les nouveaux horizons de la cartographie sur le Web
 
OpenStreetMap - La carte libre du monde
OpenStreetMap - La carte libre du mondeOpenStreetMap - La carte libre du monde
OpenStreetMap - La carte libre du monde
 
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 06 Juillet ...
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 06 Juillet ...Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 06 Juillet ...
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 06 Juillet ...
 
OpenStreetMap, la cartographie 2.0 [CIN, 2017-12]
OpenStreetMap, la cartographie 2.0 [CIN, 2017-12]OpenStreetMap, la cartographie 2.0 [CIN, 2017-12]
OpenStreetMap, la cartographie 2.0 [CIN, 2017-12]
 
Cartographie des infrastructures
Cartographie des infrastructuresCartographie des infrastructures
Cartographie des infrastructures
 
Modern DevOps - kill the bottleneck (part 2/2)
Modern DevOps - kill the bottleneck (part 2/2)Modern DevOps - kill the bottleneck (part 2/2)
Modern DevOps - kill the bottleneck (part 2/2)
 
OpenStreetMap : la carte libre du monde
OpenStreetMap : la carte libre du mondeOpenStreetMap : la carte libre du monde
OpenStreetMap : la carte libre du monde
 
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...
 
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...
Presentation OpenStreetMap (OSM) au Pole Numerique de la Drome le 10 Novembre...
 
Presentation osm
Presentation osmPresentation osm
Presentation osm
 
Osm 20141112-montesquieu
Osm 20141112-montesquieuOsm 20141112-montesquieu
Osm 20141112-montesquieu
 
#Polyglottisme, une autre manière de développer une application
#Polyglottisme, une autre manière de développer une application#Polyglottisme, une autre manière de développer une application
#Polyglottisme, une autre manière de développer une application
 
La cartographie Libre avec OpenStreetMap
La cartographie Libre avec OpenStreetMapLa cartographie Libre avec OpenStreetMap
La cartographie Libre avec OpenStreetMap
 
#HackFrancophonie @Etalab @CFImedias - Projet Espace OSM Francophone #ProjetE...
#HackFrancophonie @Etalab @CFImedias - Projet Espace OSM Francophone #ProjetE...#HackFrancophonie @Etalab @CFImedias - Projet Espace OSM Francophone #ProjetE...
#HackFrancophonie @Etalab @CFImedias - Projet Espace OSM Francophone #ProjetE...
 
OSM Nancy libre-sur-la-place, novembre 2017
OSM Nancy libre-sur-la-place, novembre 2017OSM Nancy libre-sur-la-place, novembre 2017
OSM Nancy libre-sur-la-place, novembre 2017
 
Drupagora 2012 - Votre application cartographique avec Drupal
Drupagora 2012 - Votre application cartographique avec DrupalDrupagora 2012 - Votre application cartographique avec Drupal
Drupagora 2012 - Votre application cartographique avec Drupal
 
Tutoriel Open Street Map - Atelier données
Tutoriel Open Street Map - Atelier donnéesTutoriel Open Street Map - Atelier données
Tutoriel Open Street Map - Atelier données
 
BigData et Hadoop au secours de téraoctets de logs inexploitables chez l'un d...
BigData et Hadoop au secours de téraoctets de logs inexploitables chez l'un d...BigData et Hadoop au secours de téraoctets de logs inexploitables chez l'un d...
BigData et Hadoop au secours de téraoctets de logs inexploitables chez l'un d...
 
2011 12-14 orange v1.3
2011 12-14 orange v1.32011 12-14 orange v1.3
2011 12-14 orange v1.3
 
Un géoportail “responsive” - mythe ou réalité ? Geosummit 2014
Un géoportail “responsive” - mythe ou réalité ? Geosummit 2014Un géoportail “responsive” - mythe ou réalité ? Geosummit 2014
Un géoportail “responsive” - mythe ou réalité ? Geosummit 2014
 

Plus de Loic Ortola

The rise of JS
The rise of JSThe rise of JS
The rise of JS
Loic Ortola
 
Modern DevOps - kill the bottleneck (part 1/2)
Modern DevOps - kill the bottleneck (part 1/2)Modern DevOps - kill the bottleneck (part 1/2)
Modern DevOps - kill the bottleneck (part 1/2)
Loic Ortola
 
Jawg maurice vs google maps
Jawg   maurice vs google mapsJawg   maurice vs google maps
Jawg maurice vs google maps
Loic Ortola
 
Native vs Hybrid - Options to develop your mobile application
Native vs Hybrid - Options to develop your mobile applicationNative vs Hybrid - Options to develop your mobile application
Native vs Hybrid - Options to develop your mobile application
Loic Ortola
 
Bringing Openstreetmap Mobile edition to the next level
Bringing Openstreetmap Mobile edition to the next levelBringing Openstreetmap Mobile edition to the next level
Bringing Openstreetmap Mobile edition to the next level
Loic Ortola
 
CatDroid talk: thinking different, sharing ideas
CatDroid talk: thinking different, sharing ideasCatDroid talk: thinking different, sharing ideas
CatDroid talk: thinking different, sharing ideas
Loic Ortola
 

Plus de Loic Ortola (6)

The rise of JS
The rise of JSThe rise of JS
The rise of JS
 
Modern DevOps - kill the bottleneck (part 1/2)
Modern DevOps - kill the bottleneck (part 1/2)Modern DevOps - kill the bottleneck (part 1/2)
Modern DevOps - kill the bottleneck (part 1/2)
 
Jawg maurice vs google maps
Jawg   maurice vs google mapsJawg   maurice vs google maps
Jawg maurice vs google maps
 
Native vs Hybrid - Options to develop your mobile application
Native vs Hybrid - Options to develop your mobile applicationNative vs Hybrid - Options to develop your mobile application
Native vs Hybrid - Options to develop your mobile application
 
Bringing Openstreetmap Mobile edition to the next level
Bringing Openstreetmap Mobile edition to the next levelBringing Openstreetmap Mobile edition to the next level
Bringing Openstreetmap Mobile edition to the next level
 
CatDroid talk: thinking different, sharing ideas
CatDroid talk: thinking different, sharing ideasCatDroid talk: thinking different, sharing ideas
CatDroid talk: thinking different, sharing ideas
 

Map as a Service OVH Summit 2016