1

I´m designing a web-service to run in a server environment that will do some geoprocessing actions to datasets uploaded by users and send the results back.

I´m programming in Python, and so far I´ve been using different GRASS algorithms to do the geoprocessing. Which means, I´m using a lot of code that looks like this:

grass.run_command("v.buffer", input="a", output="b", type="line", distance=c)

Does anyone have experience in using GRASS-algoriths in a server environment? Is it a good idea to use GRASS or should I better be using other libraries (e.g. because they are faster or more stable?). It has to be OpenSource, since we don´t have the budget for ArcGIS Server, etc.

2
  • 1
    I see no reason why using GRASS in a server is any different to a client. You need to ensure that you trust the input data (sanitise it if necessary), you need to make sure that it has appropriate performance, it meets your organisational needs, etc. None of that is server (or client) specific though. Can you expand your question to tell us what you are concerned about?
    – BradHards
    Commented Feb 7, 2014 at 4:50
  • Thanks for your comment Brad. I´m working quite some time with GIS already, but I´m pretty new to anything that is webservice/server related. That´s why my first idea was to just move to the server what I know from desktop GIS already (e.g. GRASS GIS algorithms). I was just feeling a little bit unsecure if I could do that without any problems. That´s why wanted to ask if someone has experience with offering GRASS geoprocessing services on a server. The better, if there is no reason to difference between desktop or server environment.
    – Martin
    Commented Feb 7, 2014 at 8:27

1 Answer 1

4

Consider to use GRASS GIS 7 for this. While it yet officially released it is much faster and also offers http://grasswiki.osgeo.org/wiki/WPS support. Ourselves, we use it to process raster and vector data on a cluster in the multi-terabyte range.

See also http://grasswiki.osgeo.org/wiki/Category:Massive_data_analysis

6
  • Thanks markusN. I´ll follow your suggestion and will use GRASS 7 instead of 6.4.3 which I´m currently using. Do you have any links which point out the differences between the two versions?
    – Martin
    Commented Feb 9, 2014 at 13:24
  • 1
    Sure, please check grass.osgeo.org/grass7 which references a more detailed page through the link "more than 10,000 improvements..."
    – markusN
    Commented Feb 13, 2014 at 23:48
  • Thanks, interesting link. If I understand you right, there should be no problem using GRASS for Server geoprocessing. If you wanna refrase your answer a little bit, so it answers my question, I would accept it.
    – Martin
    Commented Feb 14, 2014 at 10:13
  • 1
    You want to only solve your buffer calculation or general geoprocessing? That makes quite a difference and I don't know how you want me to edit my answer... Vector/raster/image processing, small/big data, interactive user/overnight jobs, and so on. There are many considerations...
    – markusN
    Commented Feb 15, 2014 at 13:45
  • 1
    Then you may want to check zoo-project.org which can use GRASS GIS as backend (we use that in a couple of projects).
    – markusN
    Commented Feb 19, 2014 at 23:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.