On Sat, Jul 16, 2016 at 10:07:42AM +0200, Christian Mueller wrote:
> Hi Frank
> 
> First I want to thank you for the contribution. Time support is quite a
> challenge because it should be available to all supported databases
> including Oracle GeoRaster, Oracle native, DB2,.....

I agree it *should* work on all of those, but unless someone actually
has access to all of them, I don't think adding support for everything
at the same time is very realistic. As I see it, the best we can do is
try to ensure the shared code doesn't make assumptions that won't hold
on systems that aren't updated right away.

I've started on pgraster because that's what we want to use here, and I
can definitely work on generic postgresql and generic jdbc. Mysql might
be possible (I can definitely install it, but I don't have much mysql
experience at all), but I don't have access to oracle or db2 servers.

> Additionally the time support should work with GeoServer as described here
> http://docs.geoserver.org/latest/en/user/services/wms/time.html#specifying-a-time

Yes. That works right now (it's what I use for testing), except possibly
for periodicity (I'll check and fix if needed).

There is an open question though: what's supposed to be returned if more
than one raster tile from the database matches the request for a given
location? Latest data for each point? Only points for the latest timestamp?
Some sort of average? I assume "latest data for each point" makes the most
sense, but it's also the hardest to do.
I know my code right now doesn't really handle this at all (you'll get
data, but which particular bit isn't deterministic).

Only points for the latest timestamp seems fairly easy to handle, but
latest data for each point is tricky. There are several ways I've looked at:

* No multithreaded decoding or composing, so an ORDER BY time on the
  database query will enforce "latest" or "earliest". This won't work for
  averages, and dropping multithreading is a rather high price to pay.
* Have the database query do the filtering. For pgraster, as far as I can
  see this implies having either consistent tiling for all data (i.e.
  tiles for different times have exactly the same grid) or having the
  query (slowly...) retile everything. For systems without in-database
  raster systems I don't see a way to do it.

> The next point is that some database engines (DB2,Oracle) have a built in
> time support which is slightly different to the time support provided by
> geotools.

Do you have some pointers to documentation?

Frank

> Nevertheless I want to hear your opinion.
> 
> Cheers
> Christian
> 
> 

-- 
Frank Gevaerts                                 frank.gevae...@fks.be
fks bvba - Formal and Knowledge Systems        http://www.fks.be/
Schampbergstraat 32                            Tel:  ++32-(0)11-21 49 11
B-3511 KURINGEN-HASSELT                        Fax:  ++32-(0)11-22 04 19

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to