SOTM-fr 2014 : l'outil de pré-intégration d'adresses
David MASCLET- Gisgraphy
1. Gisgraphy
David Masclet State Of The Map France 2014 - 5 Avril 2014
Framework opensource
de géolocalisation et de
géocoding
Avec les données de
OpenstreetMap et Geonames
2. A propos
David Masclet 1/15 State Of The Map France 2014 - 5 Avril 2014
David Masclet
14 ans d'éxpérience
Ingénieur de développement chez BiiiiP
Agilité, Lean, Kaïzen
35 ans, région Nord
davidmasclet@gisgraphy.com
3. Le projet
David Masclet 2/15 State Of The Map France 2014 - 5 Avril 2014
Gratuit, open source, offline, mondial, depuis 2007
http://code.google.com/p/gisgraphy/
1 développeur ;-)
V 3.2 - (V 4.0 en beta test)
6 Webservices REST + API java
1 Importeur de données avec wizard
Mise à disposition gratuite des données
1 IHM d'administration / édition / statistiques
1 appli / librairie Android : Gisgraphoid
1 module Opensearch
4. Les sites
David Masclet 3/15 State Of The Map France 2014 - 5 Avril 2014
http://www.gisgraphy.com
Un site de démo (utilisation non commerciale)
http://services.gisgraphy.com
Plusieurs millions de requêtes par mois.
Des serveurs premium (utilisation commerciale):
SLA, limites req / minute, serveur dédiés
Un site de téléchargement (250 Go) :
Un site dédié pour l'adresse parseur
http://address-parser.net
5. Coté technique
David Masclet 4/15 State Of The Map France 2014 - 5 Avril 2014
Java - Solr – Postgis
3000 tests unitaires / intégration / benchs (jmeter)
Spring – Hibernate spatial – struts2 (IHM)
8 formats de sorties pour les WS:
XML, Json, YAML, Atom, RSS / GeoRSS
PHP, Ruby, Python
Pagination, indentation, callback javascript,...
Librairies cliente (java, PHP, Client OpenGTS)
6. Les données 1/2
David Masclet 5/15 State Of The Map France 2014 - 5 Avril 2014
240 fichiers (1 / pays) + 1 fichier avec tous les pays.
1 semaine pour extraire / découper
Données Brutes :
Données OSM en PBF découpés par pays
Données extraites en CSV :
70 millions de rues : longueur, noms, formes et centre
1,6 millions villes avec limites administratives
6,4 millions Points d’intérêt – POIS
60 millions numéros de maisons
7. David Masclet 6/15 State Of The Map France 2014 - 5 Avril 2014
Les données 2/2
8. Importeur(s)
David Masclet 7/15 State Of The Map France 2014 - 5 Avril 2014
Télécharge les fichiers sur les serveurs de download
Assistant pour choisir datasets, pays, type de lieu,...
Importe Pays, Régions, villes, rues, numéros de rues, Pois
Modèle relationnel METIER et un moteur fulltext
Pour chaque n° de rue, calcule la rue,
puis la ville selon shape, ou nom
puis région et zipcode et avec ces nom alternatifs !
Grand place | 59800 | Lille | Nord
Pl du général de gaulle | | Rijsel | NPDC
9. Géocoding
David Masclet 8/15 State Of The Map France 2014 - 5 Avril 2014
Trouver les coordonnées GPS d'après une adresse
Adresse structurée ou pas
Jusqu’au numéro de maison
Analyse / parsing préalable (avec adresse parseur)
Exemple : /geocoding/geocode?address=108%20avenue%20des%20champs
%20elysees%20paris&countrycode=FR&outputformat=json&postal=true
/geocoding/geocode?streetname=rue%20des%20champs
%20elysees&housenumber=108&city=paris
10. Reverse géocoding
David Masclet 9/15 State Of The Map France 2014 - 5 Avril 2014
Trouver une adresse d'après les coordonnées GPS
Jusqu’au numéro de rues
Distance + données structurées :n°, nom (e.g : magasin),
rue, ville, région, zip, lieu commun,quartier,...)
Démo :
http://services.gisgraphy.com/public/reverse_geocoding_worldwide.html
Exemple :
http://localhost:8080/reversegeocoding/search?lat=4.5&lng=5.7
&format=json&callback=doit&indent=true
11. Recherche de rues
David Masclet 10/15 State Of The Map France 2014 - 5 Avril 2014
Trouver des rues en fonction d'un points GPS
Basé sur la formes des rues
(pas le milieu)
Restriction dans un rayon en kms, sur type de rues,
nom (contenant /commençant par, ce qui permet
L'autocomplétion).donne la distance (point le plus proche)
Tri par distance possible
Exemple : http://localhost:8080/street/streetsearch?lat=4.5&lng=5.7&radius=5000
&from=1&to=10&format=php&name=strip&indent=true
12. Recherche textuelle
David Masclet 11/15 State Of The Map France 2014 - 5 Avril 2014
Recherche de lieu en fonction d'un texte
Ville, région, zip, rues, lieu commun, POIs.
Restriction possible autour d'un point GPS, radius en
km, type(s) de lieu (e.g. : restaurant, gare, plus de 130
types différents), tous les mots requis ou pas, langue
utilisateur (plus de 2500)
Correcteur orthographique, synonymes, fuzzy,
Cyrillique, arabe,...
50 Champs de sorties possibles !!
13. Rech. à proximité
David Masclet 12/15 State Of The Map France 2014 - 5 Avril 2014
Recherche de lieu autour d'un point GPS
Restriction par type de lieu (e.g : restaurant, ville,
gares, plus de 130 types différents), radius en kms
Trié par distance
Exemple : http://localhost:8080/geoloc/findnearbylocation?
lat=4.5&lng=5.7&radius=5000&from=1&to=10&format=xml&placetype=restaurant
&indent=true&distance=true
14. Parsing d'adresses (1/2)
David Masclet 13/15 State Of The Map France 2014 - 5 Avril 2014
Analyse et parsing d'adresses postales mondiales
Standardization, déduplication, formatage, utile pour
CRM, géocoding, ...
Pas opensource mais API gratuite
http://address-parser.net
Langage naturel, pas de dépendances (hormis JVM)
Possibilité d'acheter une licence (jar ou DLL).
15. Parsing d'adresses (2/2)
David Masclet 14/15 State Of The Map France 2014 - 5 Avril 2014
Rue de Lille Dunkerque
Haute rue, saint brieux ...
Limite rue-ville ?
Appartement 10 3 rue Jean sans cœur saint jean de luz
Apt 10 3 r. Jean sans cœur 64500 St-jean-de-luz
16. Et maintenant
David Masclet 15/15 State Of The Map France 2014 - 5 Avril 2014
Github
Releaser V 4.0 (en béta test, a l'heure actuelle)
Autocomplétion
Géotagging
Amélioration des algorithmes / HADOOP - BIG data
Plugin leaflet
Fournir une alternative a Google Maps (routing, etc)
17. Le mot de la fin
David Masclet State Of The Map France 2014 - 5 Avril 2014
Merci !!
...Des questions ?