Suite

Création de mon propre serveur cartographique - avec la vitesse routière et le géocodage inversé - à l'aide des données OSM


Actuellement, j'utilise quelques services pour la cartographie/le codage géo inversé/les vitesses sur route

1 open.mapquestapi.com/geocoding - géocodage inversé (généralement le nom de la rue)

2 api.geonames.org - obtenir le nom du POI (par exemple, University of Blah)

3 www.overpass-api.de - obtient la vitesse sur route

4 Mapbox - Cartographie.

Toutes les données ci-dessus sont des données OSM (je pense)

Cela a bien fonctionné avec de plus petits nombres sur dev, mais maintenant la base d'utilisateurs a augmenté, nous utilisons notre quota gratuit et payons ou faisons mon propre serveur avec cette information

C'est une question de haut niveau, mais si je devais créer mon propre serveur de cartes, pourrais-je avoir toutes ces données sur un seul serveur et le faire renvoyer mes cartes de style personnalisé (j'aime le style des rues skobbler/mapbox) POI/Noms de routes ?

Je suis un serveur Windows, je vais donc devoir acquérir de nouvelles compétences. J'ai donc pensé qu'il valait mieux poser ici des questions sur les obstacles que je rencontrerais avec ce qui précède sur un serveur en tant que services multiples ?

Je suppose que j'aurai besoin d'une importation nocturne des données OSM pour les maintenir à jour aussi.


Si vous déployez un projet qui semble réussir, il est toujours préférable de créer votre propre serveur. Cela coûte du travail mais vous avez tout sous contrôle et vous êtes indépendant des autres. Puisqu'il s'agit d'une question de haut niveau, des conseils de haut niveau.

  1. Si vous avez besoin de tuiles simples pour les applications, mapnik+osm2pgsql+postgis fera le travail
  2. Si vous avez besoin de wms(c), wfs (ou alors… ) ce sera geoserver+osm2pgsql+postgis et quelques vues sur la base de données
  3. Dans les deux cas, vous pouvez créer votre propre style de rendu et vous avez des informations sur les restrictions (limite de vitesse) dans la base de données
  4. Rev-geocoding des noms de rue est aussi simple que d'écrire une requête SQL (sélectionnez l'ordre des rues par limite de distance 1) et un code php simple qui exécutera cette requête et renverra le résultat
  5. Osmosis+osm2pgsql gardera votre base de données à jour - un simple script exécuté par crone.

Malheureusement, l'environnement natif de tous ces logiciels est Linux, mais il existe de nombreuses documentations sur le net, y compris des didacticiels pas à pas, ce n'est donc pas aussi difficile que cela. Quand j'ai commencé, la seule chose que je savais sur Linux et PostgreSQL était comment l'épeler - une douzaine de mois plus tard, je déployais ce genre de serveurs pour le petit-déjeuner, donc ça ne peut pas être difficile.


Voir la vidéo: Geocoding Addresses with Python GeoPandas (Octobre 2021).