This presentation will provide an introduction to the GeoServer project and its abilities to publish data with a mix of well known OGC protocols and other pupolar protocol and data formats, including:
* Setting up vector and raster data from the GeoServer administration control
* Publishing data via WMS, WFS and WCS
* Styling layers using desktop tools, with a carousel of GeoServer mapping abilities
* Tile caching with WMTS
* Moving to data processing with WPS
* Brief introduction to security
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
GeoServer, an introduction for beginners
1. GeoServer
an introduction for beginners
Ing. Andrea Aime, GeoSolutions
Ing. Simone Giannecchini, GeoSolutions
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
2. GeoSolutions
Founded in Italy in late 2006
Expertise
• Image Processing, GeoSpatial Data Fusion
• Java, Java Enterprise, C++, Python
• JPEG2000, JPIP, Advanced 2D visualization
Supporting/Developing FOSS4G projects
MapStore, GeoServer
GeoNetwork, GeoTools, GeoBatch,
ImageIO-Ext and more: https://github.com/geosolutions-it
Focus on Consultancy
PAs, NGOs, private companies, etc…
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
3. Outline
Quick intro to GeoServer
Basic concepts, administration GUI and
REST
WMS / WFS / WCS / WPS
Security
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
4. GeoServer
GeoSpatial enterprise gateway
Java Enterprise
Management and Dissemination of
raster and vector data
Standards compliant
OGC WCS 1.0, 1.1.1 (RI), 2.0
OGC WFS 1.0, 1.1 (RI), 2.0
OGC WMS 1.1.1, 1.3
OGC WPS 1.0.0
Google Earth/Maps support
KML, GeoSearch, etc..
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
7. Workspaces: organizational structure/folder/
virtual services
Stores: connections to data sources
Layers: the data and its configuration
Styles: how to draw it
LayerGroups: ready to use maps
Processes
Services: per service config details
Security
Key Concepts
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
8. Virtual Services
Expose different OGC services per workspace
Styles and layer groups per workspace
Have different
administrators per
workspace
multi-tenancy
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
15. RESTful Configuration
Programmatic configuration of layers via REST
calls
Workspaces, Data stores / coverage stores
Layers and Styles, Service configurations
Freemarker templates
Exposing internal configuration to remote clients
Ajax - JavaScript friendly
Various client libraries available in different
languages (Java, Python, Ruby, …).
Example, geoserver-manager:
https://github.com/geosolutions-it/geoserver-manager
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
16. RESTful Configuration example
Automate management of layers and their
configuration
Get and
process data
Publish
new layers
via REST config
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
17. WMS
Dissemination of Maps
Fusing raster and vector data seamlessly
Rule/scale driven rendering
WMS 1.1.1 and 1.3 support
Time/elevation/custom dimension support
SLD
Basic support for SLD 1.1 and SE 1.1
Full support for SLD 1.0
CSS extension for compact styling
Many rendering extensions available
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
21. WMS: TIME and ELEVATION
TIME = 20100512T0000000Z
ELEVATION = 0.0
FeatureType Editor
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
22. WMS: Rendering Transformations
On-the-fly data transformations
Calling spatial analysis processes from SLD docs
Optimized for performance
Examples: on the fly contour lines, heat maps,
point clustering, point interpolation, GCP based
image rectification
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
23. GeoWebCache Integration
GeoServer
GeoWebCache
Persistent raster/KML
tile cache
Direct calls to GeoServer
rendering engine
Support for layers modified
through WFS-T
Support for various tile
protocols
GMap, Gearth
OpenLayers, VEarth,
Bing
Speed-up factor 10/100
Disk quota support
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
26. WFS
Dissemination and filtering of vector data
WFS 1.0, 1.1 and 2.0 (since 2.2.0)
Transaction and paging available in all versions
Simplified filtering via CQL
Formats:
GML 2, 3.1 and 3.2
CSV, Excel spreadsheet, GeoRSS, GeoJSON
Shapefile (zipped)
Any other format supported by ogr2ogr (configurable)
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
27. Rich Filtering Support
Full standard filter support
Scalar (<, <=, >, >=, =, !=, like)
Temporal
Spatial (intersections, touch, dwithin, dbeyond, …)
Filters directly translated into native data source filtering
(e.g., SQL for spatial databases, OGC Filter for WFS
cascading, SDE filters, ….)
Rich set of filter functions for advanced filtering (do math
and string manipuation in your filters):
http://docs.geoserver.org/stable/en/user/filter/function_refe
rence.html
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
28. More data access options
Paging (native in WFS 2.0, back-ported to other
versions as a vendor extension)
Joins (scalar, temporal, spatial) between feature
types (WFS 2.0)
Stored queries (WFS 2.0)
Reprojection
Various built-in output formats (GML2/3.1/3.2,
shapefile, geojson, csv, excel)
More can be added via ogr2ogr or by programming
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
29. WFS-Transactional
Modify your data from your remote client (desktop,
web or mobile)
WFS-T WMS
Edit with desktop client
and commit changes
All protocols will
Immediately see
the updates
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
30. Complex Features support
Application/community
schemas
Complex Features
Attributes as sub-
features
Attributes as list of
features
Tree-like structure
Mixing in a single tree heterogeneous data sources
Optimizations if everything is in the same DBMS
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
32. WCS
Raster data dissemination
Raw raster data useful for analysis, no maps!
Support for TIME and ELEVATION (via ImageMosaic plugin)
WCS 1.0, 1.1.1 and 2.0
Output formats
GeoTiff, ArcGrid
NetCDF
Extensions
ELEVATION as band management
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
33. WCS features
Everything needed to support the WCS 2.0 Earth
Observation profile:
Trimming (spatially , temporally, and on custom
dimensions too as a vendor extension)
Band subsetting
Reprojection
GeoTiff output control (tiling, compression, …)
Description of NetCDF/mosaics as EO datasets (list of
all the internal slices)
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
37. WPS
WPS 1.0
Official Extension
Raster and Vector data support
Many built-in processer (almost 100):
Vector and geometric analysis
Raster based
Conversions processes (raster vector)
Tight integration with local data and map rendering
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
38. An example
Buffer a L shaped
geometry with
distance “2”
Get the result
back as GML
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
40. Synchronous vs asynchronous
WPS
client
WPS
Launch
process
Send back
results
Simple
Suitable for fast executions
Synchronous
WPS
client
WPS
Launch process
Status URL
Check progress
50%
Check progress
100%
Results inline
Link to results
More complex
Suitable for longer computations
Asynchronous
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
45. Authentication mechanism mix per URL
Different access paths need different auth
mechanisms (GUI vs REST vs OGC service):
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
46. Basic data access security
Simple built-in role and layer based data access:
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
47. Basic service access security
Simple built-in role and service based data access:
FOSS4G-Europe 2014, Bremen
14th-17th July 2014
48. Advanced security via external tools
https://github.com/geosolutions-it/geofence
FOSS4G-Europe 2014, Bremen
14th-17th July 2014