<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Dear devs,<br>
    <br>
    I've been tasked to improve or rewrite the current rasdaman driver
    implementation as it currently suffers a number of drawbacks:<br>
    <ul>
      <li>it is quite slow (compared to other drivers and other rasdaman
        connection techiques)</li>
      <li>it does not support creation of new rasters within the
        database</li>
      <li>it does not support write access to existing rasters within
        the database</li>
    </ul>
    I think the bad performance of the current implementation is due to
    the use of the `IReadBlock` function of the `RasdamanRasterBand`, as
    for every block that is read, a connection/transaction to the
    database is created and the block is transmitted. My assumption here
    is that reading the raster as a whole (or parts thereof) via
    `IRasterIO` (probably on the Dataset itself and not on the
    RasterBand) would improve the performance as the number of required
    connections and synchronization is reduced.<br>
    As far as I can tell, that is the approach with the PostGISRaster
    driver.<br>
    <br>
    What are your opinions to that matter? What benefits would I miss if
    I neglect block-based IO?<br>
    <br>
    Regards,<br>
    Fabian<br>
    <br>
    <br>
    <br>
    <br>
  </body>
</html>