Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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

Printemps des cartes 2024

#1 Wed 03 December 2014 11:43

lcros
Participant occasionnel
Lieu: toulouse
Date d'inscription: 12 Oct 2009
Messages: 20

OpenStreetMap performance du serveur BD

Bonjour,

  J'ai un serveur applicatif de 8Go et 4 cpu et un serveur de BD postgresql 9.3 avec 8Go et 4cpu

J'utilise nginx, gunicorn (1 serveur web et 4 workers).

J'ai testé sur la donnée de corse et j'ai de très bonne réponse.

J'ai inséré les données totale : fichier planet.

J'ai effectué des tests et du zoom 1 au zoom 10, j'ai des timeout du serveur gunicorn et c'est très lent.
Au delà du zoom 12 les réponses sont meilleures.

Mon problème est le serveur de BD : est-ce un problème d'un index pas créé ou partiellement créé ou juste ma conf du serveur qui n'est pas bonne.

Je met le résultat de la commande top quand je génère des tuiles en zoom 4 :

Code:

top - 10:40:07 up 1 day, 20:34,  1 user,  load average: 4.22, 1.92, 0.76
Tasks: 139 total,   2 running, 137 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.4%us,  0.7%sy,  0.0%ni, 42.5%id, 56.3%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   8200028k total,  8147392k used,    52636k free,     8732k buffers
Swap:  1464312k total,    13040k used,  1451272k free,  8007000k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                      
11443 postgres  20   0 2069m 193m 187m D    1  2.4   0:01.14 postgres                                     
11453 postgres  20   0 2075m 159m 149m D    1  2.0   0:00.68 postgres                                     
 2526 postgres  20   0 2045m 2688 1048 S    0  0.0   0:10.33 postgres                                     
    1 root      20   0  8664  684  648 S    0  0.0   0:01.89 init

Je vous mets la conf de postgresql.conf (faite par le soft pgtune) :

Code:

# Add settings for extensions here
default_statistics_target = 50 # pgtune wizard 2014-11-27
constraint_exclusion = on # pgtune wizard 2014-11-27
checkpoint_completion_target = 0.9 # pgtune wizard 2014-11-27
checkpoint_segments = 16 # pgtune wizard 2014-11-27
max_connections = 80 # pgtune wizard 2014-11-27
maintenance_work_mem = 480MB # pgtune wizard 2014-12-01
effective_cache_size = 5632MB # pgtune wizard 2014-12-01
work_mem = 48MB # pgtune wizard 2014-12-01
wal_buffers = 8MB # pgtune wizard 2014-12-01
shared_buffers = 1920MB # pgtune wizard 2014-12-01

Dernière modification par lcros (Wed 03 December 2014 11:53)

Hors ligne

 

#2 Wed 03 December 2014 16:23

Dof
Participant assidu
Lieu: Grenoble
Date d'inscription: 28 Oct 2009
Messages: 317
Site web

Re: OpenStreetMap performance du serveur BD

Bonjour,
Vous en faites quoi de ces données? Vous générez des tuiles? Si oui comment et avec quoi?

Hors ligne

 

#3 Wed 03 December 2014 16:43

lcros
Participant occasionnel
Lieu: toulouse
Date d'inscription: 12 Oct 2009
Messages: 20

Re: OpenStreetMap performance du serveur BD

Merci pour votre réponse.

Je créé des tuiles en utilisant mapnik qui génère des tuiles en 256.
Pour la partie serveur web j'ai nginx, gunicorn et tilestache.
Pour la partie client j'ai une page openlayers.

  Laurent.

Hors ligne

 

#4 Wed 03 December 2014 16:45

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9855
Site web

Re: OpenStreetMap performance du serveur BD

Bonjour,

Une réponse rapide :
1. vous avez optimiser Postgresql autrement que par pgTune (qui n'est pas à jour au niveau des optimisations)
2. comment avez vous importé les données osm ? Peut être que vous avez trop d'information dans les tables, alourdissant le serveur pour rien.
3. avez vous logué les requêtes SQL ? Si oui quels sont celles qui sont lentes ? Avez vous essayer un EXPLAIN ?
4. avez vous vérifié vos index et vos statistiques ?
5. vous utilisez quoi comme serveur carto ? (idem question Dof)

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#5 Wed 03 December 2014 18:12

lcros
Participant occasionnel
Lieu: toulouse
Date d'inscription: 12 Oct 2009
Messages: 20

Re: OpenStreetMap performance du serveur BD

Merci Yves pour cette réponse :

1. Je ne connais que pgtune. Si vous en connaissez un autre ou si vous pouvez me dire comment faire pour mettre une valeur pertinente à chaque paramètre je suis preneur.
2. Le besoin de ma société est de tout avoir en terme de données.
3. Je ne sais pas comment voir les requêtes que mapnik execute.
4.Je viens de faire tourner le statement

Code:

"analyse;"

sur mon serveur de BD, mais je ne sais pas comment l'utiliser et voir si mes index créés par osm2pgsql sont pertinents.
J'ai trouvé ce lien sur le web pour améliorer les requêtes sql de osm.xml :  https://github.com/mapnik/mapnik/wiki/O … ithPostGIS

Une grosse piste d'amélioration est de passer par des tuiles de 512*512, j'ai changé la conf de  Tilestache pour générer des tuiles de 512 et a openlayers de faire des requetes de 512 mais les images générés sont trop au nord : il y a un problème de position.

Merci et bonne soirée,

  laurent.

Dernière modification par lcros (Wed 03 December 2014 18:16)

Hors ligne

 

Pied de page des forums

Powered by FluxBB