Introduction
The ArcSDE connection in FEWS relies on the open source GeoTools 2.5.5 library to connect to an ESRI ArcSDE or WFS server.
http://docs.codehaus.org/display/GEOTDOC/ArcSDE+DataStore
http://docs.codehaus.org/display/GEOTDOC/WFS+Plugin
There is an open source GIS system, named uDig (http://udig.refractions.net/) that is based on GeoTools. With this application GeoTools can be used outside FEWS and the ArcSDE WFS connection can be tested. uDig provides an wizard to setup the connection.
...
FEWS uses it's own implementations to render shape and grids to achieve the performance of the maps and grids we see today. FEWS also provides a shape highlighting feature not easy to migrate to GeoTools.The implementation of the
ArcSDE connection in GeoTools 2.5.5 is too slow to use without caching and background loading. These caching is not provided by the used GeoTools 2.5.5. A year later GeoTools 2.7.0 (sep 2010) is released that mentioned strong improved ArcSDE performance and added support for cachingSince 2023.01 ArcSDE protocol is no longer supported. ESRI GeoServer supports the WFS protocol besides the ARCSDE protocol.
FEWS Shape Tile Cache
A (remote) layer is divided virtually in a maximum of 64 tiles and a minimum of 200 shapes on average per tile. These tiles are downloaded on demand as soon the user pans/zooms to the area of his interest. To reduce the load on the remote server, network and to improve the performance the downloaded tiles are cached on a file system (directory). When a repaint is requested for a tile and the tile is available in the cache the tile from the cache will be used to perform the repaint.
Updating cached tiles
All updates done to a remote layer are visible the next day to the FEWS users. GMT 0.00 is seen as the start of a new day. All tiles not downloaded today are invalidated. When a repaint of an outdated tile is requested this tile is re-downloaded in the background. While a tile is downloaded the text CACHING appear in the lower left of the map. While downloading the outdated tile is displayed.
Sharing caches
To reduce the load on the ArcSDE geo server even more multiple FEWS OC/SA systems can share the same tile cache. When multiple users are interested in the same area of a remote layer the area is downloaded from the server once and not for every user separately.
When a tile is repainted and downloaded earlier today the tile will not be re-downloaded but the tile from the cache will be used.
Cache Shape files on a file system instead of
...
WFS remote layers.
A tile cache can also be used when a layer is connected to a shape file located on a (network) file system. A shape tile cache to a shape file can strongly reduce the memory usage of FEWS. In the FEWS about box the amount of memory used by the shape layers is displayed. When the shape memory usage is more than 50MB it can be worthwhile to setup a map cache. Tiles are removed from memory when they are no longer visible. Both shape file and the tile cache it self can be located on a network drive and shared by multiple users at the same time. Using a tile cache can also reduce the network load when a shape file is located on a network drive. A tile is not recreated as long the time stamp of a shape file is not modified. It is important that detailed layers become visible at a appropriate zoom level so not too much tiles are visible at the same time.
Configuration
In a map in the explorer or spatial display configuration it is possible to define one or more connections.
<arcSdeConnecton id="sde">
<server>iris2</server>
<port>5154</port>
<database>irist</database>
<user>me</user>
<password>123</password>
</arcSdeConnecton>
...
Code Block | ||
---|---|---|
| ||
<wfsConnection id="wfs"> |
...
<url>http://sigma.openplans.org/geoserver/ows?service=WFS&request= |
...
GetCapabilities</url> |
...
</ |
...
wfsConnection>
|
The a layer can be added to the map this way:
Code Block |
---|
<serverShapeLayer id="test4"> <connectionId>sde</ |
...
connectionId> <layerId>INTWIS2.ODS_GEO_KADASTRALE_PERCELEN</layerId> <visible>true</ |
...
visible> <lineColor>black</ |
...
lineColor> <fillColor>white</ |
...
fillColor> </serverShapeLayer> |
To see with layer ids are available you can download the earlier mentioned opensource gis http://udig.refractions.net/
A global property "mapLayersCacheDir " is required to setup the map cache.
No Format |
---|
mapLayersCacheDir=%REGION_HOME%/mapLayersCacheDir
|
...