SlideShare ist ein Scribd-Unternehmen logo
1 von 42
Downloaden Sie, um offline zu lesen
GeoServer for Spatio-temporal
Data Handling
With Examples For MetOc
And Remote Sensing
Ing. Simone Giannecchini
Ing. Daniele Romagnoli
Ing. Andrea Aime
GeoSolutions
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
 GeoServer, MapStore
 GeoNetwork, GeoNode, Ckan
 Clients
 Public Agencies
 Private Companies
 http://www.geo-solutions.it
FOSS4G 2015, Seoul
14th-19th September 2015
Reference scenario
FOSS4G 2015, Seoul
14th-19th September 2015
ImageMosaic – the basics
FOSS4G 2015, Seoul
14th-19th September 2015
Terminology
 Granule/Tile
 The individual raster element composing the
mosaic
 (Granule) Index
 The collection of metadata records describing
the location, spatial coverage and other
attributes of each single granule
 Dimensions/Domains
 The dimensions besides the spatial ones used
to distinguish individual granules
FOSS4G 2015, Seoul
14th-19th September 2015
GraNules Assumptions
 Granules must share the same Coordinate
Reference System
 Granules must share the same ColorModel
and SampleModel  not anymore in
GeoServer 2.8.0, assuming you enable JAI-
EXT
 Granules can overlap as they please, can
have different resolutions
 Granules can be in different file formats
(faster if the format is uniform)
FOSS4G 2015, Seoul
14th-19th September 2015
The mosaic index
 Always present
 Drives the collection of granules for
mosaicking
 Implemented by default using GeoTools
Vector Sources
 Currently supported/tested sources
 PostGIS (JNDI)
 Oracle (JNDI) it’s been a nightmare because of
naming!
 H2
 Shapefile
 Can be customized to support custom
granule indexes (e.g. legacy catalog)
FOSS4G 2015, Seoul
14th-19th September 2015
The dimensions
 Maps to alphanumeric attributes in the index
 TIME and ELEVATION receive special
treatment for WMS and WCS
 Custom/Additional dimensions
 Everything besides TIME & ELEVATION
 Map to DIM_XXX in WMS
 They can be dynamically discovered
FOSS4G 2015, Seoul
14th-19th September 2015
Parsing dimensions from file names
FOSS4G 2015, Seoul
14th-19th September 2015
 indexer.properties file
TimeAttribute=ingestion
ElevationAttribute=elevation
Schema=*the_geom:Polygon,location:String,ingestion:java.
util.Date,elevation:Double
PropertyCollectors=TimestampFileNameExtractorSPI[timereg
ex](ingestion),DoubleFileNameExtractorSPI[elevationregex
](elevation)
 elevationregex.properties file
regex=(?<=_)(d{3})(?=_)
 elevationregex.properties file
regex=[0-9]{8}T[0-9]{9}Z(?!.*[0-9]{8}T[0-9]{9}Z.*)
NCOM_wattemp_020_20081031T0000000_12.tiff
Publishing dimensions
FOSS4G 2015, Seoul
14th-19th September 2015
NetCDF
FOSS4G 2015, Seoul
14th-19th September 2015
NetCDF format support
FOSS4G 2015, Seoul
14th-19th September 2015
 NetCDF support
 Support COARDS/CF* conventions loosely
 Expose NetCDF internal data as a set of 2D slices
 Fast 2D (time, elevation) slice extraction
NetCDF index support files
FOSS4G 2015, Seoul
14th-19th September 2015
 NetCDF Internal Index
 Speeds up 2D slice extraction
 H2/PostgreSQL + binary file
 Index location is configurable via
–DNETCDF_DATA_DIR
 Data in a non-writable location
 Granule Index in a DBMS
 Individual NetCDF Indexes on a separate directory
One or more variables
FOSS4G 2015, Seoul
14th-19th September 2015
 Polyphemus Sample Dataset
 1 File  Multiple Coverages!
NetCDF indexing configuration
FOSS4G 2015, Seoul
14th-19th September 2015
NetCDF indexing configuration
FOSS4G 2015, Seoul
14th-19th September 2015
 NetCDF Indexer  drive the indexing
 Automatically created, can be hand edited to expose
some coverages only or parametrize the indexing
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Indexer>
<schemas>
<schema name="default" >
<attributes>the_geom:Polygon,imageindex:Integer,time:java.util.Date,
elevation:Double</attributes>
</schema>
</schemas>
<coverages>
<coverage>
<name>O3</name>
<schema ref="default"></schema>
</coverage>
…
</coverages>
</Indexer>
NetCDF GridMapping to EPSG codes
FOSS4G 2015, Seoul
14th-19th September 2015
Assumptions/Limitations
FOSS4G 2015, Seoul
14th-19th September 2015
 Only WGS84 is supported  in GeoServer 2.8.x also custom
CRS are supported (GridMapping to EPSG properties)
 Only NetCDF following COARDS/CF convention are
supported
 NetCDF WCS output is only available for multidimensional
data sources (ImageMosaic and NetCDF)
ImageMosaic – NetCDF integration
FOSS4G 2015, Seoul
14th-19th September 2015
NetCDF/Mosaic integration
FOSS4G 2015, Seoul
14th-19th September 2015
 ImageMosaic NetCDF integration
 Allow the ImageMosaic to handle multiple NetCDF files
 Expose NetCDF internal structure (times, elevations)
 Make ImageMosaic handle slices of the NetCDF file as granules
Mosaic
NetCDF 1 NetCDF 2 NetCDF … N
…
XML based indexer file
FOSS4G 2015, Seoul
14th-19th September 2015
 Definition of Dimensions/Domains
 Definition of table schema
 Definition of Coverage
 Mapping of dimensions and table schema to
Coverages
 PropertyCollector definition
 Additional Indexing Parameters:
 Path Behaviour
 Indexing Directories
 Aux File
XML indexer: domains/dimensions
FOSS4G 2015, Seoul
14th-19th September 2015
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<Indexer>
<domains>
<domain name="time">
<attributes><attribute>time</attribute></attributes>
</domain>
<domain name="elevation">
<attributes><attribute>elevation</attribute></attributes>
</domain>
<domain name="fileDate">
<attributes><attribute ref="fileDateCollector">fileDate</attribute></attributes>
</domain>
<domain name="updated">
<attributes><attribute ref="updatedCollector">updated</attribute></attributes>
</domain>
</domains>
XML indexer : schemas and coverages
FOSS4G 2015, Seoul
14th-19th September 2015
<schemas>
<schema name="default" >
<attributes>the_geom:Polygon,location:String,imageindex:Integer,time:java.util.Date,
elevation:Double, fileDate:java.util.Date,updated:java.util.Date
</attributes>
</schema>
</schemas>
<coverages>
<coverage>
<name>V</name>
<schema ref="default"></schema>
<domains>
<domain ref="time" />
<domain ref="elevation" />
<domain ref="fileDate" />
<domain ref="updated" />
</domains>
</coverage>
</coverages>
XML indexer : collectors and params
FOSS4G 2015, Seoul
14th-19th September 2015
<collectors>
<collector name="fileDateCollector">
<value>[0-9]{8}</value>
<spi>TimestampFileNameExtractorSPI</spi>
<mapped>fileDate</mapped>
</collector>
<collector name="updatedCollector">
<value>MODIFY_TIME</value>
<spi>RuntimeExtractorSPI</spi>
<mapped>updated</mapped>
</collector>
</collectors>
<parameters>
<parameter name="AbsolutePath" value="true" />
<parameter name="AuxiliaryFile" value="polyphemus-test.xml" />
<parameter name="IndexingDirectories"
value="D:/Training_2.4_multidim_Win64/source_data/polyphemus" />
</parameters>
Multiple coverages per mosaic
FOSS4G 2015, Seoul
14th-19th September 2015
REST configuration of mosaic contents
FOSS4G 2015, Seoul
14th-19th September 2015
 Granule Index CRUD Operations via REST
 CREATE
curl -u admin:Geos -XPUT -H "Content-
type:application/zip" --data-binary
@http://localhost:8080/geoserver/rest/workspaces/geosolu
tions/coveragestores/temperature/file.imagemosaic
 READ index schema
curl -v -u admin:Geos -XGET
http://localhost:8080/geoserver/rest/workspaces/geosolut
ions/coveragestores/polyphemus/coverages/NO2/index.xml
 READ WFS like with CQL filtering and paging
curl -v -u admin:Geos -XGET
"http://localhost:8080/geoserver/rest/workspaces/geosolu
tions/coveragestores/polyphemus/coverages/NO2/index/gran
ules.xml?limit=1&filter=time='2013-03-03T00:00:00Z
REST configuration of mosaic contents
FOSS4G 2015, Seoul
14th-19th September 2015
 READ (Retrieve specific granule by ID)
curl -v -u admin:geoserver -XGET
"http://localhost:8080/geoserver/rest/workspaces/topp/cove
ragestores/polyphemus-
v1/coverages/NO2/index/granules/NO2.2689.xml"
 UPDATE (harvest)
curl -v -u admin:Geos -XPOST -H "Content-type: text/plain"
-d "/polyphemus_20130303.nc"
"http://localhost:8080/geoserver/rest/workspaces/geosoluti
ons/coveragestores/polyphemus/external.imagemosaic"
 DELETE WFS like with CQL filtering and paging or by ID
curl -v -u admin:geoserver -XDELETE
"http://localhost:8080/geoserver/rest/workspaces/topp/cov
eragestores/polyphemus-
v1/coverages/NO2/index/granules.xml?filter=location='poly
phemus_20130301.nc'"
GRIB/GRIB2 Format Support
FOSS4G 2015, Seoul
14th-19th September 2015
 Based on same UCAR NetCDF Java libs used
by NetCDF Format
 Same capabilities of NetCDF Format
 Same indexing logic
 Same ImageMosaic support
The services - visualize
FOSS4G 2015, Seoul
14th-19th September 2015
WMS
FOSS4G 2015, Seoul
14th-19th September 2015
TIME, ELEVATION & Custom dimensions
http://localhost:8080/geoserver/geosolutions/wms?...
&time=2013-03-1T00:00:00.000Z
&elevation=35.0
&DIM_FILEDATE=2013-03-01T00:00:00.000Z
&DIM_UPDATED=2013-04-08T08:18:41.597Z
Rendering transformations
FOSS4G 2015, Seoul
14th-19th September 2015
 SLD Based transformations
 On-the-fly contouring
 On-the-fly poligonalization
 Current arrows
 Wind Barbs
 Pluggable: add your own
Rendering transformations
FOSS4G 2015, Seoul
14th-19th September 2015
windbarbs
currents
contouring
WMS-EO
FOSS4G 2015, Seoul
14th-19th September 2015
Extending LayerGroup
concept
Support same style on
both raster and vector
data
Support custom
dimensions
Alter map on the fly to
support band
combination
Wizard to configure EO
layer groups
 Product layer tree
 Mix of vector and raster info
 Raw data, flags (clouds,
snow), browse
WMS-EO
FOSS4G 2015, Seoul
14th-19th September 2015
 Helper UI to build the tree
WMS-EO
FOSS4G 2015, Seoul
14th-19th September 2015
The services - download
FOSS4G 2015, Seoul
14th-19th September 2015
WCS 2.0
FOSS4G 2015, Seoul
14th-19th September 2015
 Basics
 Core service
 KVP binding
 XML binding
 Common extensions
 CRS
 Scaling
 Interpolation
 Range subsetting
 GeoTiff
 GML
 NetCDF
 Add the output format extensions
 GeoTIFF
 GML Grid
 NetCDF
WCS 2.0 processing chain
FOSS4G 2015, Seoul
14th-19th September 2015
Crop
RangeSubset
Scale & Interpolate
Reproject & Interpolate
Encode
Core
Extension
Extension
Extension
Extension
WCS 2.0 DescribeCoverage
FOSS4G 2015, Seoul
14th-19th September 2015
BBOX
TIME
ELEVATION
CUSTOM
Download ND NetCDF
FOSS4G 2015, Seoul
14th-19th September 2015
http://localhost:8080/geoserver/wcs?request=GetCoverage&service=WCS&
version=2.0.1&coverageId=geosolutions__NO2
&Format=application/x-netcdf
&subset=http://www.opengis.net/def/axis/OGC/0/Long(5,20)
&subset=http://www.opengis.net/def/axis/OGC/0/Lat(40,50)
&subset=http://www.opengis.net/def/axis/OGC/0/elevation(300,1250)
&subset=http://www.opengis.net/def/axis/OGC/0/time("2013-03-
01T10:00:00.000Z","2013-03-01T22:00:00.000Z")
• Can also handle custom
dimensions
• Described in DescribeCoverage
in a vendor metadata section
WCS EO
FOSS4G 2015, Seoul
14th-19th September 2015
 Add support for WCS EO metadata in readers
 Associate each file with EO metadata
 Include such information in
DescribeCoverage/DescribeEODataset
 EODataset: multidimensional mosaic or NetCDF file
 Describe the inner structure (granules listing) in
DescribeEODataSet
That’s all folks!
Questions?
info@geo-solutions.it
FOSS4G 2015, Seoul
14th-19th September 2015

Weitere ähnliche Inhalte

Was ist angesagt?

GeoServer in Production: we do it, here is how!
GeoServer in Production: we do it, here is how!GeoServer in Production: we do it, here is how!
GeoServer in Production: we do it, here is how!GeoSolutions
 
Advanced Cartographic Map Rendering In GeoServer
Advanced Cartographic Map Rendering In GeoServerAdvanced Cartographic Map Rendering In GeoServer
Advanced Cartographic Map Rendering In GeoServerGeoSolutions
 
GeoServer beginners gwf_2015
GeoServer beginners gwf_2015GeoServer beginners gwf_2015
GeoServer beginners gwf_2015GeoSolutions
 
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...GeoSolutions
 
GeoServer an introduction for beginners
GeoServer an introduction for beginnersGeoServer an introduction for beginners
GeoServer an introduction for beginnersGeoSolutions
 
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesCreating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesGeoSolutions
 
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...GeoSolutions
 
State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016GeoSolutions
 
GeoServer, an introduction for beginners
GeoServer, an introduction for beginnersGeoServer, an introduction for beginners
GeoServer, an introduction for beginnersGeoSolutions
 
Raster data in GeoServer and GeoTools: Achievements, issues and future devel...
Raster data in GeoServer and GeoTools:  Achievements, issues and future devel...Raster data in GeoServer and GeoTools:  Achievements, issues and future devel...
Raster data in GeoServer and GeoTools: Achievements, issues and future devel...GeoSolutions
 
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...GeoSolutions
 
State of GeoServer 2.12
State of GeoServer 2.12State of GeoServer 2.12
State of GeoServer 2.12GeoSolutions
 
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...GeoSolutions
 
Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015GeoSolutions
 
State of GeoServer
State of GeoServerState of GeoServer
State of GeoServerJody Garnett
 
Spatiotemporal Raster Improvements in GeoServer
Spatiotemporal Raster Improvements in GeoServerSpatiotemporal Raster Improvements in GeoServer
Spatiotemporal Raster Improvements in GeoServerGeoSolutions
 
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013GeoSolutions
 
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017GeoSolutions
 
GeoNetwork, The Open Source Solution for the interoperable management of ge...
GeoNetwork, The Open Source Solution  for the interoperable management  of ge...GeoNetwork, The Open Source Solution  for the interoperable management  of ge...
GeoNetwork, The Open Source Solution for the interoperable management of ge...GeoSolutions
 

Was ist angesagt? (20)

GeoServer in Production: we do it, here is how!
GeoServer in Production: we do it, here is how!GeoServer in Production: we do it, here is how!
GeoServer in Production: we do it, here is how!
 
Advanced Cartographic Map Rendering In GeoServer
Advanced Cartographic Map Rendering In GeoServerAdvanced Cartographic Map Rendering In GeoServer
Advanced Cartographic Map Rendering In GeoServer
 
GeoServer beginners gwf_2015
GeoServer beginners gwf_2015GeoServer beginners gwf_2015
GeoServer beginners gwf_2015
 
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
Raster data in GeoServer and GeoTools: Achievements, issues and future develo...
 
GeoServer an introduction for beginners
GeoServer an introduction for beginnersGeoServer an introduction for beginners
GeoServer an introduction for beginners
 
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS stylesCreating Stunning Maps in GeoServer: mastering SLD and CSS styles
Creating Stunning Maps in GeoServer: mastering SLD and CSS styles
 
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
 
State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016
 
GeoServer, an introduction for beginners
GeoServer, an introduction for beginnersGeoServer, an introduction for beginners
GeoServer, an introduction for beginners
 
Raster data in GeoServer and GeoTools: Achievements, issues and future devel...
Raster data in GeoServer and GeoTools:  Achievements, issues and future devel...Raster data in GeoServer and GeoTools:  Achievements, issues and future devel...
Raster data in GeoServer and GeoTools: Achievements, issues and future devel...
 
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
 
State of GeoServer 2.12
State of GeoServer 2.12State of GeoServer 2.12
State of GeoServer 2.12
 
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...
 
Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015
 
State of GeoServer
State of GeoServerState of GeoServer
State of GeoServer
 
Spatiotemporal Raster Improvements in GeoServer
Spatiotemporal Raster Improvements in GeoServerSpatiotemporal Raster Improvements in GeoServer
Spatiotemporal Raster Improvements in GeoServer
 
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
 
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
Mastering Security with GeoServer and GeoFence - FOSS4G EU 2017
 
GeoNetwork, The Open Source Solution for the interoperable management of ge...
GeoNetwork, The Open Source Solution  for the interoperable management  of ge...GeoNetwork, The Open Source Solution  for the interoperable management  of ge...
GeoNetwork, The Open Source Solution for the interoperable management of ge...
 
Gfoss 2010
Gfoss 2010Gfoss 2010
Gfoss 2010
 

Ähnlich wie GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remote Sensing - FOSS4G 2015

OM-JSON - a JSON implementation of O&M
OM-JSON - a JSON implementation of O&MOM-JSON - a JSON implementation of O&M
OM-JSON - a JSON implementation of O&MSimon Cox
 
GeoServer intro for SDI Days 2013
GeoServer intro for SDI Days 2013GeoServer intro for SDI Days 2013
GeoServer intro for SDI Days 2013GeoSolutions
 
LocationTech Projects
LocationTech ProjectsLocationTech Projects
LocationTech ProjectsJody Garnett
 
Geosolutions FOSS4g 2009 Redux
Geosolutions FOSS4g 2009 ReduxGeosolutions FOSS4g 2009 Redux
Geosolutions FOSS4g 2009 ReduxGeoSolutions
 
DEMETER at OGC Agriculture Session
DEMETER at OGC Agriculture SessionDEMETER at OGC Agriculture Session
DEMETER at OGC Agriculture SessionH2020 DEMETER
 
Flagis linked open_data_stijn_goedertier
Flagis linked open_data_stijn_goedertierFlagis linked open_data_stijn_goedertier
Flagis linked open_data_stijn_goedertierFlagis VZW
 
Dynamic viz in the IPython Notebook
Dynamic viz in the IPython NotebookDynamic viz in the IPython Notebook
Dynamic viz in the IPython NotebookBrianna Laugher
 
0603 Esip Fed Wash Dc Tech Pres 060103 Esip Aq Tech Track
0603 Esip Fed Wash Dc Tech Pres 060103 Esip Aq Tech Track0603 Esip Fed Wash Dc Tech Pres 060103 Esip Aq Tech Track
0603 Esip Fed Wash Dc Tech Pres 060103 Esip Aq Tech TrackRudolf Husar
 
2006-01-11 Data Flow & Interoperability in DataFed Service-based AQ Analysis ...
2006-01-11 Data Flow & Interoperability in DataFed Service-based AQ Analysis ...2006-01-11 Data Flow & Interoperability in DataFed Service-based AQ Analysis ...
2006-01-11 Data Flow & Interoperability in DataFed Service-based AQ Analysis ...Rudolf Husar
 
Cloud computing application for water resources based on open source software...
Cloud computing application for water resources based on open source software...Cloud computing application for water resources based on open source software...
Cloud computing application for water resources based on open source software...Blagoj Delipetrev
 
GFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork PresentationGFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork PresentationGeoSolutions
 
State of GeoServer 2.10
State of GeoServer 2.10State of GeoServer 2.10
State of GeoServer 2.10Jody Garnett
 
Plone FSR
Plone FSRPlone FSR
Plone FSRfulv
 
Data access and data extraction services within the Land Imagery Portal
Data access and data extraction services within the Land Imagery PortalData access and data extraction services within the Land Imagery Portal
Data access and data extraction services within the Land Imagery PortalGasperi Jerome
 
20181215 introduction to graph databases
20181215   introduction to graph databases20181215   introduction to graph databases
20181215 introduction to graph databasesTimothy Findlay
 
GeoPackage, OWS Context and the OGC Interoperability Program
GeoPackage, OWS Context and the OGC Interoperability ProgramGeoPackage, OWS Context and the OGC Interoperability Program
GeoPackage, OWS Context and the OGC Interoperability ProgramRaj Singh
 
060128 Galeon Rept
060128 Galeon Rept060128 Galeon Rept
060128 Galeon ReptRudolf Husar
 
Nasdanika Foundation Server
Nasdanika Foundation ServerNasdanika Foundation Server
Nasdanika Foundation ServerPavel Vlasov
 

Ähnlich wie GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remote Sensing - FOSS4G 2015 (20)

OM-JSON - a JSON implementation of O&M
OM-JSON - a JSON implementation of O&MOM-JSON - a JSON implementation of O&M
OM-JSON - a JSON implementation of O&M
 
GeoServer intro for SDI Days 2013
GeoServer intro for SDI Days 2013GeoServer intro for SDI Days 2013
GeoServer intro for SDI Days 2013
 
LocationTech Projects
LocationTech ProjectsLocationTech Projects
LocationTech Projects
 
Geosolutions FOSS4g 2009 Redux
Geosolutions FOSS4g 2009 ReduxGeosolutions FOSS4g 2009 Redux
Geosolutions FOSS4g 2009 Redux
 
DEMETER at OGC Agriculture Session
DEMETER at OGC Agriculture SessionDEMETER at OGC Agriculture Session
DEMETER at OGC Agriculture Session
 
Flagis linked open_data_stijn_goedertier
Flagis linked open_data_stijn_goedertierFlagis linked open_data_stijn_goedertier
Flagis linked open_data_stijn_goedertier
 
Dynamic viz in the IPython Notebook
Dynamic viz in the IPython NotebookDynamic viz in the IPython Notebook
Dynamic viz in the IPython Notebook
 
0603 Esip Fed Wash Dc Tech Pres 060103 Esip Aq Tech Track
0603 Esip Fed Wash Dc Tech Pres 060103 Esip Aq Tech Track0603 Esip Fed Wash Dc Tech Pres 060103 Esip Aq Tech Track
0603 Esip Fed Wash Dc Tech Pres 060103 Esip Aq Tech Track
 
2006-01-11 Data Flow & Interoperability in DataFed Service-based AQ Analysis ...
2006-01-11 Data Flow & Interoperability in DataFed Service-based AQ Analysis ...2006-01-11 Data Flow & Interoperability in DataFed Service-based AQ Analysis ...
2006-01-11 Data Flow & Interoperability in DataFed Service-based AQ Analysis ...
 
Open layers
Open layersOpen layers
Open layers
 
Cloud computing application for water resources based on open source software...
Cloud computing application for water resources based on open source software...Cloud computing application for water resources based on open source software...
Cloud computing application for water resources based on open source software...
 
GFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork PresentationGFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork Presentation
 
State of GeoServer 2.10
State of GeoServer 2.10State of GeoServer 2.10
State of GeoServer 2.10
 
Plone FSR
Plone FSRPlone FSR
Plone FSR
 
Data access and data extraction services within the Land Imagery Portal
Data access and data extraction services within the Land Imagery PortalData access and data extraction services within the Land Imagery Portal
Data access and data extraction services within the Land Imagery Portal
 
GENIVI + OCF Cooperation
GENIVI + OCF CooperationGENIVI + OCF Cooperation
GENIVI + OCF Cooperation
 
20181215 introduction to graph databases
20181215   introduction to graph databases20181215   introduction to graph databases
20181215 introduction to graph databases
 
GeoPackage, OWS Context and the OGC Interoperability Program
GeoPackage, OWS Context and the OGC Interoperability ProgramGeoPackage, OWS Context and the OGC Interoperability Program
GeoPackage, OWS Context and the OGC Interoperability Program
 
060128 Galeon Rept
060128 Galeon Rept060128 Galeon Rept
060128 Galeon Rept
 
Nasdanika Foundation Server
Nasdanika Foundation ServerNasdanika Foundation Server
Nasdanika Foundation Server
 

Mehr von GeoSolutions

MapStore 2 - The Story
MapStore 2 - The StoryMapStore 2 - The Story
MapStore 2 - The StoryGeoSolutions
 
One GeoNode, many GeoNodes
One GeoNode, many GeoNodesOne GeoNode, many GeoNodes
One GeoNode, many GeoNodesGeoSolutions
 
Introduction to GeoNode
Introduction to GeoNodeIntroduction to GeoNode
Introduction to GeoNodeGeoSolutions
 
GeoServer Feature FRENZY
GeoServer Feature FRENZYGeoServer Feature FRENZY
GeoServer Feature FRENZYGeoSolutions
 
MapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and ReactMapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and ReactGeoSolutions
 
Mapping the world beyond web mercator - FOSS4G 2015
Mapping the world beyond web mercator - FOSS4G 2015Mapping the world beyond web mercator - FOSS4G 2015
Mapping the world beyond web mercator - FOSS4G 2015GeoSolutions
 
Advanced Cartographic Map Rendering in GeoServer
Advanced Cartographic Map Rendering in GeoServerAdvanced Cartographic Map Rendering in GeoServer
Advanced Cartographic Map Rendering in GeoServerGeoSolutions
 
GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015GeoSolutions
 
Geosolutions gwf-2015-v01.04
Geosolutions gwf-2015-v01.04Geosolutions gwf-2015-v01.04
Geosolutions gwf-2015-v01.04GeoSolutions
 
Geoserver introduction, GeoBusiness 2015
Geoserver introduction, GeoBusiness 2015Geoserver introduction, GeoBusiness 2015
Geoserver introduction, GeoBusiness 2015GeoSolutions
 
Introduzione a GeoServer ed ai servizi OGC
Introduzione a GeoServer ed ai servizi OGCIntroduzione a GeoServer ed ai servizi OGC
Introduzione a GeoServer ed ai servizi OGCGeoSolutions
 
Advanced Security With GeoServer
Advanced Security With GeoServerAdvanced Security With GeoServer
Advanced Security With GeoServerGeoSolutions
 
GeoServer on Steroids at FOSS4G Europe 2014
GeoServer on Steroids at FOSS4G Europe 2014GeoServer on Steroids at FOSS4G Europe 2014
GeoServer on Steroids at FOSS4G Europe 2014GeoSolutions
 

Mehr von GeoSolutions (13)

MapStore 2 - The Story
MapStore 2 - The StoryMapStore 2 - The Story
MapStore 2 - The Story
 
One GeoNode, many GeoNodes
One GeoNode, many GeoNodesOne GeoNode, many GeoNodes
One GeoNode, many GeoNodes
 
Introduction to GeoNode
Introduction to GeoNodeIntroduction to GeoNode
Introduction to GeoNode
 
GeoServer Feature FRENZY
GeoServer Feature FRENZYGeoServer Feature FRENZY
GeoServer Feature FRENZY
 
MapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and ReactMapStore 2, modern mashups with OL3, Leaflet and React
MapStore 2, modern mashups with OL3, Leaflet and React
 
Mapping the world beyond web mercator - FOSS4G 2015
Mapping the world beyond web mercator - FOSS4G 2015Mapping the world beyond web mercator - FOSS4G 2015
Mapping the world beyond web mercator - FOSS4G 2015
 
Advanced Cartographic Map Rendering in GeoServer
Advanced Cartographic Map Rendering in GeoServerAdvanced Cartographic Map Rendering in GeoServer
Advanced Cartographic Map Rendering in GeoServer
 
GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015GeoSolutions Keynote at WebMGS 2015
GeoSolutions Keynote at WebMGS 2015
 
Geosolutions gwf-2015-v01.04
Geosolutions gwf-2015-v01.04Geosolutions gwf-2015-v01.04
Geosolutions gwf-2015-v01.04
 
Geoserver introduction, GeoBusiness 2015
Geoserver introduction, GeoBusiness 2015Geoserver introduction, GeoBusiness 2015
Geoserver introduction, GeoBusiness 2015
 
Introduzione a GeoServer ed ai servizi OGC
Introduzione a GeoServer ed ai servizi OGCIntroduzione a GeoServer ed ai servizi OGC
Introduzione a GeoServer ed ai servizi OGC
 
Advanced Security With GeoServer
Advanced Security With GeoServerAdvanced Security With GeoServer
Advanced Security With GeoServer
 
GeoServer on Steroids at FOSS4G Europe 2014
GeoServer on Steroids at FOSS4G Europe 2014GeoServer on Steroids at FOSS4G Europe 2014
GeoServer on Steroids at FOSS4G Europe 2014
 

Kürzlich hochgeladen

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 

Kürzlich hochgeladen (20)

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 

GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remote Sensing - FOSS4G 2015

  • 1. GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remote Sensing Ing. Simone Giannecchini Ing. Daniele Romagnoli Ing. Andrea Aime GeoSolutions
  • 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  GeoServer, MapStore  GeoNetwork, GeoNode, Ckan  Clients  Public Agencies  Private Companies  http://www.geo-solutions.it FOSS4G 2015, Seoul 14th-19th September 2015
  • 3. Reference scenario FOSS4G 2015, Seoul 14th-19th September 2015
  • 4. ImageMosaic – the basics FOSS4G 2015, Seoul 14th-19th September 2015
  • 5. Terminology  Granule/Tile  The individual raster element composing the mosaic  (Granule) Index  The collection of metadata records describing the location, spatial coverage and other attributes of each single granule  Dimensions/Domains  The dimensions besides the spatial ones used to distinguish individual granules FOSS4G 2015, Seoul 14th-19th September 2015
  • 6. GraNules Assumptions  Granules must share the same Coordinate Reference System  Granules must share the same ColorModel and SampleModel  not anymore in GeoServer 2.8.0, assuming you enable JAI- EXT  Granules can overlap as they please, can have different resolutions  Granules can be in different file formats (faster if the format is uniform) FOSS4G 2015, Seoul 14th-19th September 2015
  • 7. The mosaic index  Always present  Drives the collection of granules for mosaicking  Implemented by default using GeoTools Vector Sources  Currently supported/tested sources  PostGIS (JNDI)  Oracle (JNDI) it’s been a nightmare because of naming!  H2  Shapefile  Can be customized to support custom granule indexes (e.g. legacy catalog) FOSS4G 2015, Seoul 14th-19th September 2015
  • 8. The dimensions  Maps to alphanumeric attributes in the index  TIME and ELEVATION receive special treatment for WMS and WCS  Custom/Additional dimensions  Everything besides TIME & ELEVATION  Map to DIM_XXX in WMS  They can be dynamically discovered FOSS4G 2015, Seoul 14th-19th September 2015
  • 9. Parsing dimensions from file names FOSS4G 2015, Seoul 14th-19th September 2015  indexer.properties file TimeAttribute=ingestion ElevationAttribute=elevation Schema=*the_geom:Polygon,location:String,ingestion:java. util.Date,elevation:Double PropertyCollectors=TimestampFileNameExtractorSPI[timereg ex](ingestion),DoubleFileNameExtractorSPI[elevationregex ](elevation)  elevationregex.properties file regex=(?<=_)(d{3})(?=_)  elevationregex.properties file regex=[0-9]{8}T[0-9]{9}Z(?!.*[0-9]{8}T[0-9]{9}Z.*) NCOM_wattemp_020_20081031T0000000_12.tiff
  • 10. Publishing dimensions FOSS4G 2015, Seoul 14th-19th September 2015
  • 12. NetCDF format support FOSS4G 2015, Seoul 14th-19th September 2015  NetCDF support  Support COARDS/CF* conventions loosely  Expose NetCDF internal data as a set of 2D slices  Fast 2D (time, elevation) slice extraction
  • 13. NetCDF index support files FOSS4G 2015, Seoul 14th-19th September 2015  NetCDF Internal Index  Speeds up 2D slice extraction  H2/PostgreSQL + binary file  Index location is configurable via –DNETCDF_DATA_DIR  Data in a non-writable location  Granule Index in a DBMS  Individual NetCDF Indexes on a separate directory
  • 14. One or more variables FOSS4G 2015, Seoul 14th-19th September 2015  Polyphemus Sample Dataset  1 File  Multiple Coverages!
  • 15. NetCDF indexing configuration FOSS4G 2015, Seoul 14th-19th September 2015
  • 16. NetCDF indexing configuration FOSS4G 2015, Seoul 14th-19th September 2015  NetCDF Indexer  drive the indexing  Automatically created, can be hand edited to expose some coverages only or parametrize the indexing <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Indexer> <schemas> <schema name="default" > <attributes>the_geom:Polygon,imageindex:Integer,time:java.util.Date, elevation:Double</attributes> </schema> </schemas> <coverages> <coverage> <name>O3</name> <schema ref="default"></schema> </coverage> … </coverages> </Indexer>
  • 17. NetCDF GridMapping to EPSG codes FOSS4G 2015, Seoul 14th-19th September 2015
  • 18. Assumptions/Limitations FOSS4G 2015, Seoul 14th-19th September 2015  Only WGS84 is supported  in GeoServer 2.8.x also custom CRS are supported (GridMapping to EPSG properties)  Only NetCDF following COARDS/CF convention are supported  NetCDF WCS output is only available for multidimensional data sources (ImageMosaic and NetCDF)
  • 19. ImageMosaic – NetCDF integration FOSS4G 2015, Seoul 14th-19th September 2015
  • 20. NetCDF/Mosaic integration FOSS4G 2015, Seoul 14th-19th September 2015  ImageMosaic NetCDF integration  Allow the ImageMosaic to handle multiple NetCDF files  Expose NetCDF internal structure (times, elevations)  Make ImageMosaic handle slices of the NetCDF file as granules Mosaic NetCDF 1 NetCDF 2 NetCDF … N …
  • 21. XML based indexer file FOSS4G 2015, Seoul 14th-19th September 2015  Definition of Dimensions/Domains  Definition of table schema  Definition of Coverage  Mapping of dimensions and table schema to Coverages  PropertyCollector definition  Additional Indexing Parameters:  Path Behaviour  Indexing Directories  Aux File
  • 22. XML indexer: domains/dimensions FOSS4G 2015, Seoul 14th-19th September 2015 <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <Indexer> <domains> <domain name="time"> <attributes><attribute>time</attribute></attributes> </domain> <domain name="elevation"> <attributes><attribute>elevation</attribute></attributes> </domain> <domain name="fileDate"> <attributes><attribute ref="fileDateCollector">fileDate</attribute></attributes> </domain> <domain name="updated"> <attributes><attribute ref="updatedCollector">updated</attribute></attributes> </domain> </domains>
  • 23. XML indexer : schemas and coverages FOSS4G 2015, Seoul 14th-19th September 2015 <schemas> <schema name="default" > <attributes>the_geom:Polygon,location:String,imageindex:Integer,time:java.util.Date, elevation:Double, fileDate:java.util.Date,updated:java.util.Date </attributes> </schema> </schemas> <coverages> <coverage> <name>V</name> <schema ref="default"></schema> <domains> <domain ref="time" /> <domain ref="elevation" /> <domain ref="fileDate" /> <domain ref="updated" /> </domains> </coverage> </coverages>
  • 24. XML indexer : collectors and params FOSS4G 2015, Seoul 14th-19th September 2015 <collectors> <collector name="fileDateCollector"> <value>[0-9]{8}</value> <spi>TimestampFileNameExtractorSPI</spi> <mapped>fileDate</mapped> </collector> <collector name="updatedCollector"> <value>MODIFY_TIME</value> <spi>RuntimeExtractorSPI</spi> <mapped>updated</mapped> </collector> </collectors> <parameters> <parameter name="AbsolutePath" value="true" /> <parameter name="AuxiliaryFile" value="polyphemus-test.xml" /> <parameter name="IndexingDirectories" value="D:/Training_2.4_multidim_Win64/source_data/polyphemus" /> </parameters>
  • 25. Multiple coverages per mosaic FOSS4G 2015, Seoul 14th-19th September 2015
  • 26. REST configuration of mosaic contents FOSS4G 2015, Seoul 14th-19th September 2015  Granule Index CRUD Operations via REST  CREATE curl -u admin:Geos -XPUT -H "Content- type:application/zip" --data-binary @http://localhost:8080/geoserver/rest/workspaces/geosolu tions/coveragestores/temperature/file.imagemosaic  READ index schema curl -v -u admin:Geos -XGET http://localhost:8080/geoserver/rest/workspaces/geosolut ions/coveragestores/polyphemus/coverages/NO2/index.xml  READ WFS like with CQL filtering and paging curl -v -u admin:Geos -XGET "http://localhost:8080/geoserver/rest/workspaces/geosolu tions/coveragestores/polyphemus/coverages/NO2/index/gran ules.xml?limit=1&filter=time='2013-03-03T00:00:00Z
  • 27. REST configuration of mosaic contents FOSS4G 2015, Seoul 14th-19th September 2015  READ (Retrieve specific granule by ID) curl -v -u admin:geoserver -XGET "http://localhost:8080/geoserver/rest/workspaces/topp/cove ragestores/polyphemus- v1/coverages/NO2/index/granules/NO2.2689.xml"  UPDATE (harvest) curl -v -u admin:Geos -XPOST -H "Content-type: text/plain" -d "/polyphemus_20130303.nc" "http://localhost:8080/geoserver/rest/workspaces/geosoluti ons/coveragestores/polyphemus/external.imagemosaic"  DELETE WFS like with CQL filtering and paging or by ID curl -v -u admin:geoserver -XDELETE "http://localhost:8080/geoserver/rest/workspaces/topp/cov eragestores/polyphemus- v1/coverages/NO2/index/granules.xml?filter=location='poly phemus_20130301.nc'"
  • 28. GRIB/GRIB2 Format Support FOSS4G 2015, Seoul 14th-19th September 2015  Based on same UCAR NetCDF Java libs used by NetCDF Format  Same capabilities of NetCDF Format  Same indexing logic  Same ImageMosaic support
  • 29. The services - visualize FOSS4G 2015, Seoul 14th-19th September 2015
  • 30. WMS FOSS4G 2015, Seoul 14th-19th September 2015 TIME, ELEVATION & Custom dimensions http://localhost:8080/geoserver/geosolutions/wms?... &time=2013-03-1T00:00:00.000Z &elevation=35.0 &DIM_FILEDATE=2013-03-01T00:00:00.000Z &DIM_UPDATED=2013-04-08T08:18:41.597Z
  • 31. Rendering transformations FOSS4G 2015, Seoul 14th-19th September 2015  SLD Based transformations  On-the-fly contouring  On-the-fly poligonalization  Current arrows  Wind Barbs  Pluggable: add your own
  • 32. Rendering transformations FOSS4G 2015, Seoul 14th-19th September 2015 windbarbs currents contouring
  • 33. WMS-EO FOSS4G 2015, Seoul 14th-19th September 2015 Extending LayerGroup concept Support same style on both raster and vector data Support custom dimensions Alter map on the fly to support band combination Wizard to configure EO layer groups  Product layer tree  Mix of vector and raster info  Raw data, flags (clouds, snow), browse
  • 34. WMS-EO FOSS4G 2015, Seoul 14th-19th September 2015  Helper UI to build the tree
  • 36. The services - download FOSS4G 2015, Seoul 14th-19th September 2015
  • 37. WCS 2.0 FOSS4G 2015, Seoul 14th-19th September 2015  Basics  Core service  KVP binding  XML binding  Common extensions  CRS  Scaling  Interpolation  Range subsetting  GeoTiff  GML  NetCDF  Add the output format extensions  GeoTIFF  GML Grid  NetCDF
  • 38. WCS 2.0 processing chain FOSS4G 2015, Seoul 14th-19th September 2015 Crop RangeSubset Scale & Interpolate Reproject & Interpolate Encode Core Extension Extension Extension Extension
  • 39. WCS 2.0 DescribeCoverage FOSS4G 2015, Seoul 14th-19th September 2015 BBOX TIME ELEVATION CUSTOM
  • 40. Download ND NetCDF FOSS4G 2015, Seoul 14th-19th September 2015 http://localhost:8080/geoserver/wcs?request=GetCoverage&service=WCS& version=2.0.1&coverageId=geosolutions__NO2 &Format=application/x-netcdf &subset=http://www.opengis.net/def/axis/OGC/0/Long(5,20) &subset=http://www.opengis.net/def/axis/OGC/0/Lat(40,50) &subset=http://www.opengis.net/def/axis/OGC/0/elevation(300,1250) &subset=http://www.opengis.net/def/axis/OGC/0/time("2013-03- 01T10:00:00.000Z","2013-03-01T22:00:00.000Z") • Can also handle custom dimensions • Described in DescribeCoverage in a vendor metadata section
  • 41. WCS EO FOSS4G 2015, Seoul 14th-19th September 2015  Add support for WCS EO metadata in readers  Associate each file with EO metadata  Include such information in DescribeCoverage/DescribeEODataset  EODataset: multidimensional mosaic or NetCDF file  Describe the inner structure (granules listing) in DescribeEODataSet
  • 42. That’s all folks! Questions? info@geo-solutions.it FOSS4G 2015, Seoul 14th-19th September 2015