Thanks for your comments. Here are mine 1) Your comments on ResX, ResY, MinX, MinY, MaxX,MaxY. These attributes are in the META Table which has one record for each pyramid level. MinX, MinY, MaxX,MaxY are information for the whole extent of a pyramid level. ResX, ResY are the resolution for the pyramid level and are used to decide which pyramid to use.
All these fields have not to be filled in advance and are calculated in runtime. Storing back this values in the database is only for performance reasons. The plugin would work without these fields. 2) Storing the params for the Affine Transformation (mostly read from the world file) is currently not supported. We can discuss this after finishing the GSOC. At the moment rectangular tiles are supported. These tiles can be different in size and image format. 3) Storing the image area as a postgis geometry This is supported. If you have no spatial extension you can use the minx,miny,max,maxy approach, for postgis,mysql,oracle and db2 you can and should use the geometry column type with its associated spatial reference system. 4) Storing BLOBs as File and not in the database. In my opinion, this works only for small/medium images. In my project the largest pyramid has 2500000 tiles (yes, 2.5 millions). All maps together produce about 10 millions tiles. The deployment platform is an AIX P5 using 4 processors and using and IBM Storage tower. You cannot switch into a directory and make "ls *.tif". The result is "command line buffer exceeded". Try to move 2.5 Mio files from one directory into another. Coffee Time. And again, we are not talking about SATA II disks, we are talking about an IBM Shark System using fibre channels. Another reason is to get consistent backups. Storing on files means to backup the db and each file for its own. What happens in an error situation ?. Depended on the db you use, you can prepare physical storage for the images avoiding file system access at all (raw devices) . And finally, the default for almost any db handling blobs is to store them in the file system, the difference is you do not see the files. You are right, there is no way to create an index for pixels, but it would not make sense. Summary: We should discuss associating a tile with an affine transform. This would be an improvement , but first I have to finish the GSOC. Thanks for your hints christian Martin Desruisseaux-2 wrote: > > We can imagine a number of reasons why an JDBC Mosaic other then PostGrid > is > wanted. It could be lighter, target a wider range of database backend, > apply > mosaic without the restriction on integral subsampling (this is a balance > between memory usage, performance, capability to handle arbitrary scales), > etc. > > However PostGrid is 5 years old and we gained some experience with it. So > maybe > I should share a few suggestions: > > You have a table with the following columns: ResX, ResY, MinX, MinY, MaxX, > MaxY. > We did something similar in the early days of PostGrid, and changed our > mind. > The first 4 columns are essentially the same than AffineTransform scaleX, > scaleY, translateX and translateY coefficients when there is no rotation. > The > last two can be computed if we known the image size. I realize that they > still > useful for leveraging database index when searching for tiles in a given > area, > but we could also stores the image area as a PostGIS geometry and leverage > the > RTree, which is designed especially for this task. > > An other reasons is that, if the 4 first columns are affine transform > coefficients, we could "finish the job" and put the last 2 remaining > affine > transform coefficients: shearX and shearY. You now have a full set of 2D > affine > transform coefficients in your table, allowing you to handle rotated > images. > They are not so unusual that they may seen (it was an IFREMER requirement > on our > side). If you happen to parse .TFW files that come with some .TIFF files, > their > content are exactly that: affine transform coefficients that you could put > straight into your database. > > However if you include a full set of affine transform coefficient in your > database, then "MinX" and "MinY" are not really minimal coordiantes > anymore, but > rather "translateX" and "translateY". The same applies to "MaxX" and > "MaxY", > which become slightly more difficult to define. So it may be better to not > include them in the database and relies on a geometry column for indexed > search > instead, keeping in mind that the geometry can now be a rotated rectangle. > > For information if you wonder what may look like the table after such > changes, > you may look there and scroll down to the CREATE TABLE "Geoemtries" > statement: > > https://svn.codehaus.org/constellation/trunk/postgrid/src/main/sql/postgres/postgrid.sql > > Note also the trigger defined just after the table, which create > automatically > for us the (potentially rotated) rectangle in the geometry column. The map > projections are handled by PostGIS. > > An other question is whatever image should be stored in the database as > BLOB or > as ordinary files. On our side, we have choosen ordinary files. Given that > a > database engine do not index pixel values inside a BLOB to my knowledge, > intuitively I would not expect a BLOB to be faster than a plain file... > > Regards, > > Martin > > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > http://sourceforge.net/services/buy/index.php > _______________________________________________ > Geotools-devel mailing list > Geotools-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/geotools-devel > > -- View this message in context: http://www.nabble.com/Online-tests-and-jdbc-drivers-tp17689697p17706976.html Sent from the geotools-devel mailing list archive at Nabble.com. ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php _______________________________________________ Geotools-devel mailing list Geotools-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geotools-devel