SlideShare a Scribd company logo
1 of 58
Download to read offline
Raster data in GeoServer and GeoTools: 
Achievements, issues and future developments 
Ing. Simone Giannecchini, GeoSolutions 
Ing. Andrea Aime, GeoSolutions 
FOSS4G 2014, Portland 
8th-13th September 2014
Outline 
 Who we are 
 The building blocks 
 Recent Achievements 
 What’s cooking 
FOSS4G 2014, Portland 
8th-13th September 2014
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 
 GeoBatch, GeoNetwork 
 Clients 
 Public Agencies 
 Private Companies 
 http://www.geo-solutions.it 
FOSS4G 2014, Portland 
8th-13th September 2014
The technology stack 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoServer building blocks 
WMS WFS WPS REST Google 
GeoTools 
GWC 
ImageIO(-Ext) JTS 
GDAL 
WCS 
JAI(-Ext) 
Kakadu JAITools 
Vector Style 
Raster 
FOSS4G 2014, Portland 
8th-13th September 2014
JAI 
 Java Advanced Imaging Library 
 SUN then Oracle Image Processing library 
 Huge number of basic building operations 
 Tile-based, deferred execution model 
 Integrate Tile Caching (In Memory) 
 Easily Extensible 
 Natively Accelerated Code available for many 
operations 
 No source code for native ops 
 Development more or less stopped! 
FOSS4G 2014, Portland 
8th-13th September 2014
JAI-Ext 
 Oracle JAI Drop-In Replacement 
 Open Source (Apache 2.0) 
 High Performance 
 Pure Java 
 Support for No-Data 
 Support for Processing ROI 
 Several fixes compared to JAI 
 Support for Band Masks 
FOSS4G 2014, Portland 
8th-13th September 2014
JAI-Ext 
 Operations 
 Mosaic 
 Scale 
 Affine 
 Translate 
 Lookup 
 Algebra 
 BandMerge 
 BandSelect 
 Border 
 Buffer 
 Crop 
 High scalability support 
 Op. registry 
 Tile cache 
 Tile scheduler 
 SquareRoot 
 Stats 
 Warp 
 ZonalStats 
FOSS4G 2014, Portland 
8th-13th September 2014
JAITools/Jiffle 
 High performance raster processing 
 Extends, complements, replaces Oracle Java Advanced 
Imaging (JAI) Library 
 Open Source, BSD license 
 Low Level Operations, e.g. RangeLookup 
 Higher Level Operations 
 Vectorize, Contour 
 Raster algebra (Jiffle) 
 Works mostly in pure raster space (Image Processing) 
 Stable release is 1.3.0 
FOSS4G 2014, Portland 
8th-13th September 2014
ImageIO 
 SUN then Oracle Image I/O library 
 Partly ships with JDK partly as extension 
 Tile-based, deferred & immediate execution model 
 Easily Extensible 
 Natively Accelerated Code available for many 
formats 
 No source code for native (de)coders 
 Development more or less stopped! 
FOSS4G 2014, Portland 
8th-13th September 2014
ImageIO-Ext 
 High Performance raster I/O 
 Extends, complements, replaces Oracle JAI ImageIO 
Library 
 Open Source, LGPL and BSD licenses 
 Plugins: 
 BigTiff*, MatFile 5, TurboJPEG 
 JP2000 (Kakadu) 
 GDAL integration via ImageIO-ext 
 JPEG2000, MrSID, ECW 
 BigTIFF, ERDAS Image, HDF4 
 Complete list here 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoTools 
 The Open Source Java GIS Toolkit 
 LGPL 
 Management of Geospatial data 
 CRUD Operations 
 Raster and vector 
 Rendering 
 GDAL Support 
 Based on best-of-breed Open Source projects 
 Java Advanced Imaging (JAI), ImageIO, ImageIO-Ext, 
JAITools (soon JAI-Ext too) 
 Java Topology Suite (JTS) 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoServer 
 GeoSpatial enterprise gateway 
 Java Enterprise 
 Management of raster and vector data 
 Based on GeoTools 
 Standards compliant 
 OGC WCS 1.0, 1.1.1 (RI), 2.0.1 
 OGC WFS 1.0, 1.1 (RI), 2.0 
 OGC WMS 1.1.1, 1.3.0 
 OGC WPS 1.0.0 
 OGC CSW 2.0.2 
 Google Earth/Maps support 
FOSS4G 2014, Portland 
8th-13th September 2014
Recent Achievements 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – Faster PNG encoding 
 High Performance/Pure Java PNG output 
format 
 More Control on bugs/enhancements 
FOSS4G 2014, Portland 
8th-13th September 2014 
 Based on the 
open source 
PNGJ library 
 Optimized 
pixel 
extraction to 
PNG data 
buffer code
GS – raster projection handling 
 Better polar projection support 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – raster projection handling 
 Rasters crossing dateline 
FOSS4G 2014, Portland 
8th-13th September 2014
GT – image mosaic masks 
 Support for vector masks as shp/wkb/wkt 
FOSS4G 2014, Portland 
8th-13th September 2014
GT – image mosaic masks 
 Also useful for clipping over a certain area 
 E.g., clip over administrative boundaries 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – WCS 2.0 
 WCS 2.0 
 The basics 
 Core service 
 KVP binding 
 XML binding 
 GetCoverage extensions 
 CRS 
 Scaling 
 Interpolation 
 Range subsetting 
 GeoTiff 
 GML 
 NetCDF 
 Output format extensions 
 GeoTIFF 
 GML Grid 
 NetCDF 
 Ensure CITE tests compliancy 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – WCS 2.0 
Processing Chain Crop 
RangeSubset 
Scale & Interpolate 
Reproject & Interpolate 
Encode 
Core 
Extension 
Extension 
Extension 
Extension 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – WCS-EO 
 WCS Earth Observation profile 
 Build on top of a working WCS 2.0 with full extensions 
 WCS 2.0 
 CRS extension 
 Range subsetting extension 
 Interpolation extension 
 Scaling extension 
 GeoTiff extension 
 NetCDF extension 
 Add support for the WCS-EO extras 
 Listing coverage datasets in the capabilities documents (based on image 
mosaic contents, which will have to be marked as “exposed” so that we 
show their inner structure for EO) 
 Support describe coverage dataset 
 Support returning results for an entire dataset in GetCoverage 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – Coverage Views 
 Virtual layers created merging bands from 
different sources 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – Coverage Views 
FOSS4G 2014, Portland 
8th-13th September 2014
GT – NetCDF and Grib 
 NetCDF/Grib official Support 
 Based on Unidata NetCDF JAVA library 
 Exposes current interfaces 
(GridCoverage2DReader,…) too for GeoServer 
compatibility before changes 
 1 coverage for each Dataset’s variable (multiple 
coverages). 
 Internal data exposed as set of 2D slices 
 Custom dimensions support 
 Ancillary XML file: 
 filter on NetCDF variables/coverages 
 define low level index schema (for dimensions) 
FOSS4G 2014, Portland 
8th-13th September 2014
GT – NetCDF and GRIB 
 ImageMosaic NetCDF/GRIB integration 
 Allow the ImageMosaic to handle NetCDF/GRIB files 
 Expose NetCDF/GRIB internal structure (times, elevations) 
 Make ImageMosaic handle slices of the source files as granules 
Mosaic 
NetCDF 1 NetCDF 2 NetCDF … N 
… 
FOSS4G 2014, Portland 
8th-13th September 2014
GT – NetCDF and GRIB 
 NetCDF Polyphemus Sample Dataset 
FOSS4G 2014, Portland 
8th-13th September 2014
GT – Multicoverage 
Multidimentional interfaces 
 StructuredGridCoverage2DReader 
 exposes the underlying granule structure and dimensions 
descriptors of a specific coverage 
 getGranules (return a GranuleSource) 
 getDimensionDescriptors 
 allows to create/remove coverages and add new sources 
 createCoverage 
 removeCoverage 
 Harvest 
 GetGranules 
FOSS4G 2014, Portland 
8th-13th September 2014
GS –multiple coverages per store 
 Multiple Coverages from Mosaic, NetCDF, 
GRIB 
FOSS4G 2014, Portland 
8th-13th September 2014
GT – access mosaic contents 
 GranuleSource/GranuleStore 
 GranuleSource: 
 ReadOnly access to Granules (with Query support) 
 getGranules(Query)  SimpleFeatureCollection 
 getSchema  SimpleFeatureType 
 getCount(Query), getBounds(Query) 
 E.g.: get all granules having acquisitionYear > 2012 and Country=Italy 
 GranuleStore: 
 add/modify/delete capabilities using Transactions 
 addGranules (SimpleFeatureCollection) 
 removeGranules (Filter) 
 updateGranules 
 E.g.: remove all granules having acquisitionYear < 1990 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – REST over mosaic contents 
 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/geosolutions/coveragestores/t 
emperature/file.imagemosaic 
 READ index schema 
curl -v -u admin:Geos -XGET 
"http://localhost:8080/geoserver/rest/workspaces/geosolutions/coveragestores/polyphemus 
/coverages/NO2/index.xml" 
 READ AND FILTER WFS like with CQL filtering and paging 
curl -v -u admin:Geos -XGET 
"http://localhost:8080/geoserver/rest/workspaces/geosolutions/coveragestores/p 
olyphemus/coverages/NO2/index/granules.xml?limit=1&filter=time='2013-03- 
03T00:00:00Z'" 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – REST over mosaic contents 
 Granule Index CRUD Operations via REST 
 UPDATE 
curl -v -u admin:Geos -XPOST -H "Content-type: text/plain" -d 
"/polyphemus_20130303.nc" 
"http://localhost:8080/geoserver/rest/workspaces/geosolutions/coveragestores/pol 
yphemus/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/coveragestores/polyphemus-v1/ 
coverages/NO2/index/granules.xml?filter=location='polyphemus_20130301.nc'" 
curl -v -u admin:geoserver -XGET 
"http://localhost:8080/geoserver/rest/workspaces/topp/coveragestores/polyphemus-v1/ 
coverages/NO2/index/granules/NO2.2689.xml" 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – WCS NetCDF out 
 NetCDF Output Format 
 GetCoverage request parameter: &Format=NetCDF 
 Based on Unidata NetCDF JAVA library 
 Create a NetCDF output file on top of a GranuleStack: 
 A GridCoverage2D List: 
 a GridCoverage2D for each combination of requested 
Dimension values 
 GridCoverages should come from a 
StructuredGridCoverage2DReader 
 Supports WCS 2.0.1 
 Trimming: specify values range for a dimension 
 Slicing: specify single value for a dimension 
 Supports timeRanges/numberRanges on output 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – WCS NetCDF out 
 Sample WCS request 
http://localhost:8080/geoserver/wcs?request=GetCoverage& 
service=WCS&version=2.0.1&coverageId=geosolutions__N 
O2 
&Format=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") 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – NetCDF out in ToolsUI 
FOSS4G 2013, Nottingham 
21th September 2013
GS – WMS EO 
Wizard to configure EO 
layer groups 
Extending LayerGroup 
concept 
Support same style on 
both raster and vector 
data 
Support custom 
dimensions 
Alter map on the fly to 
support band 
combination 
 Earth observation profile 
 GSIP 84 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – WMS-EO 
 WMS-EO Quirks 
 Root layer must respond with a specific layer rather than 
the composition of the children 
 Kind of a default visualization for a certain Dataset 
 E.g. when I send a GetMap for the root layer I could get back the browse 
image default layer 
 Same styles for both Raster as well as Vector data 
 E.g. yellow can be use for both flags as well as outlines 
 Peculiar behavior for Band layer ( raw data ) 
 E.g. multiple bands at different wavelengths 
 Can request either 1 (grayscale image) or 3 (RGB image) 
 Different combinations are prohibited 
 Peculiar Behavior for GetFeatureInfo 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – dynamic color map 
QGIS 
palettes 
GDAL 
pam stats 
Input 
raster 
Dynamic 
ColorMap 
FOSS4G 2014, Portland 
8th-13th September 2014 
Map!
What’s cooking 
Plus what’s on our wish list 
FOSS4G 2014, Portland 
8th-13th September 2014
NODATA support 
 Natively handle NODATA with JAI-EXT 
 Support in all aspects 
 Scaling 
 Reprojection 
 Interpolation 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – Raster algebra WPS 
 Raster Algebra as WPS 
 Gets an OGC Filter containing logical operations between 
raster layers and produces a binary (0/1) layer 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – Raster algebra in 
Coverage views 
 JIFFLE 
FOSS4G 2014, Portland 
8th-13th September 2014
GS – Raster algebra 
in Coverage Views 
 Define new bands using a Jiffle formula 
 Generate fully computed layers 
 Still using overviews and other native 
abilities 
FOSS4G 2014, Portland 
8th-13th September 2014
The End 
Questions? 
andrea.aime@geo-solutions.it 
simone.giannecchini@geo-solutions.it 
FOSS4G 2014, Portland 
8th-13th September 2014
Old news  
FOSS4G 2014, Portland 
8th-13th September 2014
ImageIO-Ext 
 LibJPEG-Turbo 
 derivative library of libjpeg based on SIMD 
instructions (MMX, SSE2, NEON) 
 accelerate baseline JPEG compression and 
decompression on x86, x86-64, and ARM systems 
 available on many platforms 
 Open Source, LGPL 
 ImageIO-Ext-TurboJPEG 
 A JPEG ImageIO plugin built on top of the JAVA 
wrapper for LibJPEG-Turbo (TurboJPEG) 
 20%-30% SpeedUp* on JPEG encoding 
 10%-20% SpeedUp* on JPEG decoding 
 More info here 
 Integrates with TIFF reader and writer 
FOSS4G 2014, Portland 
8th-13th September 2014
ImageIO-Ext 
 NITF encoding Support (ImageIO-Ext-NITF) 
 Based on NITRO 
 Support for Tagged Record Extensions (TREs) 
 Support ImageSegments JPEG2000 compression through 
Kakadu ImageIO-Ext plugin 
 (Numerically Lossless/VisuallyLossless/Lossy) 
 NPJE, EPJE BIIF (Basic Image Interchange Format) profiles 
 J2KLRA TRE support 
 Support for multiple TextSegments 
 Support for multiple ImageSegments 
 Support for ShapeFile Data Extension Segment (CSSHPA) 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoTools 
Band 
Combine + 
Symbology 
On-the-fly 
Contouring 
Raster to 
point vector 
On-the-fly 
Polygonalization 
 Improved internal JAI Concurrency 
 Introduced and Improved JAI Tile Recycling 
 Reduced depth of JAI Processing Chains 
 More aggressive factory caching 
 Added a few specific high perf JAI operations 
 e.g. crop 
 Created Specific high perf ROI class 
 Improving Tile Caching 
 Work ongoing 
 Transparent File vs Memory Caching when writing 
raster 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoTools 
 Optimized Rendering/Processing for raster data 
 Optimized Crop Chains  Coalescing multiple Crops into 
a single one 
 Optimize Affine Transformation Chains  Coalescing 
multiple Affine Transformations into a single one 
NEAREST 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoTools 
BICUBIC 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoTools 
 ImageMosaic 
 Custom Dimensions 
 More than simple time/elevation support 
 E.g.: wavelength, cloudLevel, … 
 Dimensions with ranges: (startTime, endTime), 
(minElevation,maxElevation), … 
 Dynamic read parameters 
 Filtering 
 Supports for OGC Filters through the “filter” 
param 
 E.g.: Return only ImageMosaic granules where 
attribute Country = Italy. 
 filter=“Country=‘Italy’ ” 
FOSS4G 2014, Portland 
8th-13th September 2014
ImageMosaic 
 Custom/Additional dimensions 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoTools 
 ImageMosaic 
 Ordering 
 SORT_BY clause support on DBMS based mosaics 
 sorting=“time A, elevation D” 
 Stacking VS Merging 
 Merging: different granules  merged together in 
the final image as default 
 Stacking: different granules  stacked on different 
bands 
 E.g. MeteoSat data: 12 channels (1 granule for each Channel) 
1 = VIS0.6, 2 = VIS0.8, …, 11 = IR13.4, 12 = HRV. 
 Want return a RGB image made of channels 1,3,7  Stack 
them 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoTools 
 New API (unsupported/coverage-experiment) 
 Driver: Get a connection to a coverage store. 
 CoverageAccess: a physical storage of coverage data. Get access 
to a source of coverages. 
 CoverageSource: provides data access to a coverage. 
 Updated GridCoverage core API 
 Old GridCoverageReader: 
 inefficient and thread unsafe way to access multiple coverages 
 read GridCoverages from the input stream in a sequential order 
 New GridCoverage2DReader: 
 Coverages and properties may be accessed by coverage name: 
 get Envelope(name), get GridRange(name), get CRS(name), 
read(name), get dynamicParameters (name), … 
 dynamicParameters support (for custom dimensions) 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoServer 
 LibJPEG-Turbo Output format 
 Encoding WMS output JPEG images through 
LibJPEG Turbo library 
 Based on the TurboJpeg ImageIO-Ext plugin built 
on top of the JAVA interface for LibJPEG-Turbo 
(TurboJPEG) 
 Provided as a GeoServer extension 
 Up to 80% SpeedUp measured on JPEG encoding 
 Can be disabled at startup: 
 -Ddisable.turbojpeg=true 
 More Info here 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoServer 
 More Color Quantizers 
OCTTREE 
Speed loss is around 10% 
MEDIANCUT 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoServer 
 WMS Custom Dimensions 
 Work on GeoTools raster Additional Domains 
 NetCDF 
 ImageMosaic 
 Turn additional querying dimensions into 
WCS/WMS Dimensions 
 ImageMosaic Domain Category 
 WMS 1.1.1 DIM_CATEGORY 
 WMS 1.3.0 DIM_CATEGORY 
 Perfect for large multidimensional mosaics! 
 E.g. meteo (forecast time, elevation, band, base 
time, model name) 
FOSS4G 2014, Portland 
8th-13th September 2014
GeoServer 
 WMS TIME, ELEVATION & More 
http://localhost:8080/geoserver/geosolutions/wms?...&time=2013-03- 
01T00:00:00.000Z&elevation=35.0&DIM_FILEDATE=2013-03- 
01T00:00:00.000Z&DIM_UPDATED=2013-04-08T08:18:41.597Z 
FOSS4G 2014, Portland 
8th-13th September 2014

More Related Content

What's hot

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
 
Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...GeoSolutions
 
오픈소스GIS 개론 과정 - OpenLayers 기초
오픈소스GIS 개론 과정 - OpenLayers 기초오픈소스GIS 개론 과정 - OpenLayers 기초
오픈소스GIS 개론 과정 - OpenLayers 기초HaNJiN Lee
 
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
 
Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...GeoSolutions
 
Local Apache NiFi Processor Debug
Local Apache NiFi Processor DebugLocal Apache NiFi Processor Debug
Local Apache NiFi Processor DebugDeon Huang
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDBMike Dirolf
 
Don’t optimize my queries, optimize my data!
Don’t optimize my queries, optimize my data!Don’t optimize my queries, optimize my data!
Don’t optimize my queries, optimize my data!Julian Hyde
 
공간정보거점대학 1.geo server_고급과정
공간정보거점대학 1.geo server_고급과정공간정보거점대학 1.geo server_고급과정
공간정보거점대학 1.geo server_고급과정BJ Jang
 
오픈소스 GIS 교육 - PostGIS
오픈소스 GIS 교육 - PostGIS오픈소스 GIS 교육 - PostGIS
오픈소스 GIS 교육 - PostGISJungHwan Yun
 
Realtime vs Cloud Firestore
Realtime vs Cloud Firestore Realtime vs Cloud Firestore
Realtime vs Cloud Firestore Appinventiv
 
FIWARE Training: NGSI-LD Advanced Operations
FIWARE Training: NGSI-LD Advanced OperationsFIWARE Training: NGSI-LD Advanced Operations
FIWARE Training: NGSI-LD Advanced OperationsFIWARE
 
GeoServer on steroids
GeoServer on steroidsGeoServer on steroids
GeoServer on steroidsGeoSolutions
 
GeoServer 2.4.x 한국어 사용자 지침서
GeoServer 2.4.x 한국어 사용자 지침서GeoServer 2.4.x 한국어 사용자 지침서
GeoServer 2.4.x 한국어 사용자 지침서SANGHEE SHIN
 
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례BJ Jang
 
Proposal for nested document support in Lucene
Proposal for nested document support in LuceneProposal for nested document support in Lucene
Proposal for nested document support in LuceneMark Harwood
 
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
 
Orion Context Broker NGSI-v2 Overview for Developers That Already Know NGSI-v...
Orion Context Broker NGSI-v2 Overview for Developers That Already Know NGSI-v...Orion Context Broker NGSI-v2 Overview for Developers That Already Know NGSI-v...
Orion Context Broker NGSI-v2 Overview for Developers That Already Know NGSI-v...Fermin Galan
 

What's hot (20)

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
 
Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...
 
오픈소스GIS 개론 과정 - OpenLayers 기초
오픈소스GIS 개론 과정 - OpenLayers 기초오픈소스GIS 개론 과정 - OpenLayers 기초
오픈소스GIS 개론 과정 - OpenLayers 기초
 
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...
 
Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...
 
Local Apache NiFi Processor Debug
Local Apache NiFi Processor DebugLocal Apache NiFi Processor Debug
Local Apache NiFi Processor Debug
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 
Don’t optimize my queries, optimize my data!
Don’t optimize my queries, optimize my data!Don’t optimize my queries, optimize my data!
Don’t optimize my queries, optimize my data!
 
Spark
SparkSpark
Spark
 
공간정보거점대학 1.geo server_고급과정
공간정보거점대학 1.geo server_고급과정공간정보거점대학 1.geo server_고급과정
공간정보거점대학 1.geo server_고급과정
 
오픈소스 GIS 교육 - PostGIS
오픈소스 GIS 교육 - PostGIS오픈소스 GIS 교육 - PostGIS
오픈소스 GIS 교육 - PostGIS
 
Realtime vs Cloud Firestore
Realtime vs Cloud Firestore Realtime vs Cloud Firestore
Realtime vs Cloud Firestore
 
FIWARE Training: NGSI-LD Advanced Operations
FIWARE Training: NGSI-LD Advanced OperationsFIWARE Training: NGSI-LD Advanced Operations
FIWARE Training: NGSI-LD Advanced Operations
 
GeoServer on steroids
GeoServer on steroidsGeoServer on steroids
GeoServer on steroids
 
GeoServer 2.4.x 한국어 사용자 지침서
GeoServer 2.4.x 한국어 사용자 지침서GeoServer 2.4.x 한국어 사용자 지침서
GeoServer 2.4.x 한국어 사용자 지침서
 
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례
[Foss4 g2013 korea]postgis와 geoserver를 이용한 대용량 공간데이터 기반 일기도 서비스 구축 사례
 
Proposal for nested document support in Lucene
Proposal for nested document support in LuceneProposal for nested document support in Lucene
Proposal for nested document support in Lucene
 
PostGIS 시작하기
PostGIS 시작하기PostGIS 시작하기
PostGIS 시작하기
 
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
 
Orion Context Broker NGSI-v2 Overview for Developers That Already Know NGSI-v...
Orion Context Broker NGSI-v2 Overview for Developers That Already Know NGSI-v...Orion Context Broker NGSI-v2 Overview for Developers That Already Know NGSI-v...
Orion Context Broker NGSI-v2 Overview for Developers That Already Know NGSI-v...
 

Viewers also liked

GeoScript - Spatial Capabilities for Scripting Languages
GeoScript - Spatial Capabilities for Scripting LanguagesGeoScript - Spatial Capabilities for Scripting Languages
GeoScript - Spatial Capabilities for Scripting LanguagesJustin Deoliveira
 
Scripting GeoServer with GeoScript
Scripting GeoServer with GeoScriptScripting GeoServer with GeoScript
Scripting GeoServer with GeoScriptJustin Deoliveira
 
Advanced Security With GeoServer
Advanced Security With GeoServerAdvanced Security With GeoServer
Advanced Security With GeoServerGeoSolutions
 
State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016GeoSolutions
 
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
 
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
 
State of GeoServer, GeoTools and Friends 2014
State of GeoServer, GeoTools and Friends 2014State of GeoServer, GeoTools and Friends 2014
State of GeoServer, GeoTools and Friends 2014Jody Garnett
 

Viewers also liked (7)

GeoScript - Spatial Capabilities for Scripting Languages
GeoScript - Spatial Capabilities for Scripting LanguagesGeoScript - Spatial Capabilities for Scripting Languages
GeoScript - Spatial Capabilities for Scripting Languages
 
Scripting GeoServer with GeoScript
Scripting GeoServer with GeoScriptScripting GeoServer with GeoScript
Scripting GeoServer with GeoScript
 
Advanced Security With GeoServer
Advanced Security With GeoServerAdvanced Security With GeoServer
Advanced Security With GeoServer
 
State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016State of GeoServer - FOSS4G 2016
State of GeoServer - FOSS4G 2016
 
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
 
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
 
State of GeoServer, GeoTools and Friends 2014
State of GeoServer, GeoTools and Friends 2014State of GeoServer, GeoTools and Friends 2014
State of GeoServer, GeoTools and Friends 2014
 

Similar to Raster data in GeoServer and GeoTools: Achievements, issues and future developments

GeoServer an introduction for beginners
GeoServer an introduction for beginnersGeoServer an introduction for beginners
GeoServer an introduction for beginnersGeoSolutions
 
GeoServer, an introduction for beginners
GeoServer, an introduction for beginnersGeoServer, an introduction for beginners
GeoServer, an introduction for beginnersGeoSolutions
 
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...GeoSolutions
 
Fossgis 2013 GeoServer Presentation
Fossgis 2013 GeoServer PresentationFossgis 2013 GeoServer Presentation
Fossgis 2013 GeoServer PresentationGeoSolutions
 
Spatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote SensingSpatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote SensingGeoSolutions
 
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
 
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
 
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
 
Geosolutions Foss4g It 2010
Geosolutions Foss4g It 2010Geosolutions Foss4g It 2010
Geosolutions Foss4g It 2010GeoSolutions
 
Geospatial Temporal Open Standards for Big Data from Space (BiDS2014)
Geospatial Temporal Open Standards for Big Data from Space (BiDS2014)Geospatial Temporal Open Standards for Big Data from Space (BiDS2014)
Geospatial Temporal Open Standards for Big Data from Space (BiDS2014)George Percivall
 
GeoServer The Open Source Solution for the interoperable management of geos...
GeoServer The Open Source Solution  for the interoperable management  of geos...GeoServer The Open Source Solution  for the interoperable management  of geos...
GeoServer The Open Source Solution for the interoperable management of geos...GeoSolutions
 
Geosolutions FOSS4g 2009 Redux
Geosolutions FOSS4g 2009 ReduxGeosolutions FOSS4g 2009 Redux
Geosolutions FOSS4g 2009 ReduxGeoSolutions
 
Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...GeoSolutions
 
OSGeo Live Lightening Overview
OSGeo Live Lightening OverviewOSGeo Live Lightening Overview
OSGeo Live Lightening OverviewJody Garnett
 
Processing Geospatial Data At Scale @locationtech
Processing Geospatial Data At Scale @locationtechProcessing Geospatial Data At Scale @locationtech
Processing Geospatial Data At Scale @locationtechRob Emanuele
 
LocationTech Projects
LocationTech ProjectsLocationTech Projects
LocationTech ProjectsJody Garnett
 
State of GeoServer 2015
State of GeoServer 2015State of GeoServer 2015
State of GeoServer 2015Jody Garnett
 
Spatiotemporal Raster Improvements in GeoServer
Spatiotemporal Raster Improvements in GeoServerSpatiotemporal Raster Improvements in GeoServer
Spatiotemporal Raster Improvements in GeoServerGeoSolutions
 
GFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork PresentationGFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork PresentationGeoSolutions
 

Similar to Raster data in GeoServer and GeoTools: Achievements, issues and future developments (20)

GeoServer an introduction for beginners
GeoServer an introduction for beginnersGeoServer an introduction for beginners
GeoServer an introduction for beginners
 
GeoServer, an introduction for beginners
GeoServer, an introduction for beginnersGeoServer, an introduction for beginners
GeoServer, an introduction for beginners
 
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
GeoServer for Spatio-temporal Data Handling With Examples For MetOc And Remot...
 
Fossgis 2013 GeoServer Presentation
Fossgis 2013 GeoServer PresentationFossgis 2013 GeoServer Presentation
Fossgis 2013 GeoServer Presentation
 
Spatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote SensingSpatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
Spatio-temporal Data Handling With GeoServer for MetOc And Remote Sensing
 
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...
 
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...
 
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 Foss4g It 2010
Geosolutions Foss4g It 2010Geosolutions Foss4g It 2010
Geosolutions Foss4g It 2010
 
Geospatial Temporal Open Standards for Big Data from Space (BiDS2014)
Geospatial Temporal Open Standards for Big Data from Space (BiDS2014)Geospatial Temporal Open Standards for Big Data from Space (BiDS2014)
Geospatial Temporal Open Standards for Big Data from Space (BiDS2014)
 
GeoServer The Open Source Solution for the interoperable management of geos...
GeoServer The Open Source Solution  for the interoperable management  of geos...GeoServer The Open Source Solution  for the interoperable management  of geos...
GeoServer The Open Source Solution for the interoperable management of geos...
 
Geosolutions FOSS4g 2009 Redux
Geosolutions FOSS4g 2009 ReduxGeosolutions FOSS4g 2009 Redux
Geosolutions FOSS4g 2009 Redux
 
Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...Serving earth observation data with GeoServer: addressing real world requirem...
Serving earth observation data with GeoServer: addressing real world requirem...
 
OSGeo Live Lightening Overview
OSGeo Live Lightening OverviewOSGeo Live Lightening Overview
OSGeo Live Lightening Overview
 
Processing Geospatial Data At Scale @locationtech
Processing Geospatial Data At Scale @locationtechProcessing Geospatial Data At Scale @locationtech
Processing Geospatial Data At Scale @locationtech
 
LocationTech Projects
LocationTech ProjectsLocationTech Projects
LocationTech Projects
 
State of GeoServer 2015
State of GeoServer 2015State of GeoServer 2015
State of GeoServer 2015
 
Spatiotemporal Raster Improvements in GeoServer
Spatiotemporal Raster Improvements in GeoServerSpatiotemporal Raster Improvements in GeoServer
Spatiotemporal Raster Improvements in GeoServer
 
Bcs Talk Notes
Bcs Talk NotesBcs Talk Notes
Bcs Talk Notes
 
GFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork PresentationGFOSS DAY 2012 GeoNetwork Presentation
GFOSS DAY 2012 GeoNetwork Presentation
 

More from 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
 
State of GeoServer 2.12
State of GeoServer 2.12State of GeoServer 2.12
State of GeoServer 2.12GeoSolutions
 
Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015GeoSolutions
 
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
 
GeoServer beginners gwf_2015
GeoServer beginners gwf_2015GeoServer beginners gwf_2015
GeoServer beginners gwf_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
 

More from 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
 
State of GeoServer 2.12
State of GeoServer 2.12State of GeoServer 2.12
State of GeoServer 2.12
 
Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015Advanced Security with GeoServer - FOSS4G 2015
Advanced Security with GeoServer - FOSS4G 2015
 
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
 
GeoServer beginners gwf_2015
GeoServer beginners gwf_2015GeoServer beginners gwf_2015
GeoServer beginners gwf_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
 

Recently uploaded

Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...DianaGray10
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-pyJamie (Taka) Wang
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsSafe Software
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsSeth Reyes
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfJamie (Taka) Wang
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopBachir Benyammi
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarPrecisely
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesDavid Newbury
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDELiveplex
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UbiTrack UK
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Brian Pichman
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8DianaGray10
 

Recently uploaded (20)

Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-py
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity Webinar
 
201610817 - edge part1
201610817 - edge part1201610817 - edge part1
201610817 - edge part1
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond Ontologies
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 
20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8
 

Raster data in GeoServer and GeoTools: Achievements, issues and future developments

  • 1. Raster data in GeoServer and GeoTools: Achievements, issues and future developments Ing. Simone Giannecchini, GeoSolutions Ing. Andrea Aime, GeoSolutions FOSS4G 2014, Portland 8th-13th September 2014
  • 2. Outline  Who we are  The building blocks  Recent Achievements  What’s cooking FOSS4G 2014, Portland 8th-13th September 2014
  • 3. 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  GeoBatch, GeoNetwork  Clients  Public Agencies  Private Companies  http://www.geo-solutions.it FOSS4G 2014, Portland 8th-13th September 2014
  • 4. The technology stack FOSS4G 2014, Portland 8th-13th September 2014
  • 5. GeoServer building blocks WMS WFS WPS REST Google GeoTools GWC ImageIO(-Ext) JTS GDAL WCS JAI(-Ext) Kakadu JAITools Vector Style Raster FOSS4G 2014, Portland 8th-13th September 2014
  • 6. JAI  Java Advanced Imaging Library  SUN then Oracle Image Processing library  Huge number of basic building operations  Tile-based, deferred execution model  Integrate Tile Caching (In Memory)  Easily Extensible  Natively Accelerated Code available for many operations  No source code for native ops  Development more or less stopped! FOSS4G 2014, Portland 8th-13th September 2014
  • 7. JAI-Ext  Oracle JAI Drop-In Replacement  Open Source (Apache 2.0)  High Performance  Pure Java  Support for No-Data  Support for Processing ROI  Several fixes compared to JAI  Support for Band Masks FOSS4G 2014, Portland 8th-13th September 2014
  • 8. JAI-Ext  Operations  Mosaic  Scale  Affine  Translate  Lookup  Algebra  BandMerge  BandSelect  Border  Buffer  Crop  High scalability support  Op. registry  Tile cache  Tile scheduler  SquareRoot  Stats  Warp  ZonalStats FOSS4G 2014, Portland 8th-13th September 2014
  • 9. JAITools/Jiffle  High performance raster processing  Extends, complements, replaces Oracle Java Advanced Imaging (JAI) Library  Open Source, BSD license  Low Level Operations, e.g. RangeLookup  Higher Level Operations  Vectorize, Contour  Raster algebra (Jiffle)  Works mostly in pure raster space (Image Processing)  Stable release is 1.3.0 FOSS4G 2014, Portland 8th-13th September 2014
  • 10. ImageIO  SUN then Oracle Image I/O library  Partly ships with JDK partly as extension  Tile-based, deferred & immediate execution model  Easily Extensible  Natively Accelerated Code available for many formats  No source code for native (de)coders  Development more or less stopped! FOSS4G 2014, Portland 8th-13th September 2014
  • 11. ImageIO-Ext  High Performance raster I/O  Extends, complements, replaces Oracle JAI ImageIO Library  Open Source, LGPL and BSD licenses  Plugins:  BigTiff*, MatFile 5, TurboJPEG  JP2000 (Kakadu)  GDAL integration via ImageIO-ext  JPEG2000, MrSID, ECW  BigTIFF, ERDAS Image, HDF4  Complete list here FOSS4G 2014, Portland 8th-13th September 2014
  • 12. GeoTools  The Open Source Java GIS Toolkit  LGPL  Management of Geospatial data  CRUD Operations  Raster and vector  Rendering  GDAL Support  Based on best-of-breed Open Source projects  Java Advanced Imaging (JAI), ImageIO, ImageIO-Ext, JAITools (soon JAI-Ext too)  Java Topology Suite (JTS) FOSS4G 2014, Portland 8th-13th September 2014
  • 13. GeoServer  GeoSpatial enterprise gateway  Java Enterprise  Management of raster and vector data  Based on GeoTools  Standards compliant  OGC WCS 1.0, 1.1.1 (RI), 2.0.1  OGC WFS 1.0, 1.1 (RI), 2.0  OGC WMS 1.1.1, 1.3.0  OGC WPS 1.0.0  OGC CSW 2.0.2  Google Earth/Maps support FOSS4G 2014, Portland 8th-13th September 2014
  • 14. Recent Achievements FOSS4G 2014, Portland 8th-13th September 2014
  • 15. GS – Faster PNG encoding  High Performance/Pure Java PNG output format  More Control on bugs/enhancements FOSS4G 2014, Portland 8th-13th September 2014  Based on the open source PNGJ library  Optimized pixel extraction to PNG data buffer code
  • 16. GS – raster projection handling  Better polar projection support FOSS4G 2014, Portland 8th-13th September 2014
  • 17. GS – raster projection handling  Rasters crossing dateline FOSS4G 2014, Portland 8th-13th September 2014
  • 18. GT – image mosaic masks  Support for vector masks as shp/wkb/wkt FOSS4G 2014, Portland 8th-13th September 2014
  • 19. GT – image mosaic masks  Also useful for clipping over a certain area  E.g., clip over administrative boundaries FOSS4G 2014, Portland 8th-13th September 2014
  • 20. GS – WCS 2.0  WCS 2.0  The basics  Core service  KVP binding  XML binding  GetCoverage extensions  CRS  Scaling  Interpolation  Range subsetting  GeoTiff  GML  NetCDF  Output format extensions  GeoTIFF  GML Grid  NetCDF  Ensure CITE tests compliancy FOSS4G 2014, Portland 8th-13th September 2014
  • 21. GS – WCS 2.0 Processing Chain Crop RangeSubset Scale & Interpolate Reproject & Interpolate Encode Core Extension Extension Extension Extension FOSS4G 2014, Portland 8th-13th September 2014
  • 22. GS – WCS-EO  WCS Earth Observation profile  Build on top of a working WCS 2.0 with full extensions  WCS 2.0  CRS extension  Range subsetting extension  Interpolation extension  Scaling extension  GeoTiff extension  NetCDF extension  Add support for the WCS-EO extras  Listing coverage datasets in the capabilities documents (based on image mosaic contents, which will have to be marked as “exposed” so that we show their inner structure for EO)  Support describe coverage dataset  Support returning results for an entire dataset in GetCoverage FOSS4G 2014, Portland 8th-13th September 2014
  • 23. GS – Coverage Views  Virtual layers created merging bands from different sources FOSS4G 2014, Portland 8th-13th September 2014
  • 24. GS – Coverage Views FOSS4G 2014, Portland 8th-13th September 2014
  • 25. GT – NetCDF and Grib  NetCDF/Grib official Support  Based on Unidata NetCDF JAVA library  Exposes current interfaces (GridCoverage2DReader,…) too for GeoServer compatibility before changes  1 coverage for each Dataset’s variable (multiple coverages).  Internal data exposed as set of 2D slices  Custom dimensions support  Ancillary XML file:  filter on NetCDF variables/coverages  define low level index schema (for dimensions) FOSS4G 2014, Portland 8th-13th September 2014
  • 26. GT – NetCDF and GRIB  ImageMosaic NetCDF/GRIB integration  Allow the ImageMosaic to handle NetCDF/GRIB files  Expose NetCDF/GRIB internal structure (times, elevations)  Make ImageMosaic handle slices of the source files as granules Mosaic NetCDF 1 NetCDF 2 NetCDF … N … FOSS4G 2014, Portland 8th-13th September 2014
  • 27. GT – NetCDF and GRIB  NetCDF Polyphemus Sample Dataset FOSS4G 2014, Portland 8th-13th September 2014
  • 28. GT – Multicoverage Multidimentional interfaces  StructuredGridCoverage2DReader  exposes the underlying granule structure and dimensions descriptors of a specific coverage  getGranules (return a GranuleSource)  getDimensionDescriptors  allows to create/remove coverages and add new sources  createCoverage  removeCoverage  Harvest  GetGranules FOSS4G 2014, Portland 8th-13th September 2014
  • 29. GS –multiple coverages per store  Multiple Coverages from Mosaic, NetCDF, GRIB FOSS4G 2014, Portland 8th-13th September 2014
  • 30. GT – access mosaic contents  GranuleSource/GranuleStore  GranuleSource:  ReadOnly access to Granules (with Query support)  getGranules(Query)  SimpleFeatureCollection  getSchema  SimpleFeatureType  getCount(Query), getBounds(Query)  E.g.: get all granules having acquisitionYear > 2012 and Country=Italy  GranuleStore:  add/modify/delete capabilities using Transactions  addGranules (SimpleFeatureCollection)  removeGranules (Filter)  updateGranules  E.g.: remove all granules having acquisitionYear < 1990 FOSS4G 2014, Portland 8th-13th September 2014
  • 31. GS – REST over mosaic contents  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/geosolutions/coveragestores/t emperature/file.imagemosaic  READ index schema curl -v -u admin:Geos -XGET "http://localhost:8080/geoserver/rest/workspaces/geosolutions/coveragestores/polyphemus /coverages/NO2/index.xml"  READ AND FILTER WFS like with CQL filtering and paging curl -v -u admin:Geos -XGET "http://localhost:8080/geoserver/rest/workspaces/geosolutions/coveragestores/p olyphemus/coverages/NO2/index/granules.xml?limit=1&filter=time='2013-03- 03T00:00:00Z'" FOSS4G 2014, Portland 8th-13th September 2014
  • 32. GS – REST over mosaic contents  Granule Index CRUD Operations via REST  UPDATE curl -v -u admin:Geos -XPOST -H "Content-type: text/plain" -d "/polyphemus_20130303.nc" "http://localhost:8080/geoserver/rest/workspaces/geosolutions/coveragestores/pol yphemus/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/coveragestores/polyphemus-v1/ coverages/NO2/index/granules.xml?filter=location='polyphemus_20130301.nc'" curl -v -u admin:geoserver -XGET "http://localhost:8080/geoserver/rest/workspaces/topp/coveragestores/polyphemus-v1/ coverages/NO2/index/granules/NO2.2689.xml" FOSS4G 2014, Portland 8th-13th September 2014
  • 33. GS – WCS NetCDF out  NetCDF Output Format  GetCoverage request parameter: &Format=NetCDF  Based on Unidata NetCDF JAVA library  Create a NetCDF output file on top of a GranuleStack:  A GridCoverage2D List:  a GridCoverage2D for each combination of requested Dimension values  GridCoverages should come from a StructuredGridCoverage2DReader  Supports WCS 2.0.1  Trimming: specify values range for a dimension  Slicing: specify single value for a dimension  Supports timeRanges/numberRanges on output FOSS4G 2014, Portland 8th-13th September 2014
  • 34. GS – WCS NetCDF out  Sample WCS request http://localhost:8080/geoserver/wcs?request=GetCoverage& service=WCS&version=2.0.1&coverageId=geosolutions__N O2 &Format=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") FOSS4G 2014, Portland 8th-13th September 2014
  • 35. GS – NetCDF out in ToolsUI FOSS4G 2013, Nottingham 21th September 2013
  • 36. GS – WMS EO Wizard to configure EO layer groups Extending LayerGroup concept Support same style on both raster and vector data Support custom dimensions Alter map on the fly to support band combination  Earth observation profile  GSIP 84 FOSS4G 2014, Portland 8th-13th September 2014
  • 37. GS – WMS-EO  WMS-EO Quirks  Root layer must respond with a specific layer rather than the composition of the children  Kind of a default visualization for a certain Dataset  E.g. when I send a GetMap for the root layer I could get back the browse image default layer  Same styles for both Raster as well as Vector data  E.g. yellow can be use for both flags as well as outlines  Peculiar behavior for Band layer ( raw data )  E.g. multiple bands at different wavelengths  Can request either 1 (grayscale image) or 3 (RGB image)  Different combinations are prohibited  Peculiar Behavior for GetFeatureInfo FOSS4G 2014, Portland 8th-13th September 2014
  • 38. GS – dynamic color map QGIS palettes GDAL pam stats Input raster Dynamic ColorMap FOSS4G 2014, Portland 8th-13th September 2014 Map!
  • 39. What’s cooking Plus what’s on our wish list FOSS4G 2014, Portland 8th-13th September 2014
  • 40. NODATA support  Natively handle NODATA with JAI-EXT  Support in all aspects  Scaling  Reprojection  Interpolation FOSS4G 2014, Portland 8th-13th September 2014
  • 41. GS – Raster algebra WPS  Raster Algebra as WPS  Gets an OGC Filter containing logical operations between raster layers and produces a binary (0/1) layer FOSS4G 2014, Portland 8th-13th September 2014
  • 42. GS – Raster algebra in Coverage views  JIFFLE FOSS4G 2014, Portland 8th-13th September 2014
  • 43. GS – Raster algebra in Coverage Views  Define new bands using a Jiffle formula  Generate fully computed layers  Still using overviews and other native abilities FOSS4G 2014, Portland 8th-13th September 2014
  • 44. The End Questions? andrea.aime@geo-solutions.it simone.giannecchini@geo-solutions.it FOSS4G 2014, Portland 8th-13th September 2014
  • 45. Old news  FOSS4G 2014, Portland 8th-13th September 2014
  • 46. ImageIO-Ext  LibJPEG-Turbo  derivative library of libjpeg based on SIMD instructions (MMX, SSE2, NEON)  accelerate baseline JPEG compression and decompression on x86, x86-64, and ARM systems  available on many platforms  Open Source, LGPL  ImageIO-Ext-TurboJPEG  A JPEG ImageIO plugin built on top of the JAVA wrapper for LibJPEG-Turbo (TurboJPEG)  20%-30% SpeedUp* on JPEG encoding  10%-20% SpeedUp* on JPEG decoding  More info here  Integrates with TIFF reader and writer FOSS4G 2014, Portland 8th-13th September 2014
  • 47. ImageIO-Ext  NITF encoding Support (ImageIO-Ext-NITF)  Based on NITRO  Support for Tagged Record Extensions (TREs)  Support ImageSegments JPEG2000 compression through Kakadu ImageIO-Ext plugin  (Numerically Lossless/VisuallyLossless/Lossy)  NPJE, EPJE BIIF (Basic Image Interchange Format) profiles  J2KLRA TRE support  Support for multiple TextSegments  Support for multiple ImageSegments  Support for ShapeFile Data Extension Segment (CSSHPA) FOSS4G 2014, Portland 8th-13th September 2014
  • 48. GeoTools Band Combine + Symbology On-the-fly Contouring Raster to point vector On-the-fly Polygonalization  Improved internal JAI Concurrency  Introduced and Improved JAI Tile Recycling  Reduced depth of JAI Processing Chains  More aggressive factory caching  Added a few specific high perf JAI operations  e.g. crop  Created Specific high perf ROI class  Improving Tile Caching  Work ongoing  Transparent File vs Memory Caching when writing raster FOSS4G 2014, Portland 8th-13th September 2014
  • 49. GeoTools  Optimized Rendering/Processing for raster data  Optimized Crop Chains  Coalescing multiple Crops into a single one  Optimize Affine Transformation Chains  Coalescing multiple Affine Transformations into a single one NEAREST FOSS4G 2014, Portland 8th-13th September 2014
  • 50. GeoTools BICUBIC FOSS4G 2014, Portland 8th-13th September 2014
  • 51. GeoTools  ImageMosaic  Custom Dimensions  More than simple time/elevation support  E.g.: wavelength, cloudLevel, …  Dimensions with ranges: (startTime, endTime), (minElevation,maxElevation), …  Dynamic read parameters  Filtering  Supports for OGC Filters through the “filter” param  E.g.: Return only ImageMosaic granules where attribute Country = Italy.  filter=“Country=‘Italy’ ” FOSS4G 2014, Portland 8th-13th September 2014
  • 52. ImageMosaic  Custom/Additional dimensions FOSS4G 2014, Portland 8th-13th September 2014
  • 53. GeoTools  ImageMosaic  Ordering  SORT_BY clause support on DBMS based mosaics  sorting=“time A, elevation D”  Stacking VS Merging  Merging: different granules  merged together in the final image as default  Stacking: different granules  stacked on different bands  E.g. MeteoSat data: 12 channels (1 granule for each Channel) 1 = VIS0.6, 2 = VIS0.8, …, 11 = IR13.4, 12 = HRV.  Want return a RGB image made of channels 1,3,7  Stack them FOSS4G 2014, Portland 8th-13th September 2014
  • 54. GeoTools  New API (unsupported/coverage-experiment)  Driver: Get a connection to a coverage store.  CoverageAccess: a physical storage of coverage data. Get access to a source of coverages.  CoverageSource: provides data access to a coverage.  Updated GridCoverage core API  Old GridCoverageReader:  inefficient and thread unsafe way to access multiple coverages  read GridCoverages from the input stream in a sequential order  New GridCoverage2DReader:  Coverages and properties may be accessed by coverage name:  get Envelope(name), get GridRange(name), get CRS(name), read(name), get dynamicParameters (name), …  dynamicParameters support (for custom dimensions) FOSS4G 2014, Portland 8th-13th September 2014
  • 55. GeoServer  LibJPEG-Turbo Output format  Encoding WMS output JPEG images through LibJPEG Turbo library  Based on the TurboJpeg ImageIO-Ext plugin built on top of the JAVA interface for LibJPEG-Turbo (TurboJPEG)  Provided as a GeoServer extension  Up to 80% SpeedUp measured on JPEG encoding  Can be disabled at startup:  -Ddisable.turbojpeg=true  More Info here FOSS4G 2014, Portland 8th-13th September 2014
  • 56. GeoServer  More Color Quantizers OCTTREE Speed loss is around 10% MEDIANCUT FOSS4G 2014, Portland 8th-13th September 2014
  • 57. GeoServer  WMS Custom Dimensions  Work on GeoTools raster Additional Domains  NetCDF  ImageMosaic  Turn additional querying dimensions into WCS/WMS Dimensions  ImageMosaic Domain Category  WMS 1.1.1 DIM_CATEGORY  WMS 1.3.0 DIM_CATEGORY  Perfect for large multidimensional mosaics!  E.g. meteo (forecast time, elevation, band, base time, model name) FOSS4G 2014, Portland 8th-13th September 2014
  • 58. GeoServer  WMS TIME, ELEVATION & More http://localhost:8080/geoserver/geosolutions/wms?...&time=2013-03- 01T00:00:00.000Z&elevation=35.0&DIM_FILEDATE=2013-03- 01T00:00:00.000Z&DIM_UPDATED=2013-04-08T08:18:41.597Z FOSS4G 2014, Portland 8th-13th September 2014