banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Wed 10 August 2005 16:31

Renaud LAIRE
Invité

Lenteur requete imbriquée POSTGIS

Bonjour à tous,

J'ai un table postgis d'un parcellaire (60 000 parcelles) contenant la géométrie et l'identifiant de la parcelle.
J'ai une autre table contenant un identifiant d'exploitation agricole et les identifiants des parcelles de cette exploitation.
Le but étant de générer avec mapscript une carte de l'exploitation ou s'affiche uniquement les parcelles concernées.
Jusque là, tout fonctionne bien, je crée une requête pour lier les deux tables avec une condition "where" sur l'identifiant de l'exploitation, la réponse avec l'éditeur SQL est immédiate sous PgAdmin.
Le problème est qu'il faut 2 à 3 minutes pour générer l'image avec MapScript !
J'ai bien essayé de créer une vue dans postgreSQL, le résultat est le même.

Ce qui est surprenant c'est que si je modifie en dur ma table postgis en rajoutant l'identifiant de l'exploitation comme colonne supplémentaire, l'affichage de l'image est instantanée.

Mais alors, que fait-il pendant ces 2 minutes, sachant que te temps CPU est occupé par postgres et non par PHP ?


Parc Livradois Forez
Renaud Laire
SI
BP 17
63880 - St Gervais /s Meymont
Tel 04 73 95 57 57
Fax 04 73 95 57 84

 

#2 Thu 11 August 2005 13:05

VILLOIN Franck DSIC BI
Invité

Re: Lenteur requete imbriquée POSTGIS

Bonjour,

Je ne connais pas bien PostGis et postgres mais le problème semble venir de
la tendance à faire un full scan  de la table des parcellaires.
Il serait peut être judicieux d'indexé ton identifiant de la parcelle pour
aider postgres à faire la jointure.
Il faudrait voir le plan d'exécution de ta requête.

Cordialement

 

#3 Mon 15 August 2005 11:15

Lionel Bargeot
Invité

Re: Lenteur requete imbriquée POSTGIS

Bonjour,

Pensez aussi à indexer spatialement votre table du parcellaire.
Mapserver cherche à utiliser l'indexation spatiale sur les tables postgis.
Ca ne vous servira pas beaucoup pour la requête que vous évoquez
ci-dessous (jointure sur l'id exploitation). Mais tôt ou tard vous
pourrez en sentir les effets, notamment pour tous les zooms et
déplacements faits avec Mapscript.

Lionel B.

 

#4 Tue 16 August 2005 10:02

Renaud LAIRE
Invité

Re: Lenteur requete imbriquée POSTGIS

Bonjour,

En effet, c'était bien un problème d'indexation ...
Merci

Parc Livradois Forez
Renaud Laire
SI
BP 17
63880 - St Gervais /s Meymont
Tel 04 73 95 57 57
Fax 04 73 95 57 84

 

Pied de page des forums

Powered by FluxBB