3

I'm pretty new to GeoServer. I would like to serve results of a simulation that concerns geospatial data as a Web Coverage Service (it has to be OGC compliant). The individual steps of the simulation (similar to movie frames) should be uploaded to the server. Currently the results are simply series of files with some basic metadata. Client may want to ask for a specific period of time that should be returned (specific set of frames).

I would like to write my own data store format (GeoServer extension) for reading simulation results that would be kept in some directory. However, I see 3 problems with doing this with the GeoServer:

  1. There is only a 1-1 relation between data store and layer. That is I would have to create separate data stores for each simulation. Because each simulation is of the same kind it would be more reasonable to keep them in one store.
  2. The layers do not refresh themselves at runtime. That is, if a new data appears in a data store then it is not visible by the layer. The layer needs to be recreated.
  3. I am worried about the support of time-querying of coverages or multidimensional coverages. I read somewhere that those are not supported well by the GeoServer.

Another approach is to create layers and data stores dynamically using REST interface when new simulation results are available. This doesn't look like a proper way, though.

Am I right about above issues? Is there any convenient way for doing this with GeoServer?

I am using GeoServer 2.2-beta.

EDIT:

We eventually ended up implementing our own simple WCS service that meets our needs. However, because the ImageMosaic plugin did work when it comes to series of time-related data (the problem was we still had to create new layers manually) I accept Andrea Aime's answer.

1 Answer 1

0

Have a look at the image mosaic store, it is used in GeoServer 2.2.x to provide support for time/elevation over a list of rasters co-referenced and with the same resolution, but associated to different time/elevation (or other attribute).

The mosaic index can be stored in a database too (there are no docs about it right now, but you can look in the java unit tests in Geotools gt-imagemosaic module to see how that's done), we use that to dynamically add new tiles with associated metadata and GeoServer exposes them automatically, no need to add new layer or force any kind of refresh.

Some extra info here: http://geo-solutions.blogspot.it/2009/12/adding-time-support-to-geoserver-and.html

6
  • I did try this plugin. The thing that worries me is the possibility to dynamically add while new coverage that is represented by layer.
    – gregorej
    Commented Jun 8, 2012 at 6:55
  • You just need to add the new tiles on disk and new rows in the database representing them, and the mosaic will pick them up. Commented Jun 8, 2012 at 20:13
  • @Anrea but what about layers? can they also be created automatically? I would like a new coverage to appear in available coverages immediately as it is available.
    – gregorej
    Commented Jun 11, 2012 at 9:54
  • No, layers cannot be created automatically by GeoServer, but you can create them with tools of your own writing by using the REST config API: docs.geoserver.org/latest/en/user/restconfig/… Commented Jun 19, 2012 at 6:21
  • Yes, I thought about using this API but it appeared to me as a strange and inelegant solution
    – gregorej
    Commented Jun 19, 2012 at 6:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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