[Geoserver-users] ImageMosaic JDBC and time series.

Hi all,
I started to work with geoserver and I configured the ImageMosaic JDBC plugin with an Oracle database like storage for tiles images.
I'm interested to know if I can add the "temporal feature" for the tiles in way to obtain different layer on the same zone.
I've read on web this features for ImageMosaic plugin, but I didn't found something of JDBC plugin.

Someone can say me if this feature is applicable also for JDBC plugin and how?

Thank,
Regards,

--
Mario Cavicchi

Hello Mario,
the ImageMosaic plugin is able to work against JDBC datastores also, not only shapefiles, i.e. it can create it’s indexes on the database by providing the DataStore connection parameters to it.

Alessio.


Ing. Alessio Fabiani
Founder / CTO GeoSolutions S.A.S.

GeoSolutions S.A.S.
Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy

phone: (+39) 0584 96.23.13
fax: (+39) 0584 96.23.13
mobile:(+39) 331 62.33.686

http://www.geo-solutions.it
http://geo-solutions.blogspot.com
http://www.linkedin.com/in/alessiofabiani
http://twitter.com/geosolutions_it

On Mon, May 16, 2011 at 9:33 AM, Mario Cavicchi <cavicchi@anonymised.com> wrote:

Hi all,
I started to work with geoserver and I configured the ImageMosaic JDBC
plugin with an Oracle database like storage for tiles images.
I’m interested to know if I can add the “temporal feature” for the tiles
in way to obtain different layer on the same zone.
I’ve read on web this features for ImageMosaic plugin, but I didn’t
found something of JDBC plugin.

Someone can say me if this feature is applicable also for JDBC plugin
and how?

Thank,
Regards,


Mario Cavicchi


Achieve unprecedented app performance and reliability
What every C/C++ and Fortran developer should know.
Learn how Intel has extended the reach of its next-generation tools
to help boost performance applications - inlcuding clusters.
http://p.sf.net/sfu/intel-dev2devmay


Geoserver-users mailing list
Geoserver-users@anonymised.comsts.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

Hi, I am the developer of imagemosicJDBC. The module does not support the temporal feature out of the box, you are the first user who asked.

There is a possibility to encode your own jdbc access logic (plugin), unfortunately the following url is password protected at the moment.

http://docs.codehaus.org/display/GEOTDOC/Customized+JDBC+Access+for+images

I could modify the code of the imagemosaicJDBC module and pass the time values into the plugin. Your job would would be to add your specific sql where conditions to the statement.

Is this of interest for you ?
If it is, what is your exact configuration (xml file).

Cheers
Christian

Quoting Mario Cavicchi <cavicchi@anonymised.com>:

Hi all,
I started to work with geoserver and I configured the ImageMosaic JDBC
plugin with an Oracle database like storage for tiles images.
I'm interested to know if I can add the "temporal feature" for the tiles
in way to obtain different layer on the same zone.
I've read on web this features for ImageMosaic plugin, but I didn't
found something of JDBC plugin.

Someone can say me if this feature is applicable also for JDBC plugin
and how?

Thank,
Regards,

--
Mario Cavicchi

------------------------------------------------------------------------------
Achieve unprecedented app performance and reliability
What every C/C++ and Fortran developer should know.
Learn how Intel has extended the reach of its next-generation tools
to help boost performance applications - inlcuding clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

On 05/17/2011 12:50 PM, christian.mueller@anonymised.com wrote:

Quoting Mario Cavicchi <cavicchi@anonymised.com>:

Mario, you should stay on the mailing list, this mail was sent only to me.

Sorry for my error, I wrong the to press reply. Now I send on mailing list.

I talked about the xml file where you specify the database mappings, the
connection params and the coverage name and type.

My configuration files are like in the tutorial (more or less):

mainfile.xml:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE ImageMosaicJDBCConfig [
   <!ENTITY mapping PUBLIC "mapping" "mapping.oracle.xml.inc">
   <!ENTITY connect PUBLIC "connect" "connect.oracle.xml.inc">]>
<config version="1.0">
   <coverageName name="classified"/>
   <coordsys name="EPSG:32633"/>
   <scaleop interpolation="1"/>
   <verify cardinality="false"/>
   &mapping;
   &connect;
</config>

mapping.oracle.xml.inc:
<connect>

  <dstype value="DBCP"/>
  <username value="geoserver" />
  <password value="password" />
  <jdbcUrl value="jdbc:oracle:thin:@localhost:1521:geoserver" />
  <driverClassName value="oracle.jdbc.OracleDriver"/>
  <maxActive value="10"/>
  <maxIdle value="0"/>
</connect>

connect.oracle.xml.inc:
<spatialExtension name="oracle"/>
<mapping>
     <masterTable name="mosaic" >
       <coverageNameAttribute name="name"/>
       <maxXAttribute name="maxX"/>
       <maxYAttribute name="maxY"/>
       <minXAttribute name="minX"/>
       <minYAttribute name="minY"/>
       <resXAttribute name="resX"/>
       <resYAttribute name="resY"/>
       <tileTableNameAtribute name="TileTable" />
       <spatialTableNameAtribute name="SpatialTable" />
     </masterTable>
     <tileTable>
       <blobAttributeName name="data" />
       <keyAttributeName name="location" />
     </tileTable>
     <spatialTable>
       <keyAttributeName name="location" />
       <geomAttributeName name="GEOM" />
       <tileMaxXAttribute name="maxX"/>
       <tileMaxYAttribute name="maxY"/>
       <tileMinXAttribute name="minX"/>
       <tileMinYAttribute name="minY"/>
     </spatialTable>
</mapping>

I want to have a look at it to figure out a possible solution.
Christian

From my point of view, I would be nice if I can add the tag "timeAttributeName" ( or something) in the tileTable and, in the query to geoserver, I can specify a time range (start datetime, end datetime).
And finally, would be very nice add an option to gt-imagemosaic-jdbc.jar with option import to specify to acquisition date/time of the tiles imported.

Thanks and regards,

--
Mario Cavicchi

MEEO S.r.l.
Via Saragat 9
I-44122 Ferrara, Italy
Tel: +39 0532 1861501
Fax: +39 0532 1861637
http://www.meeo.it

========================================
"ATTENZIONE:le informazioni contenute in questo messaggio sono
da considerarsi confidenziali ed il loro utilizzo è riservato unicamente
al destinatario sopra indicato. Chi dovesse ricevere questo messaggio
per errore è tenuto ad informare il mittente ed a rimuoverlo
definitivamente da ogni supporto elettronico o cartaceo."

"WARNING:This message contains confidential and/or proprietary
information which may be subject to privilege or immunity and which
is intended for use of its addressee only. Should you receive this
message in error, you are kindly requested to inform the sender and
to definitively remove it from any paper or electronic format."

1)
I fear there is no quick solution for your problem. A good solution would be to have additional Elements

<tileTableWhereCondition>....</tileTableWhereCondition>.
<spatialTableWhereCondition>....</spatialTableWhereCondition>.

Much harder is the integration into the import utility.

2)
The only quick solution is to write your own access logic
http://docs.geotools.org/latest/userguide/library/coverage/jdbc/customized.html

Examples are here
http://svn.osgeo.org/geotools/trunk/modules/plugin/imagemosaic-jdbc/src/main/java/org/geotools/gce/imagemosaic/jdbc

all classes starting with JDBCAccess*

I would have to change some code for passing the date/time values into the jdbc access implementation.

And you must find another way to import your data.

If you decide for 2) after reading the documentation and looking at the code, give me ping, I will try to assist.

Cheers
Christian

Quoting Mario Cavicchi <cavicchi@anonymised.com>:

On 05/17/2011 12:50 PM, christian.mueller@anonymised.com wrote:

Quoting Mario Cavicchi <cavicchi@anonymised.com>:

Mario, you should stay on the mailing list, this mail was sent only to me.

Sorry for my error, I wrong the to press reply. Now I send on mailing list.

I talked about the xml file where you specify the database mappings, the
connection params and the coverage name and type.

My configuration files are like in the tutorial (more or less):

mainfile.xml:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE ImageMosaicJDBCConfig [
   <!ENTITY mapping PUBLIC "mapping" "mapping.oracle.xml.inc">
   <!ENTITY connect PUBLIC "connect" "connect.oracle.xml.inc">]>
<config version="1.0">
   <coverageName name="classified"/>
   <coordsys name="EPSG:32633"/>
   <scaleop interpolation="1"/>
   <verify cardinality="false"/>
   &mapping;
   &connect;
</config>

mapping.oracle.xml.inc:
<connect>

  <dstype value="DBCP"/>
  <username value="geoserver" />
  <password value="password" />
  <jdbcUrl value="jdbc:oracle:thin:@localhost:1521:geoserver" />
  <driverClassName value="oracle.jdbc.OracleDriver"/>
  <maxActive value="10"/>
  <maxIdle value="0"/>
</connect>

connect.oracle.xml.inc:
<spatialExtension name="oracle"/>
<mapping>
     <masterTable name="mosaic" >
       <coverageNameAttribute name="name"/>
       <maxXAttribute name="maxX"/>
       <maxYAttribute name="maxY"/>
       <minXAttribute name="minX"/>
       <minYAttribute name="minY"/>
       <resXAttribute name="resX"/>
       <resYAttribute name="resY"/>
       <tileTableNameAtribute name="TileTable" />
       <spatialTableNameAtribute name="SpatialTable" />
     </masterTable>
     <tileTable>
       <blobAttributeName name="data" />
       <keyAttributeName name="location" />
     </tileTable>
     <spatialTable>
       <keyAttributeName name="location" />
       <geomAttributeName name="GEOM" />
       <tileMaxXAttribute name="maxX"/>
       <tileMaxYAttribute name="maxY"/>
       <tileMinXAttribute name="minX"/>
       <tileMinYAttribute name="minY"/>
     </spatialTable>
</mapping>

I want to have a look at it to figure out a possible solution.
Christian

From my point of view, I would be nice if I can add the tag
"timeAttributeName" ( or something) in the tileTable and, in the query
to geoserver, I can specify a time range (start datetime, end datetime).
And finally, would be very nice add an option to gt-imagemosaic-jdbc.jar
with option import to specify to acquisition date/time of the tiles
imported.

Thanks and regards,

--
Mario Cavicchi

MEEO S.r.l.
Via Saragat 9
I-44122 Ferrara, Italy
Tel: +39 0532 1861501
Fax: +39 0532 1861637
http://www.meeo.it

========================================
"ATTENZIONE:le informazioni contenute in questo messaggio sono
da considerarsi confidenziali ed il loro utilizzo è riservato unicamente
al destinatario sopra indicato. Chi dovesse ricevere questo messaggio
per errore è tenuto ad informare il mittente ed a rimuoverlo
definitivamente da ogni supporto elettronico o cartaceo."

"WARNING:This message contains confidential and/or proprietary
information which may be subject to privilege or immunity and which
is intended for use of its addressee only. Should you receive this
message in error, you are kindly requested to inform the sender and
to definitively remove it from any paper or electronic format."

------------------------------------------------------------------------------
Achieve unprecedented app performance and reliability
What every C/C++ and Fortran developer should know.
Learn how Intel has extended the reach of its next-generation tools
to help boost performance applications - inlcuding clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.