Hi,
The WMS cache (which is used underneath by the WMTS driver) writes each
tiles in a separate file. So if you use multi-threaded, as long as you
read in parallel different GDALDataset* object on the WMTS filename, and
read disjoint areas, that should be fine. There might be a slight risk
of things going bad if you happened to read the same tile from different
GDALDataset* object at the same time, as it could potentially read a
partially written cached tile, or concurrently write the tile in the
cache and corrupt it. The logic is in frmts/wms/gdalwmscache.cpp
Even
Le 29/05/2024 à 10:14, Michał Kowalczuk via gdal-dev a écrit :
Because this is not clear in documentation, especially in WMTS driver
docs, my question is strictly about this issue to programmers who have
already explored this topic.
Regards
Michal
W dniu śr., 29.05.2024 o 10:04 Rahkonen Jukka
<jukka.rahko...@maanmittauslaitos.fi> napisał(a):
Hi,
No, I am not sure because I do not program myself. Reading this
document https://gdal.org/user/multithreading.html makes me feel
that it is possible to do some things in parallel, but the
programmer must know how to do it right.
-Jukka Rahkonen-
*Lähettäjä:*Javier Jimenez Shaw <j...@jimenezshaw.com>
*Lähetetty:* keskiviikko 29. toukokuuta 2024 10.41
*Vastaanottaja:* Rahkonen Jukka <jukka.rahko...@maanmittauslaitos.fi>
*Kopio:* Michał Kowalczuk <michkowalc...@gmail.com>;
gdal-dev@lists.osgeo.org
*Aihe:* Re: [gdal-dev] GDAL WMTS get tiles no documentation
On Wed, 29 May 2024 at 08:59, Rahkonen Jukka via gdal-dev
<gdal-dev@lists.osgeo.org <mailto:gdal-dev@lists.osgeo.org>> wrote:
Hi,
When you have a RasterBand from the WMTS data source, it is
abstracted and you can read the raster data just like from any
other data source and raster band
https://gdal.org/tutorials/raster_api_tut.html#reading-raster-data
<https://gdal.org/tutorials/raster_api_tut.html#reading-raster-data>“There
are a few ways to read raster data, but the most common is via
the GDALRasterBand::RasterIO() method. This method will
automatically take care of data type conversion, up/down
sampling and windowing.” GDAL knows which tiles to read.
I do not know if the WMTS driver can do parallel tile
downloads. If not, it is possible to run many RasterIO() at
the same time, each reading data from a different window like
in this rasterio document
https://rasterio.readthedocs.io/en/latest/topics/concurrency.html
<https://rasterio.readthedocs.io/en/latest/topics/concurrency.html>.
Jukka, are you sure you can run several RasterIO in parallel (on
the same dataset)? in GDAL GeoTIFF you cannot: the cache may be
corrupted. In that case I open several datasets over the same
file. I do not know about WMTS.
-Jukka Rahkonen-
*Lähettäjä:*gdal-dev <gdal-dev-boun...@lists.osgeo.org
<mailto:gdal-dev-boun...@lists.osgeo.org>> *Puolesta *Michal
Kowalczuk via gdal-dev
*Lähetetty:* keskiviikko 29. toukokuuta 2024 9.08
*Vastaanottaja:* gdal-dev@lists.osgeo.org
<mailto:gdal-dev@lists.osgeo.org>
*Aihe:* [gdal-dev] GDAL WMTS get tiles no documentation
Hi GDAL fellows
This is my first post on this mailing list, so I'm asking for
understanding.
As all we know the purpose of using WMTS over WMS, I'd like to
implement parallel downloading tiles from service using C API.
In my opinion GDAL documentation
(https://gdal.org/drivers/raster/wmts.html
<https://gdal.org/drivers/raster/wmts.html>) says nothing on
this topic.
I can get capabilities from WMTS, I can open the selected
subdataset but how to get tiles for given extent? I could not
find any information how to do it, even in the GDAL tests on
github.
I am kindly asking for tips. It also can be in python. How
using pure GDAL API fetch tiles to dynamically complete the
displayed map. This is my goal.
Thank you!
Michal
_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org <mailto:gdal-dev@lists.osgeo.org>
https://lists.osgeo.org/mailman/listinfo/gdal-dev
<https://lists.osgeo.org/mailman/listinfo/gdal-dev>
_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/gdal-dev
--
http://www.spatialys.com
My software is free, but my time generally not.
_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/gdal-dev