2

My goal is to retrieve something like a multiband raster from geoserver where each band has data for a year. I have an image mosaic layer in geoserver where I can retrieve individual years using &SUBSET=time("2010-01-01T00:00:00.000‌​Z") or &SUBSET=time("2011-01-01T00:00:00.000‌​Z") to get years 2010 and 2011 respectively as explained in the accepted answer of this stack. I have over 100 years to retrieve and want to get them all in one request.

This site explains that you can request a range on the time dimension (specifically they do it for a netcdf:

As explained in the NetCDF output Format for WCS 2.0.1 requests, a NetCDF output format has been developed to write down a NetCDF file with the proper contents coming from a multidimensional output request. Lets do a GetCoverage request involving trimming on these dimensions: latitude, longitude, elevation and time, by specifying these ranges of values:

http://localhost:8083/geoserver/wcs?request=GetCoverage&service=WCS&version=2.0.1&coverageId=geosolutions__time_domainsRanges&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(20,150)&subset=http://www.opengis.net/def/axis/OGC/0/time("2008-11-01T00:00:00.000Z","2008-11-07T00:00:00.000Z")

In particular they use &subset=http://www.opengis.net/def/axis/OGC/0/time("2008-11-01T00:00:00.000Z","2008-11-07T00:00:00.000Z") to specify a time range

When I construct the following query to get years 2005-2010 it only returns one year's raster:

https://geoserver-dev.usanpn.org/geoserver/wcs?service=WCS&version=2.0.1&request=GetCoverage&coverageId=si-x:average_leaf_best&SUBSET=time("2005-01-01T00:00:00.000Z","2010-01-01T00:00:00.000Z")&format=geotiff

How do I write this request, or is it even supported for something like a geotiff?

  • I can't imagine any way for storing different times into one GeoTIFF. Or perhaps creating a multi-page tiff might work somehow but I have never seen such in action. I recommend to use GeoTIFF for snapshots and use other formats for multi-dimensional data. – user30184 Sep 13 '17 at 21:00
  • Is NetCDF the standard for this type of multidimensional data from geoserver if your not using arcgis? The only other format I see that maybe makes sense is GML. I might have a misconception that a raster and geotiff are basically the same thing - that's why I was thinking a multiband raster should be able to go into a GeoTIFF. – apricity Sep 13 '17 at 21:09
  • 1
    Multiband is no problem for GeoTIFF but it is still flat image - x, y, from one to n bands but only one value for each pixel and band. One could put time based snapshots on different bands in GeoTIFF but the format does not have metadata support for such usage. You should tell by other means for your users what all the bands contain. GML is the Swiss knife for everything but not necessarily most convenient for anything. – user30184 Sep 13 '17 at 21:49
1

GeoTiff does not support storing multiple years, the only format currently supporting multi-dimensional grids is NetCDF.

That said, in theory a new format could be created, that generates a zip file with many GeoTiff inside, one per time in the selected period. That needs coding of course :-)

Other possibilities might be to create a N band Geotiff, with some convention as to which time is associated to which band (might make sense if the source is a single band raster)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.