Add to Watchlist

Geospatial web services using little-known GDAL features and modern Perl middleware


Citation of segment
Embed Code
Purchasing a DVD Cite video

Formal Metadata

Title Geospatial web services using little-known GDAL features and modern Perl middleware
Title of Series FOSS4G Bonn 2016
Part Number 86
Number of Parts 193
Author Jolma, Ari
License CC Attribution 3.0 Germany:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
DOI 10.5446/20288
Publisher FOSS4G, Open Source Geospatial Foundation (OSGeo)
Release Date 2016
Language English

Content Metadata

Subject Area Computer Science
Abstract GDAL has a little-known feature vsistdout redirect, which is a virtual file system driver that can redirect standard output to any GDAL virtual file. This feature is exploited in GDAL 2.1 Perl bindings to make streaming objects possible. Streaming objects are objects, which belong to a class, which implement 'write' and 'close' subroutines. Such objects happen to be important in modern Perl web middleware, code that are based on PSGI - Perl Web Server Gateway Interface Specification. In this talk I will present a suite of new Perl modules, which implement OGC geospatial web services. I have two of these modules already in production use, one for raster tile service and one for feature service. In this talk I will present and discuss how GDAL and Perl have made it easy to develop and extend these services. Ari Jolma (Private)
Keywords Private
all came from the came from the
learned I would like to work the way coma allergens please thank YOU type of should warn you that this is going to be a very technical talk about the available things in so it's
only needs help you all of the summer about me I'm
academic engineers scientists so and I'm not the kind of uh intrapreneur our developing solutions for foreign companies were sold so this is kind of my coming angle that this did this is just pay over somewhat more our recent research point of view so it's often developing demonstrations and and doing and support for researchers and and and so on the previously worked at other universities and doing what resources to and from and on it went away informatics but no 1 his week working at the Finnish Environment Institute and my task is to plan and develop support for marine spatial planning control spatial decision support and there planning support and I'm a girl hacker this talk will be about but using EPA having from from 1 and and Candido so I know I'm GW energy and developer I have developed some things in that the placebo posterior but I'm mostly of working on them on the core interface and benefit at exploiting it for different purposes and and this talk is mostly about that exploiting the early in the face developing and just special services I'm on the top and then and c bonds the some of our audio not just is a comprehensive perovskite materials very find early modern modules and this is my Gmail use my address the talk will be about just whistling services actually I think you you you know that what they are and they are they all programs serving other programs but actually they are a stack of speckle programs and code on the server so that that's I will be in a evident from the promise later slides on the little known details features so there's 1 little known 1 this redirection of to BSA uh we assign STD out and they would have and talk about of the site the the and and the other feature that I'm using is is this new utilities as functions should and because I'm I'm we don't have it the framework for the chose this selection just applied it might develop diagonal values all kind of blood you know uh with me functions or tools into the into the data the pipeline in better than a service data provision is used to generate the and then I'm going to talk about a bit about the model of the world middleware that this set and is pretty new but it is even in Europe for me because I had been produces since nineties and I I kind of stuck into the into the world of the office that yeah and I just last year I went to broke parable inference for a long time and I found out that that of new things happening there and 1 of them is BSG I the middle middleware for a full for developing an ICT services and and Jennifer despite some remorse of the parent has not been along this that actually there are now 2 October that there's purified which I'm using the land and in this post 6 which is kind of a new language and and and developing a very fast so the dual virtual file system the SRI at the end mentioned in this but the reason behind is that there are a so few of the GO-derived is usually read from and write to from files uh but this is not enough and so the virtualized this file input output so that he can I began reading and writing do into things all of sources and sinks which are really not files but but but I just made to look like files for the drivers and 1 of the set all the details of this if I was HTTP server among the about memory buffer and so on and you can can read for heaven's books from a few weeks we few years that the reduction of the 20 years later we size is the the reality is the 1 that I've been looking at virtualized STD out to be to use just standard if right to run privately STD out this is useful for for if you're creating common like programs which are used to be justified in our in our in existence for instance and I what to some but there's also to API for changing the right and and the the out this I been exploiting now in the dual burden the face there I created these mechanisms so that the uh this kind of a low-level stuff can be brought into the into the broader or the the the high-level language level and and then you can use of the object as data data source for the accident at the scene where the data is going but when you when you are creating and it a attempt object in in in the in the part interface and and only requirement is that this were objective must belong to a class we tested right and close methods for this piece of writing close methods are used for the kind of underneath the underneath the surface and so on and so forth for all day and that kind of by being done the data and from . drivers and actually when I was doing this and found out that there was that was a body in the area so if closely function and just dust from positive to about from even and and given an and and he mentioned that this system was actually originally developed for map server for the fast cheap fast GGI extreme G output so it's pretty much the same kind of problem that I I had or confer realized that I had and I was looking into the the SGI to now stuff this dispute BST
ISO probe several data interface specification with a written by actually got we don't go over the past few years ago it was inspired by this Python Ruby and JavaScript interface specifications so it's it's kind of overrides the kind pairwise and higher level solution to this uh maybe in the face that services that but no recommendation that document provisions from the server so and as a result of this the told CGI PN which was used to kind of to variety of so many so many so many of the that services in the area of knowledge so removed from the purified 5 distribution and and it's kind of a deprecated also that more which is an opportunity a specific solution is now a kind of it's it's it's not used by
all its there are other things like that and engine X which is gaining popularity and is 1 of the Ps finds itself only a specific case and it's not called called which is mentioned the next slide but there is some middleware Petersburg provides an environment for the for the application itself uh uh kind of to Gustav business logic ordered the logic followed for will create creating and the lip service application the they know to because it perhaps at least this is what what I widen using now is survived and using the engine except server and but that's only existed benefit from end afforded to the Internet and then X is actually that the service is done by the the stamen server and so forth and so the but this time and history of the real server and if there are no it's it's working on based on on on a configurable configuration file which is basically broke this paper coordinate meetings that you are able to match the application of objects and and the the ads application optics hot uh then during the during the job and in my case the application objects of belonging to deduce s 1 of these classes that i've i've written down the OGC service namespace classes black it is certain implementation for this to the a that framework and this should also there modules written by this but so you go it's it's actually not a surprise that the accident that this it's a Japanese originally world this this set these modules because but I also learned in the last year is that in the Perl 5 this usually used very much in Japan and in in japanese firms conferences are huge compared to the the ones in Europe and the USA so that this be developer community has doing things there and doing it very interesting things of so they had their own sort of sort of classes for for for helping the developer due to create great stuff so we have the black builder apply complement the black request chart which are far we used have some words about the OGC services from the actor point of view of the the the the or view you have these different methods to access the X to the same resource you have did get rest different but that's the kind of different ways to access the same resource and you have a you have resources configured often quite extensively because of there was office of the XML and messaging and and there are similar requests and responses and then you have to deal with the course uh which deals with the stuff that you have a web services and and the HTML interfaces in different places so I I wrote this with some support for this into is so service class and so that kind of thing I mentioned the static programs encoded relevant it when you get a call from in the 19th 1st comes to their hands and engine next it is basically immunity handing it over the star man it's it's has to examine the service service file this uses the blackmailer and and can make it easier for the developer right the right to know what the configuration and then it goes to this the geology service in the in the in this case even if it's of its which just basal surface and then species of black component and and so that's the kind of difficult stuff this is not done by these this set that it's inside it's just that they got from band and then I I'll write a different service subject like the plague classes the WFS and W and estimates I'm I'm using this the very busy slide about what its
price to sure always that how the thing that I had now because of this year is the DLG redirects know how that is matches the matching by the by this black environment because there are you you you get a the responder and and if you are doing a delayed response to the client you you need an object which can brighten close and this I accept those the ones that the methods that I might I got because of that using this obviously the out 3 directions shows
the OK this is a nice but what's the concrete stuff that I did know these other there are these she further on the OGC service classes superimposed on the program modules and classes with just this from the commenting and and and it's because they are in but you get to the if and only if it is not me nts there are there out there quite wearable was when you talk about it abilities and and then filtering and that kind of and of uh looking into the XML but then in the end it's it's a good feature and the and make tile-size quite shallow layers of coal good to then student is executed and hold whole whole homework underneath and thanks you know why I did this because it could be done and I had time so they are but actually and I'm finding the right now about that that's what I did in it especially for the w and the assistance to at this probably probably going to be very useful for me and then in the in the Brooklyn doing out in the marine spatial planning because there are the France going to this different ways to visualize and and and can afford to give information about coastal coastal things and and and and and showing showing and what what the spatial there are things so that there they're really really mean I had for these and also In my enabling me to do deduct try some extensions to this services I in the WFS of ideas student crane credentials and so on and then on the W MDS the online on-the-fly processing of prostatitis I might skip this access to the requirement was to through to convert but can often do not go through the whole user account creation state pop up I will I I needed to given that place where does somebody could be given there is to do geographical objects and then state of the art and I I I I am not I'm not all might e-mail addresses this is 1 and then define a small password and then and then that would kind of automatically on-the-fly created that account for him but then what is more interesting actually released on the fly production of processing of crafted files so that I can not plug
the the that the data pipeline and maybe I will show you show you an example isn't it well it
being there sigh created the we then makes and the to extend and OpenLayers and then I have here I a there you can add and he'll
shading QCD there this is coming from this is a very basic but service but if it's coming from a single knowledge of the 4 D and 5 so it's it's keeping and and doing the illustrating using these 2 dollar utility functions from the higher-level language approach on on the fly and it's it's
not using any any any it's it's it's directly feeding horses streaming data about another example here is that I'm studying the star
man service on on my own machine and then I will
file open well from local file I think
it's so it is 1 so as simple as that mapping using the
about about crime that coming from the National Data Service and then I'm heading heading out from a local file also from a single digit Jody fair and and I'm just for the best thing I'm I'm 1 of them and creating the tiles for this line and computing the different values in the rest and I'm also adding heading up having of 1 polygon into the
into the tiles from a postprocessed q probabilistic cost GIS database with in in this in this pipeline so it's on the on the fly and modifying the pilots and and this is actually going quite the details and it's it's it's
it's going fast although it's
it's looking into the
pixel-by-pixel in in the protocol the so this other
thanks I think I'll just appeared because have spent 20 minutes you know you any questions note Wilkinson
become they can now ask questions on that due to this for for privately later on so so we session of
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation


  592 ms - page object


AV-Portal 3.8.2 (0bb840d79881f4e1b2f2d6f66c37060441d4bb2e)