Changeset 69 for trunk/workshop-routing-foss4g/chapters/osm2pgrouting.rst
- Timestamp:
- 01/04/2012 21:39:01 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/workshop-routing-foss4g/chapters/osm2pgrouting.rst
r63 r69 1 1 ============================================================================================================== 2 osm2pgrouting Import Tool 2 Outils d'import osm2pgrouting 3 3 ============================================================================================================== 4 4 5 **osm2pgrouting** is a command line tool that makes it very easy to import OpenStreetMap data into a pgRouting database. It builds the routing network topology automatically and creates tables for feature types and road classes. osm2pgrouting was primarily written by Daniel Wendt and is currently hosted on the pgRouting project site: http://www.pgrouting.org/docs/tools/osm2pgrouting.html5 **osm2pgrouting** est un outils en ligne de commande qui rend simple l'importation de données OpenStreetMap dans une base de données pgRouting. Il contruit le réseau routier automatiquement et crée les tables pour les types de données et les classes de routes. osm2pgrouting a été écrit initialement par Daniel Wendt et est maintenant disponible sur le site du projet pgRouting : http://www.pgrouting.org/docs/tools/osm2pgrouting.html 6 6 7 7 .. note:: 8 8 9 There are some limitations, especially regarding the network size. The current version of osm2pgrouting needs to load all data into memory, which makes it fast but also requires a lot or memory for large datasets. An alternative tool to osm2pgrouting without the network size limitation is **osm2po** (http://osm2po.de). It's available under"Freeware License".9 Il y a quelques limitations, particuliÚrement par rapport à la taille du réseay. La version actuelle nécessite le chargement en mémoire de l'ensemble des données, ce qui le rend rapide mais consome aussi beaucoup de mémoire pour les gros enesemble d'objets. Un outils alternatif n'ayant pas de limitation sur la taille du réseauest **osm2po** (http://osm2po.de). Il est disponible sous licence "Freeware License". 10 10 11 11 12 Raw OpenStreetMap data contains much more features and information than need for routing. Also the format is not suitable for pgRouting out-of-the-box. An ``.osm`` XML file consists of three major feature types:12 Les données brutres d'OpenStreetMap contiennent bien plus d'éléments et d'informations qu'il est nécessaire pour du routage. Ainsi le format n'est pas utilisable tel-quel avec pgRouting. Un fichier XML ``.osm`` contient trois types de données majeurs : 13 13 14 * no des15 * ways14 * noeuds 15 * chemins 16 16 * relations 17 17 18 The data of sampledata.osm for example looks like this:18 Les données de sampledata.osm par exemple ressemble à ce qui suit : 19 19 20 20 .. literalinclude:: code/osm_sample.osm 21 21 :language: xml 22 22 23 Detailed description of all possible OpenStretMap types and classes can be found here:http://wiki.openstreetmap.org/index.php/Map_features.23 Une description détaillée de tout les types et classes possibles d'OpenStreetMap peuvent-être trouvé ici : http://wiki.openstreetmap.org/index.php/Map_features. 24 24 25 When using osm2pgrouting, we take only nodes and ways of types and classes specified in ``mapconfig.xml`` file that will be imported into the routing database:25 Lorsuqe vous utilisez osm2pgrouting, nous devons conserver uniquement les noeuds et les chemin ayant pour types et classes celles stipulée dans le fichier ``mapconfig.xml`` qui seront improtés dans notre base de données routing : 26 26 27 27 .. literalinclude:: code/mapconfig_sample.xml 28 28 :language: xml 29 29 30 The default ``mapconfig.xml`` is installed in``/usr/share/osm2pgrouting/``.30 Le fichier ``mapconfig.xml``par défaut est installé dans le répertoire : ``/usr/share/osm2pgrouting/``. 31 31 32 32 33 33 ------------------------------------------------------------------------------------------------------------- 34 Cr eate routing database34 Création de la base de données routing 35 35 ------------------------------------------------------------------------------------------------------------- 36 36 37 Before we can run osm2pgrouting we have to create a database and load PostGIS and pgRouting functions into this database. 38 If you have installed the template databases as described in the previous chapter, creating a pgRouting-ready database is done with a single command. Open a terminal window and run: 37 Avant de lancer osm2pgrouting nous devons créer la base de données et y charger les fonctionalités de PostGIS et pgRouting . 38 Si vous avez installé le modÚle de base de données comme décrit dans le chapitre précédent, créer une base de données prête à utiliser pgRouting est fait par une simple commande. Ouvrez une fenêtre de terminal et utiliser la commande suivante : 39 39 40 40 .. code-block:: bash … … 42 42 createdb -U postgres -T template_routing routing 43 43 44 ... and you're done.44 ... vous avez terminé. 45 45 46 Alternativly you can use **PgAdmin III** and SQL commands. Start PgAdmin III (available on the LiveDVD), connect to any database and open the SQL Editor and then run the following SQL command:46 Une alternative consiste à utiliser l'outil **PgAdmin III** et des requêtes SQL. Démarrez PgAdmin III (disponible sur le LiveDVD), connectez vous à une base de données eyt ouvrez l'éditeur de requêtes afin d'y saisir les requêtes SQL suivantes : 47 47 48 48 .. code-block:: sql 49 49 50 -- create routing database50 -- Créationde la base routing 51 51 CREATE DATABASE "routing" TEMPLATE "template_routing"; 52 52 53 53 54 Otherwise you need to manually load several files into your database. See:ref:`previous chapter <installation_load_functions>`.54 Sinon, vous devez manuellement charger différents fichier dans la base de données. Voir : :ref:`previous chapter <installation_load_functions>`. 55 55 56 56 57 57 ------------------------------------------------------------------------------------------------------------- 58 Runosm2pgrouting58 Utiliser osm2pgrouting 59 59 ------------------------------------------------------------------------------------------------------------- 60 60 61 The next step is to run ``osm2pgrouting`` converter, which is a command line tool, so you need to open a terminal window.61 La prochaine étape c'est de lancer l'outil ``osm2pgrouting``, qui est un outil en ligne de commande, donc vous devrez l'utiliser depuis une fenêtre de terminal. 62 62 63 We take the default ``mapconfig.xml`` configuration file and the ``routing`` database we created before. Furthermore we take ``~/Desktop/pgrouting-workshop/data/sampledata.osm`` as raw data. This file contains only OSM data from downtown Denver to speed up data processing time.63 Nous prendrons par défaut le fichier de configuration ``mapconfig.xml`` et la base de données ``routing`` que nous avons créer précédemment. De plus nous prendrons le fichier ``~/Desktop/pgrouting-workshop/data/sampledata.osm`` comme données brutes. Ce fichier contient seulement les données OSM du centre ville de Denver afin d'accélérer le processus de chargement des données. 64 64 65 The workshop data is available as compressed file, which needs to be extracted first either using file manager or with this command:65 Les données sont disponibles au format compressé, qui doit donc être décompressé soit en utlisant un navigateur de fichier soit en utilisant la commande suivante : 66 66 67 67 .. code-block:: bash … … 70 70 tar -xvzf data.tar.gz 71 71 72 Then run the converter:72 Lancer ensuite l'outil : 73 73 74 74 .. code-block:: bash … … 80 80 -clean 81 81 82 List of all possible parameters:82 List des paramÚtres possible : 83 83 84 84 .. list-table:: 85 85 :widths: 15 15 60 10 86 86 87 * - **Param eter**88 - **Val ue**89 - **D escription**90 - **Requi red**87 * - **ParamÚtre** 88 - **Valeur** 89 - **Déscription** 90 - **Requis** 91 91 * - -file 92 - <fi le>93 - name of your osm xml file92 - <fichier> 93 - le nom du fichier XML .osm 94 94 - yes 95 95 * - -dbname 96 - < dbname>97 - name of your database96 - <nom_de_base> 97 - le nom de votre base de données 98 98 - yes 99 99 * - -user 100 - <u ser>101 - name of the user, which have write access to the database100 - <utilisateur> 101 - le nom de l'utilisateur, qui a le droit d'accÚs en écriture sur la base de données 102 102 - yes 103 103 * - -conf 104 - <fi le>105 - name of your configuration xml file104 - <fichier> 105 - le nom du fichier XML de configuration 106 106 - yes 107 107 * - -host 108 - <h ost>109 - host of your postgresql database (default: 127.0.0.1)108 - <hÃŽte> 109 - l'hÃŽte de votre base de données postgresql (par défaut : 127.0.0.1) 110 110 - no 111 111 * - -port 112 112 - <port> 113 - port of your database (default: 5432)113 - le numéro de port de votre serveur de base de données(par défaut: 5432) 114 114 - no 115 115 * - -passwd 116 - < passwd>117 - password for database access116 - <mot_de_passe> 117 - le mot de passe pour se connecter à la base de données 118 118 - no 119 119 * - -clean 120 120 - 121 - drop peviously created tables121 - Suprrimer les tables précédemment créées 122 122 - no 123 123 124 124 .. note:: 125 125 126 If you get permission denied error for postgres users you can set connection method to ``trust`` in ``/etc/postgresql/8.4/main/pg_hba.conf`` and restart PostgreSQL server with``sudo service postgresql-8.4 restart``.126 Si vous obtenez un message d'erreur relatif aux droits de l'utilisateur postgres, vous pouvez définir la méthode comme ``trust`` dans le fichier ``/etc/postgresql/8.4/main/pg_hba.conf`` et redémarrer le serveur PostgreSQL avec la commande ``sudo service postgresql-8.4 restart``. 127 127 128 128 129 Depending on the size of your network the calculation and import may take a while. After it's finished connect to your database and check the tables that should have been created:129 Suivant la taille de votre réseau le temps de cacul et d'importation de données peut être long. Une fois terminé, connectez à votre base de données et vérifiez les tables qui aurait du être créées : 130 130 131 .. rubric:: Run: ``psql -U postgres -d routing -c "\d"``131 .. rubric:: Lancer: ``psql -U postgres -d routing -c "\d"`` 132 132 133 If everything went well the result should look like this:133 Si tout se passe bien, le résultat devrait ressembler à ceci : 134 134 135 135 .. code-block:: sql
Note: See TracChangeset
for help on using the changeset viewer.