<div dir="auto"><div>Hi Jachym,<div dir="auto"><br><div dir="auto">Thanks for your reply! </div><div dir="auto">I was able to make a working first single pywps service for a different task - cropping a DEM raster to a given cutline, make a color relief out of it and then return the result as a CZML. I think it would be good to use these individually, thus I though about chaining. </div><div dir="auto">I wasn't able to figure out how the chaining works, if not for this particular task I think it would be useful for other tasks I need to develop. I will publish it as open source very soon and ask some followup questions regarding improving it. </div></div><div dir="auto"><br></div>Kind regards, </div><div dir="auto">Idan<br><br><div class="gmail_quote" dir="auto"><div dir="ltr" class="gmail_attr">On Mon, 17 Feb 2020, 20:54 Jachym Cepicky, <<a href="mailto:jachym.cepicky@gmail.com">jachym.cepicky@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Idan,<br>
<br>
sorry for late response,<br>
<br>
do you really need to chain processes? Wouldn't it be enough, just to<br>
write single process, maybe consisting out of several python modules,<br>
which would apply the three steps you described?<br>
<br>
I would say, storing raster data to harddrive is not bad idea, if the<br>
harddrive is SSD, then it's usually significantly faster<br>
<br>
and saving the data on the server can be used as "cache".<br>
<br>
Anyway, I'm not completely sure, where the biggest issue of yours<br>
currently is: do you know, how to implement the tasks in python, but<br>
you are not sure, how to wrap it as an PyWPS Process? Are you<br>
completely unaware, how to implement this in Python at all? Everything<br>
is clear, you have your 3 processes, you just need to figure out, how<br>
to chain them?<br>
<br>
Jachym<br>
<br>
ne 2. 2. 2020 v 11:50 odesílatel Idan Miara <<a href="mailto:idan@miara.com" target="_blank" rel="noreferrer">idan@miara.com</a>> napsal:<br>
><br>
> Hi All,<br>
><br>
> I'm new to pywps :)<br>
> I'm trying to find a way to make an efficient raster processing pipeline.<br>
> For instance, with Geoserver wps I was able to chain wps requests to make the following chain:<br>
> 1. clipping a DEM raster from a geoserver layer.<br>
> 2. apply an SLD style<br>
> 3. publish the result on geoserver.<br>
><br>
> I wanted to know how can I do something similar with pywps and possibly reuse gdal tools (such as gdal_translate, gdal_transform or gdaldem via their python interfaces)<br>
> Some points to consider:<br>
> 1. I couldn't find a way to chain requests on pywps.<br>
> 2. As raster data can be heavy, ideally intermediate rasters won't be saved/loaded to disk, but kept in memory and deleted once the result is ready (maybe use gdal memory raster?)<br>
> 3. I want to make use of cache in a way that multiple requests for the same input raster(s) blocks will make use of cache (maybe gdal internal cache could be good).<br>
> 4. Is there a best practice for serving the result raster(s) and possibly use them as cache in case the same request is submitted again to the service?<br>
><br>
> Any pointers would be appreciated!<br>
> Kind regards,<br>
> Idan<br>
><br>
> _______________________________________________<br>
> pywps-dev mailing list<br>
> <a href="mailto:pywps-dev@lists.osgeo.org" target="_blank" rel="noreferrer">pywps-dev@lists.osgeo.org</a><br>
> <a href="https://lists.osgeo.org/mailman/listinfo/pywps-dev" rel="noreferrer noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/pywps-dev</a><br>
<br>
<br>
<br>
-- <br>
Jachym Cepicky<br>
e-mail: jachym.cepicky gmail com<br>
URL: <a href="http://les-ejk.cz" rel="noreferrer noreferrer" target="_blank">http://les-ejk.cz</a><br>
GPG: <a href="http://les-ejk.cz/pgp/JachymCepicky.pgp" rel="noreferrer noreferrer" target="_blank">http://les-ejk.cz/pgp/JachymCepicky.pgp</a><br>
</blockquote></div></div></div>