GeoServer,
Il server open source per la gestione
   interoperabile dei dati geospaziali

        Ing. Andrea Aime, GeoSolutions
   Ing. Simone Giannecchini, GeoSolutions
GeoSolutions
   GeoSolutions
   Introduzione a GeoServer
       Interfaccia utente

       Sicurezza

       Amministrazione

       Servizi OGC

       Estensioni e moduli aggiuntivi
GeoSolutions
   Fondata nel 2006 in Italia
   Esperienza
    •   Image Processing, GeoSpatial Data Fusion
    •   Java, Java Enterprise, C++, Python
    •   JPEG2000, JPIP, Advanced 2D visualization
   Sviluppo/supporto progetti Open Source
       GeoTools
       GeoServer
       GeoBatch
       ImageIO-Ext
       uDig

   Focus
       Consulenza (enti pubblici, grandi compagnie private, etc…)
GeoServer
   Pubbliazione e analisi dati spaziali
           Java Enterprise
           Gestione di dati raster e vettoriali
   Servizi OGC
           OGC WCS 1.0 - 1.1.1 (RI)
           OGC WFS 1.0 - 1.1 (RI)
           OGC WMS 1.1.1 e 1.3.0
           OGC WPS* 1.0.0
   Google Earth/Maps support
           KML, GeoSearch, etc..
----------
                              ----------
                                  ----------
                               ---------
                                                                                    PNG, GIF
                                  ----------
                 Shapefile    ----------
                                   ---------                WMS                     JPEG
                                  ----------                1.1.1                   TIFF,
                             Vector files
                                                            1.3.0                   GeoTIFF
                                                                                    SVG, PDF
                 PostGIS                                               Styled       KML/KMZ
                                                           Google*      maps
                 Oracle
Dati e servizi



                 H2                                                                 Shapefile
                 DB2                                       WFSv*                    GML2




                                               GeoServer
                 SQL Server                                                         GML3
                 MySql          DBMS
                                                                                    GeoRSS
                                                             WFS       Raw vector   GeoJSON
                                                           1.0 e 1.1      data
                                                                                    CSV/XLS
                 ArcSDE
                 WFS                                        WPS
                                                            1.0.0                   GeoTIFF
                              Servers                       WCS                     ArcGrid
                 GeoTIFF                                     1.0                    GTopo30
                 ArcGrid                                    1.1.1      Raw raster
                                                                                    Img+World
                                                                         data
                 GTopo30
                 Img+world                         GWC
                                                  (WMTS,                KML superoverlays
                 Mosaic    Raster files            TMS,
                 MrSID                                                  Google maps tiles
                                                  WMS-C)                OGC tiles
                 JPEG 2000
                 ECW,Pyramid, Oracle GeoRaster, …                       OSGEO tiles
GeoServer User Interface
Sicurezza integrata

   Spring Security
   RBAC su layer e servizio
   Versione built-in con regole semplificate

         namespace.layer.mode=role1,role2,...




         A name, or * to   r: read    The roles that will
         mean “any”        w: write   be authorized to
                                      access the data
                                      under this rule
GUI: configurazione sicurezza
Sviluppi sicurezza in 2.1

   Gestione della sicurezza a livello di singola
    feature (record)  filtraggio lettura e
    scrittura
   Nascondere attributi sensibili
   Gestione aree visibili su dati raster
   Regole basate contemporaneamente su
    servizio e layer
   Framework disponibile, manca una
    implementazione open source che lo sfrutti
RESTConfig

   Configurazione programmatica di GeoServer
    mediante chiamate a servizi REST
          Workspaces
          DataStores/CoverageStores
          Layer e Stili
   Espone il catalogo a client remoti
          Ajax-JavaScript friendly
   Modulo “core” da 2.1
   Sicurezza integrata
RESTConfig

           Configurazione            Stili
           flussi dati periodici             Javascript
                                               client
GeoBatch


                         GeoServer

Server side                                   Desktop
  scripts      Popolamento
                                                app
               catalogo di
               grande serie        Pubblicazione
               dati                         layer
WFS
   Distribuzione e filtraggio dati vettoriali
   Supporto WFS 1.0 e 1.1 con transazioni
   Formati
         GML 2, 3.1 e 3.2
         GeoRSS, GeoJSON
         Shapefile compresso
         OGR (formati configurabili)

   Estensioni
         CQL
         Ri-proiezione con WFS 1.0
Complex Feature*
   Application/community schemas
   Feature complesse
         Attributi come sotto-feature
         Attributi come elenchi di feature
         Struttura ad albero completo
   Sorgenti dati
    eterogenee
   INSPIRE
WCS*
   Distribuzione dati raster
         Non mappe, ma dati grezzi utilizzabili per analisi
         Supporto per TIME e ELEVATION (con mosaico)

   WCS 1.0 e 1.1
   Formati di uscita
         GeoTiff, ArcGrid
         GDAL based formats*

   Estensioni
         ELEVATION as band management*
WMS 1.3.0 e SE 1.1

   Supporto a WMS 1.3 (INSPIRE)
   Supporto iniziale per SLD 1.1 e SE 1.1
   Per supporto stlying completo e estensioni
    specifiche occorre ancora usare SLD 1.0
WMS – Dynamic symbolizers
WMS – raster symbolizer




Raw                           256
Data                         Colors




                  65536
                  Colors
WMS – Advanced Styling



                            Geometry
Filter Functions         Transformations




                                 Drop
      Number                    Shadow
     Formatting
Gestione avanzata proiezioni




     Gestione linea cambio
     data e ripetizione




                             Taglio geometrie non
                             riproiettabili
Rendering transformations

   Transformazione dati al volo
   Richiama processi WPS dall’SLD
                   Ottimizzazioni per ottenere
                    la massima velocità
Rendering transformations

   Estrazione dati puntuali da raster a due
    bande (u e v)
   Calcolo direzione e dimensione nell’SLD
KML/KMZ


              TEMPORAL SERIES




KML EXTRUDE               KML SUPEROVERLAY
ImageIO-Ext Support
   Estensione di JAI ImageIO
   Plugins:
         BigTiff*, netCDF-CF,GriB1,MatFile 5, HDF4
         JP2000 (Kakadu)
         GDAL 1.7.3


   GDAL integration via ImageIO-ext
             JPEG2000,MrSID, ECW
             BigTIFF, ERDAS Image, HDF4
Integrazione GeoWebCache

    GeoServer              Chiamate dirette al motore di
                            rendering
                           Supporto per layer dinamici
                            modificati tramite WFS-T
  GeoWebCache
                           Tile per vari protocolli e
                            strumenti
                                   GMap, Gearth
                                   OpenLayers, VEarth,
                                    Bing
                           Accelerazione fattore 10/100
Persistent raster/KML
      tile cache           Supporto quota disco
WMS* Cascading
             Cascading non
              solo di GetMap, ma
              anche di
              GetFeatureInfo
             Cascading della
              proiezione target
              se supportata, o ri-
              proieizione al volo
             Importazione
              automatica di tutti i
              layer da GUI
WPS*
   WPS 1.0
   Estensione ufficiale
   Supporto dati vettoriali e raster
   Sviluppo di processi ad alte prestazioni (statistiche
    raster/vettoriali, conversioni raster/vettoriale, ecc. ecc.)
   WPS integrato
          Salvataggio risultati nel server
          Uso di processi direttamente nel rendering
WPS: demo builder
WPS*
   Mancanze più evidenti
         Chiamate asincrone
         Mancanza controlli sui processi (controllo dimensione
          input/output)
   Evoluzioni:
         Scripting (Jython, GeoScript)
         Integrazione Sextante, IDL, JGrass (Grass?)
         Miglioramenti robustezza
         Raster algebra ad alte prestazioni con Jiffle (jai-tools)
Filtraggio fra più layer
   Modulo community “querylayer”
   “Trova tutti i siti a meno di 100 metri dalle strade”
   Con un solo filtro CQL nella richiesta WMS:
                                        DWITHIN(
                                         the_geom,
                                         collectGeometries(
                                            queryCollection('roads',
                                                           'the_geom',
                                                           'INCLUDE')
                                         ),
                                         200, meters)
The End




         Domande?
   andrea.aime@geo-solutions.it
simone.giannecchini@geo-solutions.it

Foss4g it-2011 (italian)

  • 1.
    GeoServer, Il server opensource per la gestione interoperabile dei dati geospaziali Ing. Andrea Aime, GeoSolutions Ing. Simone Giannecchini, GeoSolutions
  • 2.
    GeoSolutions  GeoSolutions  Introduzione a GeoServer  Interfaccia utente  Sicurezza  Amministrazione  Servizi OGC  Estensioni e moduli aggiuntivi
  • 3.
    GeoSolutions  Fondata nel 2006 in Italia  Esperienza • Image Processing, GeoSpatial Data Fusion • Java, Java Enterprise, C++, Python • JPEG2000, JPIP, Advanced 2D visualization  Sviluppo/supporto progetti Open Source  GeoTools  GeoServer  GeoBatch  ImageIO-Ext  uDig  Focus  Consulenza (enti pubblici, grandi compagnie private, etc…)
  • 4.
    GeoServer  Pubbliazione e analisi dati spaziali  Java Enterprise  Gestione di dati raster e vettoriali  Servizi OGC  OGC WCS 1.0 - 1.1.1 (RI)  OGC WFS 1.0 - 1.1 (RI)  OGC WMS 1.1.1 e 1.3.0  OGC WPS* 1.0.0  Google Earth/Maps support  KML, GeoSearch, etc..
  • 5.
    ---------- ---------- ---------- --------- PNG, GIF ---------- Shapefile ---------- --------- WMS JPEG ---------- 1.1.1 TIFF, Vector files 1.3.0 GeoTIFF SVG, PDF PostGIS Styled KML/KMZ Google* maps Oracle Dati e servizi H2 Shapefile DB2 WFSv* GML2 GeoServer SQL Server GML3 MySql DBMS GeoRSS WFS Raw vector GeoJSON 1.0 e 1.1 data CSV/XLS ArcSDE WFS WPS 1.0.0 GeoTIFF Servers WCS ArcGrid GeoTIFF 1.0 GTopo30 ArcGrid 1.1.1 Raw raster Img+World data GTopo30 Img+world GWC (WMTS, KML superoverlays Mosaic Raster files TMS, MrSID Google maps tiles WMS-C) OGC tiles JPEG 2000 ECW,Pyramid, Oracle GeoRaster, … OSGEO tiles
  • 6.
  • 7.
    Sicurezza integrata  Spring Security  RBAC su layer e servizio  Versione built-in con regole semplificate namespace.layer.mode=role1,role2,... A name, or * to r: read The roles that will mean “any” w: write be authorized to access the data under this rule
  • 8.
  • 9.
    Sviluppi sicurezza in2.1  Gestione della sicurezza a livello di singola feature (record)  filtraggio lettura e scrittura  Nascondere attributi sensibili  Gestione aree visibili su dati raster  Regole basate contemporaneamente su servizio e layer  Framework disponibile, manca una implementazione open source che lo sfrutti
  • 10.
    RESTConfig  Configurazione programmatica di GeoServer mediante chiamate a servizi REST  Workspaces  DataStores/CoverageStores  Layer e Stili  Espone il catalogo a client remoti  Ajax-JavaScript friendly  Modulo “core” da 2.1  Sicurezza integrata
  • 11.
    RESTConfig Configurazione Stili flussi dati periodici Javascript client GeoBatch GeoServer Server side Desktop scripts Popolamento app catalogo di grande serie Pubblicazione dati layer
  • 12.
    WFS  Distribuzione e filtraggio dati vettoriali  Supporto WFS 1.0 e 1.1 con transazioni  Formati  GML 2, 3.1 e 3.2  GeoRSS, GeoJSON  Shapefile compresso  OGR (formati configurabili)  Estensioni  CQL  Ri-proiezione con WFS 1.0
  • 13.
    Complex Feature*  Application/community schemas  Feature complesse  Attributi come sotto-feature  Attributi come elenchi di feature  Struttura ad albero completo  Sorgenti dati eterogenee  INSPIRE
  • 14.
    WCS*  Distribuzione dati raster  Non mappe, ma dati grezzi utilizzabili per analisi  Supporto per TIME e ELEVATION (con mosaico)  WCS 1.0 e 1.1  Formati di uscita  GeoTiff, ArcGrid  GDAL based formats*  Estensioni  ELEVATION as band management*
  • 15.
    WMS 1.3.0 eSE 1.1  Supporto a WMS 1.3 (INSPIRE)  Supporto iniziale per SLD 1.1 e SE 1.1  Per supporto stlying completo e estensioni specifiche occorre ancora usare SLD 1.0
  • 16.
    WMS – Dynamicsymbolizers
  • 17.
    WMS – rastersymbolizer Raw 256 Data Colors 65536 Colors
  • 18.
    WMS – AdvancedStyling Geometry Filter Functions Transformations Drop Number Shadow Formatting
  • 19.
    Gestione avanzata proiezioni Gestione linea cambio data e ripetizione Taglio geometrie non riproiettabili
  • 20.
    Rendering transformations  Transformazione dati al volo  Richiama processi WPS dall’SLD  Ottimizzazioni per ottenere la massima velocità
  • 21.
    Rendering transformations  Estrazione dati puntuali da raster a due bande (u e v)  Calcolo direzione e dimensione nell’SLD
  • 22.
    KML/KMZ TEMPORAL SERIES KML EXTRUDE KML SUPEROVERLAY
  • 23.
    ImageIO-Ext Support  Estensione di JAI ImageIO  Plugins:  BigTiff*, netCDF-CF,GriB1,MatFile 5, HDF4  JP2000 (Kakadu)  GDAL 1.7.3  GDAL integration via ImageIO-ext  JPEG2000,MrSID, ECW  BigTIFF, ERDAS Image, HDF4
  • 24.
    Integrazione GeoWebCache GeoServer  Chiamate dirette al motore di rendering  Supporto per layer dinamici modificati tramite WFS-T GeoWebCache  Tile per vari protocolli e strumenti  GMap, Gearth  OpenLayers, VEarth, Bing  Accelerazione fattore 10/100 Persistent raster/KML tile cache  Supporto quota disco
  • 25.
    WMS* Cascading  Cascading non solo di GetMap, ma anche di GetFeatureInfo  Cascading della proiezione target se supportata, o ri- proieizione al volo  Importazione automatica di tutti i layer da GUI
  • 26.
    WPS*  WPS 1.0  Estensione ufficiale  Supporto dati vettoriali e raster  Sviluppo di processi ad alte prestazioni (statistiche raster/vettoriali, conversioni raster/vettoriale, ecc. ecc.)  WPS integrato  Salvataggio risultati nel server  Uso di processi direttamente nel rendering
  • 27.
  • 28.
    WPS*  Mancanze più evidenti  Chiamate asincrone  Mancanza controlli sui processi (controllo dimensione input/output)  Evoluzioni:  Scripting (Jython, GeoScript)  Integrazione Sextante, IDL, JGrass (Grass?)  Miglioramenti robustezza  Raster algebra ad alte prestazioni con Jiffle (jai-tools)
  • 29.
    Filtraggio fra piùlayer  Modulo community “querylayer”  “Trova tutti i siti a meno di 100 metri dalle strade”  Con un solo filtro CQL nella richiesta WMS: DWITHIN( the_geom, collectGeometries( queryCollection('roads', 'the_geom', 'INCLUDE') ), 200, meters)
  • 30.
    The End Domande? andrea.aime@geo-solutions.it simone.giannecchini@geo-solutions.it