sly (sylvain letuffe) wrote:
>> Une page qui peut etre intéressante a lire:
>> http://wiki.postgresql.org/wiki/Updatable_views
>>     
>
> On dirait bien que j'étais justement en train de lire, parce que comme ça 
> semble être un patch "non inclus" mon postgres 8.3 fourni debian, ben il est 
> pas content :
>
> # CREATE OR replace view communes AS (select *,st_simplify(way,200) as 
> simplified_way FROM planet_osm_polygon where admin_level='8') WITH LOCAL 
> CHECK OPTION;
> ERROR:  WITH CHECK OPTION is not implemented
>
> Je vais réfléchir plusieurs fois avant de me lancer dans la compilation
>
>   
Oui, apparemment, Postgresql 8.4 devrait supporter cela.

> En plus de tenter de comprendre pourquoi j'ai les bench curieux que j'ai.
> $ time echo "select asbinary(st_simplify(way,200)) from planet_osm_polygon 
> where admin_level='8';" |  psql gis > /dev/null
>
> real    0m8.124s
> (...)
> postg...@binael:~ $ time echo "select asbinary(way) from planet_osm_polygon 
> where admin_level='8';" |  psql gis > /dev/null
>
> real    0m15.756s
>
> Comment avec opération de simplify en plus, cela peut-il être plus court !
> (a priori pas d'histoire de cache disque puisque j'ai re-tenté l'opération 
> plusieurs fois)
>
>   
L'autre raison potentielle pour laquelle c'est plus rapide est liée a
l'opération ST_AsBinary. La génération du binaire est plus court sur une
simplification de la géométrie. C'est ce qui me semble être le plus
logique.
Je pense toutefois qu'un pré calcul dans une table a part avec une
simplification qui garde la topologie serait plus intéressant. Une
fonction peut alors être utilisée pour cacher la logique; c'est propre
et efficace si tu as la bounding box. Le problème est bien sur la mise a
jour mais un trigger (ce n'est pas très beau mais bon) fera l'affaire.

> Passionnant ce postgis ;-)
>   
Oui, il y a des trucs parfois assez amusant qu'on découvre en jouant.

Émilie Laffray

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Talk-fr mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/talk-fr

Répondre à