Bonjour, J'ai fait l'installation des outils nécessaires pour la création d'une base Postgis sous un schéma "full-history". Puis j'ai pu créer une base de données, basée sur un extrait de la zone de Nancy pour vérifier le bon fonctionnement de l'ensemble. Pas de suspens, ça fonctionne bien :-)
Bémol important : les relations ne sont pas (encore) gérées, donc pas de multi-polygons ni de relations "route" (Désolé pour ceux qui voulaient voir l'évolution des réseaux de transport public) L'outil de découpage / création de base de donnée / générateur de rendu se trouve ici https://github.com/MaZderMind/osm-history-renderer le readme renvoie vers un tutoriel https://github.com/MaZderMind/osm-history-renderer/blob/master/TUTORIAL.md Le gros morceau de l'installation est en fait d'installer Osmium, de Jochen Topf, qui remplace ici osm2pgsql. https://github.com/joto/osmium Il y a une grosse liste de packages à installer. Mais ils sont clairement décrits et chez moi c'était sans souci. Tous sont dispo sur les dépôts de packages Ubuntu. Bien entendu, il y a une exception, le dernier : OSMPBF, qui doit être compilé (une fois les autres packages installés) Une fois la compilation d'OSM Installer terminée, il n'y a plus qu'à télécharger l'extrait de son choix (Nancy, Paris et France sont déjà disponibles, et datent du 19/09/2011) et créer la base Postgis -> Les instructions sont données pour une debian 6.0.3 et Postgis 8.3 donc l'usage sur d'autres distributions demande quelques petits ajustements. Je mets en [1] les commandes que j'ai utilisées la création de la base de données sur ma config (Ubuntu 11.10 & PostgreSQL 9.1) J'ai suivi la méthode la plus simple, qui consiste à utiliser le même nom d'utilisateur que de base de données. C'est pas le top pour un usage "sérieux", et on peut utiliser l'argument --dsn dans la commande pour préciser les accès à la base de donnée (voir le readme.md [2] pour plus d'infos) J'ai fait l'opération sur le plus petit (Nancy) $wget ftp://ftp5.gwdg.de/pub/misc/openstreetmap/osm-full-history-extracts/110919/pbf/europe/france/nancy.osh.pbf $ osm-history-importer nancy.osh.pbf5 Et tout s'est passé sans encombres. J'ai fait l'essai de la requête sur les longueurs de voirie après qu'elle ait été ajustée par Peter Körner, pour coller avec le schéma de la bdd [3]. La réponse arrive quelque part entre 200 et 500 ms pour cette petite zone (je n'ai pas gardé la trace des résultats exacts, mais ça donne une idée) En ajustant la date de départ (2010-01-01 dans la requête initiale), j'ai pu observer les variations des résultats (cf. [4]) Comme par exemple la variation du kilométrage de voirie résidentielle, par incrément annuel jusqu'à la dernière date valide (18 sept. 2011) (valeurs à ne considérer qu'en relatif, puisque la projection est 900913 dans la requête) Date | km ------------------- 2008-01-01 | 78 2009-01-01 | 198 2010-01-01 | 315 2011-01-01 | 415 2011-09-18 | 594 Voilà pour les premiers essais. C'est plutôt encourageant. L'étape suivante intéressante serait de mettre en place une bdd avec l'extrait france sur un serveur osm-fr, Permettre d'y faire d'autres requêtes (par une interface de query [5] -> en lecture seule et avec un time-out of course), Présenter les résultats sous une forme attrayante sur le site principal. Il y a d'abord une contrainte d'espace disque pour la France, la base devant être un peu plus grosse que la base actuelle d'un extrait équivalent. Pas vraiment de contrainte concernant la vitesse de l'import initial et de la tenue à jour (pas de diff à appliquer) : le planet "full-history" n'est actualisé que quelques fois par an au mieux. On pourra aussi regarder plus dans le détail comment fonctionnent les rendus pour maîtriser la chaine de "production" jusqu'à obtenir une video _ dans un format libre et répandu, propre, léger, à la bonne résolution (web, HD, full HD), _ Pour une zone géographique donnée, _ Dans la période et au pas de temps la mieux adaptée. _ avec les règles de rendu de son choix (ce sont des feuilles de style xml Mapnik) ========================================================== [1] Commandes ajustées pour Ubuntu 11.10 et PostgreSQL 9.1 $sudo -u postgres createdb -E UTF8 -O fabien fabien $ sudo -u postgres createlang plpgsql fabien $ echo "CREATE EXTENSION hstore;" | psql -d fabien $ echo "CREATE EXTENSION btree_gist;" | psql -d fabien $ sudo -u postgres psql fabien </usr/share/postgresql/9.1/contrib/postgis-1.5/postgis.sql $ sudo -u postgres psql fabien </usr/share/postgresql/9.1/contrib/postgis-1.5/spatial_ref_sys.sql $ echo 'GRANT ALL ON geometry_columns TO fabien' | sudo -u postgres psql fabien $ echo 'GRANT ALL ON spatial_ref_sys TO fabien' | sudo -u postgres psql fabien $wget ftp://ftp5.gwdg.de/pub/misc/openstreetmap/osm-full-history-extracts/110919/pbf/europe/france/nancy.osh.pbf $ osm-history-importer nancy.osh.pbf5 [2] https://github.com/MaZderMind/osm-history-renderer/blob/master/README.md [3] Requête SQL select tags->'highway' AS highway, count(way), round(sum(ST_Length(way)) / 1000) as kilometers from hist_line where tags ? 'highway' AND tags->'highway' IN ( ('motorway'), ('trunk'), ('primary'), ('secondary'), ('tertiary'), ('unclassified'), ('residential'), ('track'), ('path'), ('footway') ) AND '2010-01-01' BETWEEN valid_from AND COALESCE(valid_to, '9999-12-31') group by tags->'highway'; [4] Résultats des Requête SQL 2008-01-01 "unclassified";44;19 "secondary";81;116 "primary";73;138 "track";1;1 "motorway";36;68 "trunk";2;2 "tertiary";83;58 "residential";186;78 _______________________ 2009-01-01 "unclassified";93;34 "secondary";188;166 "primary";120;159 "track";1;1 "footway";36;10 "motorway";42;64 "trunk";10;6 "tertiary";189;119 "path";3;3 "residential";582;198 _______________________ 2010-01-01 "unclassified";129;30 "secondary";254;174 "primary";117;147 "footway";216;35 "track";18;29 "motorway";47;64 "trunk";19;17 "tertiary";220;131 "path";34;30 "residential";985;315 _______________________ 2011-01-01 "unclassified";138;30 "primary";194;171 "secondary";263;191 "footway";273;40 "track";34;40 "motorway";48;64 "trunk";19;17 "tertiary";215;123 "path";102;55 "residential";1404;415 _______________________ 2011-09-18 "unclassified";156;45 "primary";207;164 "secondary";290;190 "footway";310;53 "track";78;67 "motorway";53;61 "trunk";25;23 "tertiary";280;147 "path";130;63 "residential";2102;594 [5] http://www.gis.hsr.ch/wiki/PostGIS_Terminal -- ab_fab <http://wiki.openstreetmap.org/wiki/User:Ab_fab> "Il n'y a pas de pas perdus"
_______________________________________________ dev-fr mailing list [email protected] http://lists.openstreetmap.org/listinfo/dev-fr
