Skip to content

Geoserver optimalisaties

Mark Prins edited this page Oct 13, 2017 · 4 revisions

Om gegevens uit het RSGB model te publiceren met geoserver zijn een aantal optimalisaties mogelijk; met name views die gebruikt worden om kaarten te maken profiteren hiervan.

  1. Constructie van een geometrie metadata tabel
  2. Constructie van primary key metadata tabel
  3. Meerdere geometrie kolommen

Constructie van een geometrie metadata tabel

De geometrie metadata tabel "geometry_columns" maakt het mogelijk om een geometrie type en projectie op te geven zodat dit niet uit de metadata of de indexen gelezen hoeft te worden (voor zover al mogelijk). Tevens van belang een up-to-date vulling van de USER_SDO_GEOM_METADATA (zie ook: 401_insert_spatial_view_metadata.sql)

Zie het script 402_create_geotools_geometrycolumns_metatable.sql in de utility_scripts directory voor een voorbeeld.

Na het aanmaken en vullen van de tabel moet in geoserver de tabel opgenomen worden in het invulveld "Geometry metadata table" op de , eventueel met de schema naam.

zie ook: Publishing a PostGIS view of (Oracle) Using the geometry metadata table

Constructie van primary key metadata tabel

Geoserver heeft moeite om de primary key te achterhalen/kiezen die in een view gebruikt wordt, hoewel een service wel werkt worden voor een WFS geen herleidbare feature id's gebruikt wat tot onverwachte resultaten kan leiden. Om dit te verhelpen kan een metadata tabel "gt_pk_metadata" worden gemaakt waarin de primary key is vermeld.

Zie het script 403_create_geotools_primarykey_metatable.sql in de utility_scripts directory voor een voorbeeld.

Na het aanmaken en vullen van de tabel moet in geoserver de tabel opgenomen worden in het invulveld "Primary key metadata table", eventueel met de schema naam.

Zie verder: Controlling feature ID generation in spatial databases

Geoserver connectie met geometry_columns en gt_pk_metadata tabellen

Meerdere geometrie kolommen

Indien niet anders aangegeven gebruikt geoserver de eerste geometrie kolom uit de tabel/view om de kaart te tekenen. Als een andere of specifieke geometrie kolom gebruikt moet worden kun je dit in de SLD van de laag aangeven met de volgende snippet:

<PointSymbolizer> 
  <Geometry><ogc:PropertyName>alternateGeom</ogc:PropertyName></Geometry>

Uiteraard is dit niet beperkt tot de PointSymbolizer

Voor de WFS worden altijd beide kolommen gebruikt.

Clone this wiki locally