GeoServer
The Open Source Solution
for the interoperable management
of geospatial data
Ing. Alessio Fabiani, GeoSolutions
...
Outline


Who is GeoSolutions?



Quick intro to GeoServer



What’s new in the 2.2.x series



What’s new in the 2.3....
GeoSolutions


Founded in Italy in late 2006



Expertise
•

•

Java, Java Enterprise, C++, Python

•


Image Processin...
GeoServer quick intro
GeoServer


GeoSpatial enterprise gateway
Java Enterprise
Management and Dissemination of
raster and vector data



Stan...
PostGIS
Oracle
H2
DB2
SQL Server
MySql
Spatialite
GeoCouch

WMS
1.1.1
1.3.0

Vector files

Google

DBMS

ArcSDE
WFS
Server...
Virtual services


Expose different OGC services per workspace



Styles and layer groups per workspace



Have differe...
WMS


Dissemination of Maps


Fusing raster and vector data seamlessly



Rule/scale driven rendering



WMS 1.1.1 and...
Rendering

GFOSS Day 2013, Bologna
October 11th, 2013
GeoWebCache Integration
GeoServer





GeoWebCache



Direct calls to GeoServer
rendering engine
Support for layers mod...
KML/KMZ
TEMPORAL SERIES

KML EXTRUDE

KML SUPEROVERLAY

GFOSS Day 2013, Bologna
October 11th, 2013
WFS






Dissemination and filtering of vector data
WFS 1.0, 1.1 and 2.0
Transaction and paging available in all ver...
Complex Feature*


Application/community schemas



Complex Features




Attributes as list of features





Attribu...
WCS


Raster data dissemination


Raw raster data useful for analysis, no maps!



Support for TIME, ELEVATION and cust...
WPS


WPS 1.0



Official Extension



Raster and Vector data support





High performance processes (raster/vector ...
Administration GUI

GFOSS Day 2013, Bologna
October 11th, 2013
RESTful Configuration


Programmatic configuration of layers via REST
calls
Workspaces, Data stores / coverage stores
Lay...
Security: Authentication


Pluggable user sources, available out of the box:




Pluggable authentication mechanisms, a...
What’s new in 2.3.x
GWC clustering


Improved clustering for GWC in 1.4.x:






Metastore removed
Disk quota can work off a central DBMS...
Layer Groups
Capabilities tree

Nesting
GFOSS Day 2013, Bologna
October 11th, 2013
TurboJPEG encoder


Faster JPEG encoder based on libjpegturbo



Works on Windows 64bit too

GFOSS Day 2013, Bologna
Oct...
Monitoring module


Log details about all incoming requests (request
type, format, layers involved, bbox)



Store on fi...
Database configuration backend







Pluggable configuration backends
In-memory implementation + XML storage (current...
Translations on Transifex


Thanks to Frank Gasdorf – and Friends!



https://www.transifex.com/projects/p/geoserver_sta...
Other Enhancements


WPS Process Selection



WMS Additional Dimensions



INSPIRE metadata support for WFS



Monitor...
What’s new in 2.4.x
CSS styling




CSS inspired
styling language
Styling for
humans

GFOSS Day 2013, Bologna
October 11th, 2013
CSW 2.0.2





Catalog Service for the Web 2.0.2
Pluggable record types and storage
Not a replacement for a full-fledge...
CSW 2.0.2


Current implementation








Demo backend with Dublin Core record support,
passes CITE certifications t...
WCS 2.0


WCS 2.0 implementation with extensions:







Earth Observation profile support







Range subsett...
WMS EO


Earth Observation profile support




Temporal series
Exposing mosaic structure
EO metadata describing sensor...
NetCDF





Improve existing NetCDF/CF input format, support CF
convention (Polyphemus/Ascat/Gome/IASI/MSG2)
Expose Net...
Spatiotemporal Raster Management




Add REST support to expose a image mosaic internal structure

Dimensions

Granule...
Importer (community)


Graphical Workflow for preprocessing data



Copy over, optimize, publish and style

GFOSS Day 20...
Scripting Processing (WPS)

http://elogeo.nottingham.ac.uk/xmlui/handle/url/199 (Processing with WPS and SQL Views)

GFOSS...
Faster PNG encoder





New community module
Pure Java,
highly optimized
330
Informal benchmarks,
requests per second
T...
Wish list…








QGIS Integration
Vector Data Attribute Remapping
Advanced Authorization Subsystem
integration (Geo...
The End

Questions?
andrea.aime@geo-solutions.it

simone.giannecchini@geo-solutions.it
alessio.fabiani@geo-solutions.it
FO...
Bonus track: some other news from 2.2.x
Referencing news




Support for NTv2 and NADCON grids  high
accuracy datum transformations
Test and inspect re-project...
More Projections

Robinson

Mollweide

Winkel Tripel
Winkel Tripel

Eckert IV
GFOSS Day 2013, Bologna
October 11th, 2013
Advanced Projection Handling

Management of dateline
Change and
map-wrapping

Cutting un-reprojectable
geometries

GFOSS D...
Rendering: real world units

<Rule>
<LineSymbolizer uom="http://www.opengeospatial.org/se/units/metre">
<Stroke>
<CssParam...
Impersonation in data access






Use the current
GeoServer user to
access DBMS
contents

WMS/WFS
client

Tighten secu...
WMS: PNG8 with alpha


Support for paletted PNG with alpha transparency



Best of both worlds: compact but good looking...
Improved Raster Reprojection




Raster reprojection  complex
process
Idea:








try to approximate the overall
...
WMS: TIME and ELEVATION
TIME = 20100512T0000000Z
ELEVATION = 0.0

FeatureType Editor

GFOSS Day 2013, Bologna
October 11th...
WMS: Rendering Transformations


On-the-fly data transformations



Calling spatial analysis processes from SLD docs


...
Improved GWC integration





GFOSS Day 2013, Bologna
October 11th, 2013

Custom gridset
definition

Per layer
caching
c...
WFS: 2.0 and XSLT




WFS 2.0
 GML 3.2
 Paging (back-ported to other versions)
 Joins (scalar, temporal, spatial) bet...
WPS: asynchronous calls


Asynchronous WPS support for long running
processes
WPS protocol
handler

Client
Execute

WPS e...
Image Server*


Turning GeoServer into an Image Server






Serving pure Imagery
No geo-reference need/available/(wou...
Aggregating data store








N layers, remote or local, sharing the same structure
Aggregating store puts them toget...
Upcoming SlideShare
Loading in...5
×

GeoServer The Open Source Solution for the interoperable management of geospatial data @ GFOSS Day 2013

4,015

Published on

GeoServer is an open source geo-spatial server written in Java, following the common Java Enterprise practices, allowing for the handling, distribution and analysis of geospatial data.
GeoServer allows to distribute, handle and analyses data using the most widely accepted OGC standards (WMS, WFS, WCS and WPS), without forgetting specific extensions for a transparent interacting with clients such as Google Earth and commercial software in general, and providing support for the now common protocols based on REST and GeoJSON for the distribution of simple vector based data.

The presentation will give the audience an exhaustive introduction to the GeoServer functionalities for the creation of interoperable Spatial Data Infrastructures, with particular focus on the new functionalities introduced with the upcoming GeoServer 2.4 release, the WPS 1.0 spatial data analysis capabilities as well as on the level of INSPIRE Compliancy.

Published in: Technology, Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,015
On Slideshare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
64
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

GeoServer The Open Source Solution for the interoperable management of geospatial data @ GFOSS Day 2013

  1. 1. GeoServer The Open Source Solution for the interoperable management of geospatial data Ing. Alessio Fabiani, GeoSolutions Ing. Andrea Aime, GeoSolutions Ing. Simone Giannecchini, GeoSolutions GFOSS Day 2013, Bologna October 11th, 2013
  2. 2. Outline  Who is GeoSolutions?  Quick intro to GeoServer  What’s new in the 2.2.x series  What’s new in the 2.3.x series  What’s cooking for the 2.4.x series GFOSS Day 2013, Bologna October 11th, 2013
  3. 3. GeoSolutions  Founded in Italy in late 2006  Expertise • • Java, Java Enterprise, C++, Python •  Image Processing, GeoSpatial Data Fusion JPEG2000, JPIP, Advanced 2D visualization Supporting/Developing FOSS4G projects   GeoNetwork, GeoBatch, MapStore   GeoTools, GeoServer ImageIO-Ext and more: https://github.com/geosolutions-it Focus on Consultancy  PAs, NGOs, private companies, etc… GFOSS Day 2013, Bologna October 11th, 2013
  4. 4. GeoServer quick intro
  5. 5. 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 in the pipeline 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.. GFOSS Day 2013, Bologna October 11th, 2013
  6. 6. PostGIS Oracle H2 DB2 SQL Server MySql Spatialite GeoCouch WMS 1.1.1 1.3.0 Vector files Google DBMS ArcSDE WFS Servers GeoServer Formats and Protocols Shapefile ----------------------------------------------------------------------- WFS 1.0, 1.1, 2.0 Styled maps Raw vector data WPS 1.0.0 WCS 1.0,1.1.1 2.0.1 GeoTIFF WMS ArcGrid GWC GTopo30 (WMTS, Img+world Raster files TMS, Mosaic WMS-C) MrSID JPEG 2000 ECW,Pyramid, Oracle GeoRaster, PostGis Raster, NetCDF GFOSS Day 2013, Bologna October 11th, 2013 Raw raster data PNG, GIF JPEG TIFF, GeoTIFF SVG, PDF KML/KMZ Shapefile GML2 GML3 GeoRSS GeoJSON CSV/XLS GeoTIFF ArcGrid GTopo30 Img+World KML superoverlays Google maps tiles OGC tiles OSGEO tiles
  7. 7. Virtual services  Expose different OGC services per workspace  Styles and layer groups per workspace  Have different administrators per workspace  multi-tenancy GFOSS Day 2013, Bologna October 11th, 2013
  8. 8. WMS  Dissemination of Maps  Fusing raster and vector data seamlessly  Rule/scale driven rendering  WMS 1.1.1 and 1.3 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 GFOSS Day 2013, Bologna October 11th, 2013
  9. 9. Rendering GFOSS Day 2013, Bologna October 11th, 2013
  10. 10. GeoWebCache Integration GeoServer   GeoWebCache  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 Persistent raster/KML tile cache GFOSS Day 2013, Bologna October 11th, 2013
  11. 11. KML/KMZ TEMPORAL SERIES KML EXTRUDE KML SUPEROVERLAY GFOSS Day 2013, Bologna October 11th, 2013
  12. 12. WFS      Dissemination and filtering of vector data WFS 1.0, 1.1 and 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)  KML (since 2.4.0)  Any other format supported by ogr2ogr (configurable) GFOSS Day 2013, Bologna October 11th, 2013
  13. 13. Complex Feature*  Application/community schemas  Complex Features   Attributes as list of features   Attributes as sub-features Tree-like structure Mixing in a single tree heterogeneous data sources GFOSS Day 2013, Bologna October 11th, 2013
  14. 14. WCS  Raster data dissemination  Raw raster data useful for analysis, no maps!  Support for TIME, ELEVATION and custom dimensions  WCS 1.0, 1.1.1 and 2.0  Output formats   GeoTiff, ArcGrid, NetCDF Extensions  ELEVATION as band management GFOSS Day 2013, Bologna October 11th, 2013
  15. 15. WPS  WPS 1.0  Official Extension  Raster and Vector data support   High performance processes (raster/vector statistics, raster/vector format conversions and more) Integrated WPS  Direct access to data sources  Automatic publishing of results as new layers   Embedding processes into SLD styles (rendering transformation, since 2.2.0) Write processes in scripting languages (Jython, Javascript, Groovy, Scala, …) GFOSS Day 2013, Bologna October 11th, 2013
  16. 16. Administration GUI GFOSS Day 2013, Bologna October 11th, 2013
  17. 17. RESTful Configuration  Programmatic configuration of layers via REST calls Workspaces, Data stores / coverage stores Layers and Styles, Service configurations Freemarker templates (incoming)  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 GFOSS Day 2013, Bologna October 11th, 2013
  18. 18. Security: Authentication  Pluggable user sources, available out of the box:   Pluggable authentication mechanisms, available out of the box:    LDAP, DBMS BASIC/DIGEST HTTP, CAS Possible to integrate with other mechanisms and in-house solutions Available since 2.2.0, before only basic HTTP auth + simple text file for users GFOSS Day 2013, Bologna October 11th, 2013
  19. 19. What’s new in 2.3.x
  20. 20. GWC clustering  Improved clustering for GWC in 1.4.x:     Metastore removed Disk quota can work off a central DBMS Distributed locks, avoid concurrent computation of same tile at the same time Active/active clustering of GWC now possible Load balancer GWC1 GWC2 Tile storage Disk quota GFOSS Day 2013, Bologna October 11th, 2013
  21. 21. Layer Groups Capabilities tree Nesting GFOSS Day 2013, Bologna October 11th, 2013
  22. 22. TurboJPEG encoder  Faster JPEG encoder based on libjpegturbo  Works on Windows 64bit too GFOSS Day 2013, Bologna October 11th, 2013
  23. 23. Monitoring module  Log details about all incoming requests (request type, format, layers involved, bbox)  Store on file system or database GeoServer WMS WFS Audit File system WCS Monitor Core Monitor Hibernate Database GFOSS Day 2013, Bologna October 11th, 2013
  24. 24. Database configuration backend     Pluggable configuration backends In-memory implementation + XML storage (current one) Database based implementation (as a community module) Pluggable, add your own (any takers for a NoSQL elastic implementation?) GeoServer config and catalog In-memory DBMS NoSQL? GFOSS Day 2013, Bologna October 11th, 2013
  25. 25. Translations on Transifex  Thanks to Frank Gasdorf – and Friends!  https://www.transifex.com/projects/p/geoserver_stable GFOSS Day 2013, Bologna October 11th, 2013
  26. 26. Other Enhancements  WPS Process Selection  WMS Additional Dimensions  INSPIRE metadata support for WFS  Monitoring Extension  Extensive JSONP Support  Security Subsystem Improvements GFOSS Day 2013, Bologna October 11th, 2013
  27. 27. What’s new in 2.4.x
  28. 28. CSS styling   CSS inspired styling language Styling for humans GFOSS Day 2013, Bologna October 11th, 2013
  29. 29. CSW 2.0.2    Catalog Service for the Web 2.0.2 Pluggable record types and storage Not a replacement for a full-fledged GeoNetwork (not at the moment, at least) CSW protocol handler Dublin core support ebRIM support ISO support Record type plugins GeoServer config backend Simple DC backend Vendor specific bridge Record sources GFOSS Day 2013, Bologna October 11th, 2013
  30. 30. CSW 2.0.2  Current implementation     Demo backend with Dublin Core record support, passes CITE certifications tests ISO + Dublin core backend reporting layers in the GeoServer configuration ebRIM (Earth Observation profile) implementation plus proxy to a in-house, vendor specific catalog (proxy front-end model) Currently a community module, soon to be graduated to extension GFOSS Day 2013, Bologna October 11th, 2013
  31. 31. WCS 2.0  WCS 2.0 implementation with extensions:      Earth Observation profile support      Range subsetting Scaling and interpolation CRS (reprojection) GeoTiff & NetCDF encoding Temporal series Exposing mosaic structure EO metadata describing sensors NetCDF support as both input and output Sponsors   DLR (German spatial agency) EUMETSAT (European operational satellite agency for monitoring weather, climate and the environment) GFOSS Day 2013, Bologna October 11th, 2013
  32. 32. WMS EO  Earth Observation profile support    Temporal series Exposing mosaic structure EO metadata describing sensors GFOSS Day 2013, Bologna October 11th, 2013
  33. 33. NetCDF    Improve existing NetCDF/CF input format, support CF convention (Polyphemus/Ascat/Gome/IASI/MSG2) Expose NetCDF internal data as a set of 2D slices New NetCDF/CF output format for GeoServer GFOSS Day 2013, Bologna October 11th, 2013
  34. 34. Spatiotemporal Raster Management   Add REST support to expose a image mosaic internal structure  Dimensions  Granules Dimensions: list, edit, create, remove     /workspaces/<ws>/coveragestores/<cs>/coverages/<mosaic>/dimensions /workspaces/<ws>/coveragestores/<cs>/coverages/<mosaic>/dimensions/<dimension>[.format] TODO paging and query of dimension domain Granules: list, edit, create, remove    /workspaces/<ws>/coveragestores/<cs>/coverages/<mosaic>/index /workspaces/<ws>/coveragestores/<cs>/coverages/<mosaic>/index/pageN /workspaces/<ws>/coveragestores/<cs>/coverages/<mosaic>/index/pageN/granuleM GFOSS Day 2013, Bologna October 11th, 2013
  35. 35. Importer (community)  Graphical Workflow for preprocessing data  Copy over, optimize, publish and style GFOSS Day 2013, Bologna October 11th, 2013
  36. 36. Scripting Processing (WPS) http://elogeo.nottingham.ac.uk/xmlui/handle/url/199 (Processing with WPS and SQL Views) GFOSS Day 2013, Bologna October 11th, 2013
  37. 37. Faster PNG encoder    New community module Pure Java, highly optimized 330 Informal benchmarks, requests per second Threads JDK 1 11.7 4 38.9 Output size 39KB 780 ImageIO native New encoder 25.4 75.11 55KB 36.9 94.5 45KB GFOSS Day 2013, Bologna October 11th, 2013
  38. 38. Wish list…      QGIS Integration Vector Data Attribute Remapping Advanced Authorization Subsystem integration (GeoFence) Circular Arc Support Support for Z ordinates in more data sources and more output formats GFOSS Day 2013, Bologna October 11th, 2013
  39. 39. The End Questions? andrea.aime@geo-solutions.it simone.giannecchini@geo-solutions.it alessio.fabiani@geo-solutions.it FOSS4G 2013, Nottingham 20th September 2013
  40. 40. Bonus track: some other news from 2.2.x
  41. 41. Referencing news   Support for NTv2 and NADCON grids  high accuracy datum transformations Test and inspect re-projection interactively: GFOSS Day 2013, Bologna October 11th, 2013
  42. 42. More Projections Robinson Mollweide Winkel Tripel Winkel Tripel Eckert IV GFOSS Day 2013, Bologna October 11th, 2013
  43. 43. Advanced Projection Handling Management of dateline Change and map-wrapping Cutting un-reprojectable geometries GFOSS Day 2013, Bologna October 11th, 2013
  44. 44. Rendering: real world units <Rule> <LineSymbolizer uom="http://www.opengeospatial.org/se/units/metre"> <Stroke> <CssParameter name="stroke-width"> <ogc:Literal>5</ogc:Literal> </CssParameter> </Stroke> </LineSymbolizer> </Rule> GFOSS Day 2013, Bologna October 11th, 2013
  45. 45. Impersonation in data access    Use the current GeoServer user to access DBMS contents WMS/WFS client Tighten security also at the DBMS level GeoServer GeoServer user: X Connection pool user: impersonating DBMS user X Useful for high security setups DBMS GFOSS Day 2013, Bologna October 11th, 2013
  46. 46. WMS: PNG8 with alpha  Support for paletted PNG with alpha transparency  Best of both worlds: compact but good looking  Good quality, yet usable in interactive setups GFOSS Day 2013, Bologna October 11th, 2013
  47. 47. Improved Raster Reprojection   Raster reprojection  complex process Idea:     try to approximate the overall transformation with a simpler one, either a single affine transformation or a piecewise composition of them (grid warp) Ability to specify threshold for error acceptance Iterative approach (local optimization) Trade off between speed and precision GFOSS Day 2013, Bologna October 11th, 2013
  48. 48. WMS: TIME and ELEVATION TIME = 20100512T0000000Z ELEVATION = 0.0 FeatureType Editor GFOSS Day 2013, Bologna October 11th, 2013
  49. 49. 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 GFOSS Day 2013, Bologna October 11th, 2013
  50. 50. Improved GWC integration   GFOSS Day 2013, Bologna October 11th, 2013 Custom gridset definition Per layer caching configuration
  51. 51. WFS: 2.0 and XSLT   WFS 2.0  GML 3.2  Paging (back-ported to other versions)  Joins (scalar, temporal, spatial) between feature types  Stored queries txt XSLT output Custom xml GML XLST format: 2.X/3.X engine HTML Custom XSL sheet GFOSS Day 2013, Bologna October 11th, 2013 KML
  52. 52. WPS: asynchronous calls  Asynchronous WPS support for long running processes WPS protocol handler Client Execute WPS executor Internal submit Update status Status poll Update status Status poll Write results Status? Results GFOSS Day 2013, Bologna October 11th, 2013
  53. 53. Image Server*  Turning GeoServer into an Image Server    Serving pure Imagery No geo-reference need/available/(would make sense!) Special Coordinate Reference Systems defined  Interoperability with WMS clients  Respecting EPSG conventions    EPSG:404000 See here Improved support for data with bad/missing geo-reference! GFOSS Day 2013, Bologna October 11th, 2013
  54. 54. Aggregating data store     N layers, remote or local, sharing the same structure Aggregating store puts them together dynamically, the client will think there is just one layer Parallel data fetching Can be configured to tolerate temporarily unreachable data sources GFOSS Day 2013, Bologna October 11th, 2013
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×