Je n'avais pas noté la remarque de yann, mais il m'a permis moi aussi de mieux 
comprendre un comportement que je n'expliquait pas, je tente d'éclairer un 
peu :

> Le mercredi 23 septembre 2009, à 01:34:26 +0200, Yann a écrit :
> > Les index, à ma connaissance ils faut les faire à la main, et les
> > recréer après chaque import puisque les tables sont supprimées puis
> > recréées. 
Ce n'est plus la peine, osm2pgsql se charge de créer automatiquement après 
chaque import de table :
- un index spatial sur le champ "way"
- un index arbre binaire sur le champ "osm_id"

> > côté, c'est un index totalement incompatible avec l'index geographique
> > utilisé pour connaitre la liste des objets pertinents dans la bbox. 
et c'est ça que je comprend mieux maintenant ! J'avais cru naïvement que l'on 
pouvait utiliser un index spatial, cumulé à un arbre binaire sur les types de 
champs. (J'avoue y avoir réfléchi au niveau programmation sans arriver à me 
convaincre que c'était possible, mais bon, c'est des magiciens ceux qui 
codent postgis alors pourquoi pas)

Et finalement, après avoir tenté quelques bench, et avec des index de partout, 
les performances étaient bien moindre dans la majorité des cas (sauf bien sûr 
dans le cas où on utilises pas de contraintes spatiales)


Le dimanche 27 septembre 2009 22:41, arno a écrit :
> J'ai pas compris cette histoire d'index. Après avoir importé les données
> avec osm2pgsql, j'ai un index pour la table planet_osm_point
>
> osm=> \d planet_osm_point_index
> Index "public.planet_osm_point_index"
> Column | Type
> --------+-------
> way    | box2d
> gist, for table "public.planet_osm_point"

Tu dois en avoir un autre aussi :
gis=# \d planet_osm_point
Indexes:
    "planet_osm2_point_index" gist (way)
    "planet_osm2_point_pkey" btree (osm_id)


> Est-ce que c'est cet index dont vous parlez ?
Non, je m'étais trompé, je parlais des indexes que osm2pgsql n'ajoute pas, et 
pour cause, c'est moins performant dans le cas de requête avec bbox 
(utilisation première du shéma de base par osm2pgsql)

Il s'agissait d'indexes qu'on aurait pu ajouter sur le champ amenity par 
exemple afin de trouver plus rapidement les fontaines.

--
sly

_______________________________________________
Talk-fr mailing list
Talk-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-fr

Répondre à