[Talk-de] Performanceprobleme bei Mapnik/SQL

Kolossos tim.alder at s2002.tu-chemnitz.de
Do Feb 3 17:40:21 UTC 2011


Hallo, Mapnik baut um deine Abfrage noch eine
Bounding Box in die Where-Klause, in etwa in der Art:
" AND way &&
ST_Transform(ST_SetSRID(ST_MakeBox2D(ST_Point(13.5333,50.95),ST_Point(13.9333,51.15)),4326),900913))"
So kannst du dann deine Abfragen auch testen (EXPLAIN).

Generell sind die Operation in der Select-Klausel wohl eher unkritisch, 
während die Bedingungen in der Where-Klausel kritisch sind und diese 
müssen unbedingt auf einen Index zugreifen, was bei die aber der Fall zu 
sein scheint.

Grüße Tim


Am 03.02.2011 01:45, schrieb Stephan Wolff:
> Am 02.02.2011 00:01, schrieb Kolossos:
>> Vielleicht wäre es ja eine Idee erstmal einen temporären View auf
>> power=* innerhalb der BBOX zu kreieren und dann darauf in den folgenden
>> 20 Abfragen auf diesen stark reduzierten Datensatz zuzugreifen.
>
> Dafür müsste man vermutlich die Syntax des mapnik-styles um einen
> Parameter erweitern.
>
> Leider verstehe ich nicht, wie aus den x,y,z-Koordinaten und der
> SELECT-Anweisung in der xml-Datei eine SQL-Abfrage mit geografischem
> Filter entsteht.
>
> Erstaunlicherweise werden manche Tiles nicht gerendert, obwohl sie
> keine oder sehr wenige Elemente mit power=* beinhalten (z.B
> /tiles/powermap/10/536/328.png), während andere Tiles mit viel mehr
> Objekten berechnet werden (z.B. /tiles/powermap/10/537/327.png).
> Scheinbar werden viel größere Bereiche als ein Tile geografisch
> selektiert.
>
> Viele Grüße, Stephan






Mehr Informationen über die Mailingliste Talk-de