Annonce
Pour sa 21ème année, l’association GeoRezo a toujours besoin de vous !
10€ = 1 mois de frais bancaires ; 15€ = 12 mois de nom de domaine ; 30€ = 1 semaine de location des serveurs …
Retrouver nos membres bienfaiteurs
#1 Tue 16 July 2019 18:43
- Hopla
- Juste Inscrit !
- Date d'inscription: 16 Jul 2019
- Messages: 2
Import OSM - osm2pgsql
Bonjour,
Je tente d'importer des données OSM dans une base PostgreSQL/PostGIS mais je rencontre quelques difficultés ...
J'ai bien entendu lu les autres post du forum à ce propos, et farfouillé sur le net à la recherche d'une solution. Mais rien de bien probant pour le moment.
Je suis sur Ubuntu (18.04), j'utilise la dernière version de PostgreSQL (11) ainsi que PostGIS (2.5) et la version 0.94.0 de osm2pgsql.
Le fichier OSM (monfichier.osm.pbf) vient de Geofabrik (téléchargement la semaine dernière) et fait 300Mo.
Le pc que j'utilise à une config largement suffisante pour supporter cet import, pas de problème provenant de là.
Concernant la manière de procéder :
Code:
sudo su postgres
puis
Code:
osm2pgsql -c -d osm -U postgres -W -H localhost -P 5432 /Documents/osm/monfichier.osm.pbf
Lorsque je lance la commande précédente, le password de postgres est demandé, jusque là tout est normal.
Puis je rencontre le message d'erreur suivant :
Code:
osm2pgsql version 0.94.0 (64 bit id space) Password: Using built-in tag processing pipeline Using projection SRS 3857 (Spherical Mercator) Setting up table: planet_osm_point Setting up table: planet_osm_line Setting up table: planet_osm_polygon Setting up table: planet_osm_roads Allocating memory for dense node cache Allocating dense node cache in one big chunk Allocating memory for sparse node cache Sharing dense sparse Node-cache: cache=800MB, maxblocks=12800*65536, allocation method=3 Reading in file: /Documents/osm/monfichier.osm.pbf Using PBF parser. node cache: stored: 0(-nan%), storage efficiency: -nan% (dense blocks: 0, sparse nodes: 0), hit rate: -nan% Osm2pgsql failed due to ERROR: Open failed for '/Documents/osm/monfichier.osm.pbf': No such file or directory
J'ai conservé, par défaut,comme indiqué dans la documentation (https://www.volkerschatz.com/net/osm/os … usage.html)
-S|--style /path/to/style
Location of the osm2pgsql style file. This specifies which tags from the data get imported into database columns and which tags are dropped. Defaults to /usr/share/osm2pgsql/default.style.
Je ne comprends pas ce message d'erreur qui m'indique que osm2pgsql n'arrive pas à trouver monfichier.osm.pbf. Hors le chemin d'accès est correct et le fichier s'y trouve bien.
Je suppose qu'il me manque un petit quelque chose, mais je ne vois pas ...
Quelqu'un a-il un début de solution a m'apporter ?
Merci d'avance,
Bien cordialement.
La question concernant OSM et postgreSQL je n'ai pas su quel section du forum choisir (Géolibre VS GéoBD). En cas de mauvaise section, un admin peut-il déplacer ce message dans la bonne section ?
Hors ligne
#2 Tue 16 July 2019 19:53
- tumasgiu
- Membre
- Lieu: Ajaccio
- Date d'inscription: 5 Jul 2010
- Messages: 1160
Re: Import OSM - osm2pgsql
Salut, et bienvenu sur georezo.
êtes vous sur du chemin absolu vers votre fichier pbf ?
il ne se situerait pas plutôt dans /home/hopla/Documents/osm/monfichier.osm.pbf ?
La version chemin relatif
Code:
osm2pgsql -c -d osm -U postgres -W -H localhost -P 5432 ~/Documents/osm/monfichier.osm.pbf
Si çà n'est pas çà, certainement un problème de droit d’accès !
Un petit coup de
Code:
ls -l /Documents
pour voir les droits.
Si c'est toujours pas çà, les chemins d'accès posix sont sensibles à la casse,
c'est peut être çà.
chemins absolus vs. chemins relatifs :
http://casteyde.christian.free.fr/syste … x3198.html
Dernière modification par tumasgiu (Wed 17 July 2019 10:38)
Hors ligne
#3 Wed 17 July 2019 10:20
- Hopla
- Juste Inscrit !
- Date d'inscription: 16 Jul 2019
- Messages: 2
Re: Import OSM - osm2pgsql
Bonjour,
Merci Tumasgiu pour ces informations.
Il semble effectivement que mon erreur provienne du chemin renseigné...
Qui se situe en effet, comme vous l'avez remarqué, dans
/home/hopla/Documents/osm/monfichier.osm.pbf
Une belle erreur de débutant...
Il suffit de renseigner correctement le chemin et il semble que ça fonctionne.
Code:
osm2pgsql -c -d osm -U postgres -W -H localhost -P 5432 /home/hopla/Documents/osm/monfichier.osm.pbf
La donnée est présente dans postgreSQL :
- planet_osm_line
- planet_osm_point
- planet_osm_polygon
- planet_osm_roads
Pour autant, si la donnée est bien importée, osm2pgsql remonte une erreur à la fin de la procédure :
Code:
Osm2pgsql failed due to ERROR: Connection to database failed: FATAL: désolé, trop de clients sont déjà connectés FATAL: désolé, trop de clients sont déjà connectés
En ajoutant l'option --slim c'est ok, par contre la procédure en prend un sacré coup en terme de temps ...
Je regarde du côté des options --cache et --number-processes pour voir s'il est possible d'accélérer l'import.
Si quelqu'un a une solution ou des conseils concernant l'import d'OSM dans postgreSQL, je suis preneur.
Hors ligne
#4 Wed 17 July 2019 10:34
- tumasgiu
- Membre
- Lieu: Ajaccio
- Date d'inscription: 5 Jul 2010
- Messages: 1160
Re: Import OSM - osm2pgsql
Une belle erreur de débutant...
Même Torvalds a été un débutant un jour,
tout le monde fait ce genre d'erreur à un moment donné.
En ajoutant l'option --slim c'est ok, par contre la procédure en prend un sacré coup en terme de temps ...
Je regarde du côté des options --cache et --number-processes pour voir s'il est possible d'accélérer l'import.
Si quelqu'un a une solution ou des conseils concernant l'import d'OSM dans postgreSQL, je suis preneur.
Jamais utilisé l'outil, mais vous pouvez modifier le nombre de connexions maximum dans le fichier postgresql.conf,
qui est par défaut à 100 (l'option est max_connections).
Mais bon je suis surpris qu'il doive démarrer plus de 100 connexions pour travailler...
Vérifiez qu'il n'y a pas de connexions en attente inutiles à votre base de données.
Dernière modification par tumasgiu (Wed 17 July 2019 11:36)
Hors ligne