Kamis, 27 Oktober 2011

Time and elevation support in GeoServer


Busy times in GeoSolutions and in GeoServer land! We just finished adding support for WMS time and elevation in GeoServer WMS on trunk, with plans to backport it to the stable 2.1.x series after the 2.1.1 release.

Configuring and using dimensions is performed, as tradition, by means an easy to use GUI. Just take a layer that has time information (or elevation), like this "storm tracks" layer:


Then switch to the new Dimensions tab and configure time support as follows:

Submit and voilĂ , you have your time enabled layer. Looking at the capabilities you can see GeoServer is automatically extracting the list of values for you (but you could also ask it to return just an interval, for brevity):



If you now ask GeoServer for the WMS layer you'll get only one track, the last one, also known as the current data: 
But then again, you can ask for a month worth of data adding &TIME=2004-08-03/2004-09-03 to your request:
If you really want you also cherry pick the times you want to see, for example with &TIME=2000-08-03T16:00:00.000Z,2000-08-13T16:00:00.000Z,2000-08-17T10:00:00.000Z,2000-08-19T16:00:00.000Z:

For now we're added time and elevation support, but we're getting started with raster data and we should be landing that support soon too.

Interested in multidimensional data management advances? Let us know!

The GeoSolutions team,

Rabu, 12 Oktober 2011

GeoServer News: Hiding layers from the capabilities document

Hi all,
in this blog post we would like to talk about a new functionality that we has just introduced in GeoServer, the layer "advertised" flag.

As you know, ignoring security settings for the moment, all enabled layers configured in GeoServer are made available though all the OGC services for which they make sense: vector layers are published automatically to WMS and WFS, raster layers to WMS and WCS.

This is a fine default behavior, but in some cases one would like that the layer was there, but without making the layer known to the general public. Tipical use cases:
  • you want to expose a set of layers as a layer group, but you don't want to publish the layers separately
  • some application needs to setup a temporary layer, maybe the result of some computation, without having the whole world know about it
  • the administrator wants a layer to be available for testing, but not have the whole world hit it yet (maybe because the layer configuration/styling is not done)
Up until GeoServer 2.1.1 the above was only partially possible by making the layer available only to certain users via the security setup, but in 2.1.2 it got just a lot easier, there is a new publishing flag, "advertised", that you can uncheck to hide the layer:

Once un-ckecked the layer won't appear anymore into the capabilities documents, nor in the layer preview table, but will still be available for all other service requests.

There are other things that could be done to improve layer management, such as attribute renaming, easier association with styles, publishing of a layer only towards certain OGC services and the like. Interested in getting any of that happen today? Let us know!



Regards,
the GeoSolutions Team.

Senin, 26 September 2011

GeoServer Aggregating DataStore: Aggregate and republish from several data sources

When it comes to publishing data with GeoServer the most common case is to publish layers that one owns and that can store and serve fully from the local premises.

There are however cases in which a dataset with a uniform structure is handled by several different entities, each one making it available to others, but with no unified view of the data itself.
This might be due to geographical distribution of the stakeholders, separate ownerships, administrative subdivisions: a typical case is a set of local public administrations, all publishing the same, or similar, data set in a independent way.

For this use case we have developed the aggregating data store, a GeoTools store in which features pertaining to the same layer/feature type are coming from several different other stores: the store unifies all of them in a centralized view that can be accessed as a seamless whole.

The store requires the source types to be very similar, but not necessarily identical:
  • they can have a different layer names
  • may lack some attributes, or have some that are not shared with others
  • may not have a perfect type match (e.g., the same attribute can be an integer in one store and a string in another, a conversion to unify the two will be attempted).
A "default" store is appointed that defines the structure of the whole, and every other feature is remapped onto that structure.
Each data access is performed in parallel in order to minimize data loading time, and the store can be configured to tolerate the occasional disappearance of one of the data sources.

This new store is now made available as a GeoServer community plugin for the trunk series, and can be downloaded from the nightly builds repository along with a GeoServer trunk build that allows to use it.

We are still not managing attribute renaming, though it would be quite a nice feature to add. If you are interested in the topic contact us and let's see how we can work together to improve the store.

Regards,
the GeoSolutions Team.

Senin, 19 September 2011

GWT-OpenLayers release 0.6

A lot of improvements and some initial alignment with OpenLayers 2.11 have been made on the fresh release of GWT-OpenLayers library.

Actually the developers are also evaluating a brand new refactored showcase and a full alignment with OpenLayers 2.11.

The releases are available for the download here:


On release 0.6 the major improvements are:
  • Implementation of OL client Icon
  • The possibility of removing layers from the map and changing the z-level
  • New zoom and pan controls for the map
  • Implementation of OL Dot Per Inch
  • Implementation of OL Styling
  • Implementation of OL Graticule
  • Improvements to OL Controls
  • Some nice Vectorial features stuff, along with measurements and geometric operations
  • Navigation History
  • Snapping
  • GML improvements
  • WMS Operations improvements
  • Markers
  • Google, VirtualEarth, Bing and OSM Layers improvements
  • TileManagerService Layers
  • PopUps improvements
  • Protocols improvements
  • A new showcase and a lot of examples
Alessio Fabiani has taken care of the 0.6 release as an active committer and administrator of the project.

Regards,
the GeoSolutions Team.

Rabu, 14 September 2011

GeoSolutions Talks @ FOSS4G2011: the slides

Dear All, here we go with the slides of our presentations at FOSS4G, for those that could not attend, and for everybody else that wants to get all the details of the presentations as soon as possible on their computer.
GeoServer GeoTools
The slides pack an incredible amount of ready to use information for all GeoServer and GeoTools users, do not miss them :-)

If you liked the styling SLD presentation we also setup a GeoServer publishing the example data set:
Any topic that you want to explore in more details? The presentations wet your appetite and you crave for more content? Let us know!

Senin, 12 September 2011

GeoSolutions Talks @ FOSS4G 2011


Dear All,
it looks like we will have some busy times at FOSS4G this week.
If you check this search you can see a few interesting talks that we will give, let's group them by topic:

GeoServer
GeoTools

It is worth to point out that Wednesday there will be a full immersion on GeoServer with 3 talks in a row that will go from a general overview of the project to an in-depth analysis of rendering and production set up.

Are you curious to know more about the latest developments we have done? Interested in knowing how we can help your organization reach your goals? Contact us!

The GeoSolutions team,

Selasa, 16 Agustus 2011

Developer's Corner: Audit your GeoServer installation with the new monitoring extensions


When running one or more GeoServer in production it is often important to keep tabs on the server and its workload.



The monitoring community module, available among the nightly builds, allows to track requests flowing into the server and expose basic statistics about the traffic in terms of OGC services being used.

Configured in "history" mode it also stores all relevant request details into a database, allowing other tools to perform detailed usage analysis in post processing.



This is great, but has some limitations. In particular, but storing all request details into a single database table the speed at which the new request details are inserted decreases over time in most relational databases, adding overhead to GeoServer as well, especially during peak loads.



We recently developed an alternative storage that uses plain text files instead, with file rolling when the file reaches a configurable record count as well as every time midnight is reached.


All the request details are first collected and fed into a queue that is then read by a separate thread doing the actual logging: this ensures there is no significant overhead and that the logging happens without slowing down the main thread.














Separate applications, running offline periodically, can then grab the files generated and compute whatever statistics are deemed necessary without impacting on GeoSeGeoServerrver's activity.












The logging by default builds XML files with all the details of a request, including the body of posts requests, as shown in this example file. However the Freemarker templates driving the logging allow the administrator to perform a completely different kind of logging, maybe duplicating the Apache log format or generate JSON documents instead.




See the online documentation for details on how it's possible to configure the logging module.






Interested in hearing more about GeoServer performance monitoring and auditing? Let us know!






Regards,

the GeoSolutions Team.