SlideShare a Scribd company logo
Spatial Statistics on the
Geospatial Web
Matthias Hinz, Daniel Nüst, Benjamin Proß,
Edzer Pebesma
AGILE 2013 - Spatial Statistics on the Geospatial Web 2
Web Service (mediation layer)
Domain
Scientists
Scripting Environment
(software / languages)
Web Developer /
Admin
Heterogeneous
Audience
…
browser clients
community platforms
GIS-applications
services
Process Sharing
mobile devices
Geospatial Web
AGILE 2013 - Spatial Statistics on the Geospatial Web 3
Run the script as a
web process
Upload script
to server
Enhance
script
AGILE 2013 - Spatial Statistics on the Geospatial Web 4
The Annotation Concept
metadata
technical instructions
has name + parameter list
as code comments
locally and on a server
AGILE 2013 - Spatial Statistics on the Geospatial Web 5
Four Annotation Types
general process description
dynamic inputs
process outputs
resources
AGILE 2013 - Spatial Statistics on the Geospatial Web 6
1) General Process Description
# des: id = my42process, title= “my script”,
# abstract = “analyze 42 things”,
# author= “me”;
# myRuntime.des: id = …
AGILE 2013 - Spatial Statistics on the Geospatial Web 7
# number for factorization
myFactor <- 10
2) Dynamic Inputs
AGILE 2013 - Spatial Statistics on the Geospatial Web 8
2) Dynamic Inputs
# number for factorization
myFactor <- 10
# in: id = myFactor, type = integer,
# title = “numerical factor”,
# abstract = “the number to be used
# for factorization”,
# value = 1,
# minOccurs = 0, maxOccurs = 1;
AGILE 2013 - Spatial Statistics on the Geospatial Web 9
# number for factorization
# off;
myFactor <- 10
# on;
# in: id = myFactor, type = integer,
# title = “numerical factor”,
# abstract = “the number to be used
# for factorization”,
# value = 1,
# minOccurs = 0, maxOccurs = 1;
2) Dynamic Inputs
AGILE 2013 - Spatial Statistics on the Geospatial Web 10
3) Process Outputs
# number for factorization
myResult <- myAlgorithm(1, 2, myDataSet)
# out: id = myResult, type = string,
# title = “factorized output”,
# abstract = “output number as text in
# scientific notation (a x 10^b)”;
AGILE 2013 - Spatial Statistics on the Geospatial Web 11
4) Resources
# res: file1.data, file2.zip, file3.txt,
...;
# load auxiliary data
data1 <- foo("file2.zip")
data2 <- bar(“fixed_path/file3.txt")
AGILE 2013 - Spatial Statistics on the Geospatial Web 12
Ignore flags
# off;
script.part.to = be_ignored_on_server()
# on;
script.part.to = run_on_the_server()
AGILE 2013 - Spatial Statistics on the Geospatial Web 13
Application Example: WPS4R
Rserve
WPS Client
HTTP
GET /
POST
TCP /
IP
Web Admin Console
- Upload R scripts
- Manage processes
- Config parameters
WPS4R
XML
Requests /
Responses
R
HTTP
GET /
POST
User Administrator
Apache Tomcat Server
Processing
Service
AGILE 2013 - Spatial Statistics on the Geospatial Web 14
Example: Interpolation
+Kappasys WPS-Client
Quantum GIS
AGILE 2013 - Spatial Statistics on the Geospatial Web 15
WPS Process Description
[…] <ProcessDescription statusSupported="true"
storeSupported="true" wps:processVersion="1.0.0">
<ows:Identifier>org.n52.wps.server.r.Idw</ows:Identifier>
<ows:Title>Inverse distance weighted
interpolation</ows:Title>
<ows:Abstract>A simple interpolation carried out by R,
uses packages gstat, sp and rgdal</ows:Abstract>
<ows:Metadata xlin:title="R Script used for this process"
xlin:href="http://localhost:8080/wps/R/scripts/Idw.R"/>
<ows:Metadata xlin:title="Resource Directory URL"
xlin:href="http://localhost:8080/wps/R/resources" />
<ows:Metadata xlin:title="R Session Info"
xlin:href="http://localhost:8080/wps/R/sessioninfo.jsp"/>
<DataInputs> […]
# wps.des: id = idw,
# title = "Inverse distance weighted interpolation",
# abstract = "A simple interpolation carried out
# by R, uses packages gstat, sp and rgdal",
# author = "Matthias Hinz";
AGILE 2013 - Spatial Statistics on the Geospatial Web 16
AGILE 2013 - Spatial Statistics on the Geospatial Web 17
AGILE 2013 - Spatial Statistics on the Geospatial Web 18
Example: Live WeatheR Plots
live sensor data
analysis on server
image output
AGILE 2013 - Spatial Statistics on the Geospatial Web 19
AGILE 2013 - Spatial Statistics on the Geospatial Web 20
Conclusion
annotation framework
script-based web processing
demo with open source framework
open approach
reproducibility
AGILE 2013 - Spatial Statistics on the Geospatial Web 21
Outlook
security
provenance
rights
further implementations / tools
usability
bidirectional communication
AGILE 2013 - Spatial Statistics on the Geospatial Web 22
Thanks for your Attention!
AGILE 2013 - Spatial Statistics on the Geospatial Web 23
Resources
WPS4R Website:
https://wiki.52north.org/bin/view/Geostatistics/
WPS4R
AGILE 2013 - Spatial Statistics on the Geospatial Web 24
Further Information
AGILE 2013 - Spatial Statistics on the Geospatial Web 25
Server Environment Variables
if(exists(“server”) && server == TRUE){
srv.metadata = get_server_url();}
AGILE 2013 - Spatial Statistics on the Geospatial Web 26
Annotated R script: IDW
AGILE 2013 - Spatial Statistics on the Geospatial Web 27
WPS Process Description
[…]
<Input minOccurs="1" maxOccurs="1">
<ows:Identifier>attributename</ows:Identifier>
<ows:Title>Attribute name</ows:Title>
<ows:Abstract>Name of the attribute to be
interpolated, musst match the
observations</ows:Abstract>
<LiteralData>
<ows:DataType ows:reference="xs:string" />
<ows:AnyValue />
</LiteralData>
</Input>
[…]
# wps.in: attributename, string, "Attribute name",
# "Name of the attribute to be interpolated,
# must match the observations";
AGILE 2013 - Spatial Statistics on the Geospatial Web 28
WPS Process Description
[…]
<DataInputs>
<Input minOccurs="1" maxOccurs="1">
<ows:Identifier>points</ows:Identifier>
<ows:Title>Observations</ows:Title>
<ows:Abstract>The point observations and
measurements
to be interpolated</ows:Abstract>
<ComplexData>
<Default>
<Format>
<MimeType>application/x-zipped-
shp</MimeType>
</Format>
</Default>
<Supported>
<Format>
<MimeType>text/xml;subtype=gml/3.0.0</MimeType>
<Encoding>UTF-8</Encoding>
<Schema>http://schemas.opengis.net/gml/3.
0.0/base/feature.xsd</Schema>
</Format>
<Format> […]
AGILE 2013 - Spatial Statistics on the Geospatial Web 29
WPS Process Description
[…]<Output>
<ows:Identifier>result</ows:Identifier>
<ows:Title>Interpolated predictions</ows:Title>
<ows:Abstract>A raster file that contains
predictions for the observed area</ows:Abstract>
<ComplexOutput>
<Default>
<Format>
<MimeType>image/geotiff</MimeType>
</Format>
</Default>
<Supported>
<Format>
<MimeType>application/image-ascii-
grass</MimeType>
<Encoding>base64</Encoding>
</Format> […]
# wps.out: result, image/geotiff,
# "Interpolated predictions",
# "A raster file that contains predictions
# for the observed area";

More Related Content

What's hot

Satwik resume
Satwik resumeSatwik resume
Satwik resume
Satwik Mishra
 
Oozma kappa
Oozma kappaOozma kappa
Oozma kappa
Sahara Ali
 
Complex realtime event analytics using BigQuery @Crunch Warmup
Complex realtime event analytics using BigQuery @Crunch WarmupComplex realtime event analytics using BigQuery @Crunch Warmup
Complex realtime event analytics using BigQuery @Crunch Warmup
Márton Kodok
 
Geospatial Sensor Networks and Partitioning Data
Geospatial Sensor Networks and Partitioning DataGeospatial Sensor Networks and Partitioning Data
Geospatial Sensor Networks and Partitioning Data
AlexMiowski
 
Reproducible Science with Python
Reproducible Science with PythonReproducible Science with Python
Reproducible Science with Python
Andreas Schreiber
 
BigQuery JavaScript User-Defined Functions by THOMAS PARK and FELIPE HOFFA at...
BigQuery JavaScript User-Defined Functions by THOMAS PARK and FELIPE HOFFA at...BigQuery JavaScript User-Defined Functions by THOMAS PARK and FELIPE HOFFA at...
BigQuery JavaScript User-Defined Functions by THOMAS PARK and FELIPE HOFFA at...
Big Data Spain
 
Data science apps: beyond notebooks
Data science apps: beyond notebooksData science apps: beyond notebooks
Data science apps: beyond notebooks
Natalino Busa
 
BETTER Session, Excercise 1 @ EO Joint Big Data Hackathon
BETTER Session, Excercise 1 @ EO Joint Big Data HackathonBETTER Session, Excercise 1 @ EO Joint Big Data Hackathon
BETTER Session, Excercise 1 @ EO Joint Big Data Hackathon
PRBETTER
 
100X Investigations - Graphistry / Microsoft BlueHat
100X Investigations - Graphistry / Microsoft BlueHat100X Investigations - Graphistry / Microsoft BlueHat
100X Investigations - Graphistry / Microsoft BlueHat
graphistry
 

What's hot (9)

Satwik resume
Satwik resumeSatwik resume
Satwik resume
 
Oozma kappa
Oozma kappaOozma kappa
Oozma kappa
 
Complex realtime event analytics using BigQuery @Crunch Warmup
Complex realtime event analytics using BigQuery @Crunch WarmupComplex realtime event analytics using BigQuery @Crunch Warmup
Complex realtime event analytics using BigQuery @Crunch Warmup
 
Geospatial Sensor Networks and Partitioning Data
Geospatial Sensor Networks and Partitioning DataGeospatial Sensor Networks and Partitioning Data
Geospatial Sensor Networks and Partitioning Data
 
Reproducible Science with Python
Reproducible Science with PythonReproducible Science with Python
Reproducible Science with Python
 
BigQuery JavaScript User-Defined Functions by THOMAS PARK and FELIPE HOFFA at...
BigQuery JavaScript User-Defined Functions by THOMAS PARK and FELIPE HOFFA at...BigQuery JavaScript User-Defined Functions by THOMAS PARK and FELIPE HOFFA at...
BigQuery JavaScript User-Defined Functions by THOMAS PARK and FELIPE HOFFA at...
 
Data science apps: beyond notebooks
Data science apps: beyond notebooksData science apps: beyond notebooks
Data science apps: beyond notebooks
 
BETTER Session, Excercise 1 @ EO Joint Big Data Hackathon
BETTER Session, Excercise 1 @ EO Joint Big Data HackathonBETTER Session, Excercise 1 @ EO Joint Big Data Hackathon
BETTER Session, Excercise 1 @ EO Joint Big Data Hackathon
 
100X Investigations - Graphistry / Microsoft BlueHat
100X Investigations - Graphistry / Microsoft BlueHat100X Investigations - Graphistry / Microsoft BlueHat
100X Investigations - Graphistry / Microsoft BlueHat
 

Similar to Spatial Statistics on the Geospatial Web

Event streaming pipeline with Windows Azure and ArcGIS Geoevent extension
Event streaming pipeline with Windows Azure and ArcGIS Geoevent extensionEvent streaming pipeline with Windows Azure and ArcGIS Geoevent extension
Event streaming pipeline with Windows Azure and ArcGIS Geoevent extension
Roberto Messora
 
CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQueryCodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
Márton Kodok
 
Frameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with RFrameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with R
Daniel Nüst
 
Processing Geospatial at Scale at LocationTech
Processing Geospatial at Scale at LocationTechProcessing Geospatial at Scale at LocationTech
Processing Geospatial at Scale at LocationTech
Rob Emanuele
 
Open Source Databases And Gis
Open Source Databases And GisOpen Source Databases And Gis
Open Source Databases And Gis
Kudos S.A.S
 
Field Data Collecting, Processing and Sharing: Using web Service Technologies
Field Data Collecting, Processing and Sharing: Using web Service TechnologiesField Data Collecting, Processing and Sharing: Using web Service Technologies
Field Data Collecting, Processing and Sharing: Using web Service Technologies
Niroshan Sanjaya
 
A Citizen Science Sensor Platform as a Live Link from GIS to the Internet ...
A Citizen Science Sensor Platform as a Live Link from GIS to the Internet ...A Citizen Science Sensor Platform as a Live Link from GIS to the Internet ...
A Citizen Science Sensor Platform as a Live Link from GIS to the Internet ...
Arne Bröring
 
Enhancing usability and utility of USGS 3D Elevation Program (3DEP) lidar dat...
Enhancing usability and utility of USGS 3D Elevation Program (3DEP) lidar dat...Enhancing usability and utility of USGS 3D Elevation Program (3DEP) lidar dat...
Enhancing usability and utility of USGS 3D Elevation Program (3DEP) lidar dat...
OpenTopography Facility
 
(120303) #fitalk ip finder and geo ip for fun
(120303) #fitalk   ip finder and geo ip for fun(120303) #fitalk   ip finder and geo ip for fun
(120303) #fitalk ip finder and geo ip for fun
INSIGHT FORENSIC
 
(120303) #fitalk ip finder and geo ip for fun
(120303) #fitalk   ip finder and geo ip for fun(120303) #fitalk   ip finder and geo ip for fun
(120303) #fitalk ip finder and geo ip for fun
INSIGHT FORENSIC
 
Maggie_Sleziak_ResumeLin.2017
Maggie_Sleziak_ResumeLin.2017Maggie_Sleziak_ResumeLin.2017
Maggie_Sleziak_ResumeLin.2017Maggie Sallee
 
Introduction to mago3D, an Open Source Based Digital Twin Platform
Introduction to mago3D, an Open Source Based Digital Twin PlatformIntroduction to mago3D, an Open Source Based Digital Twin Platform
Introduction to mago3D, an Open Source Based Digital Twin Platform
SANGHEE SHIN
 
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB
 
iguazio - nuclio Meetup Nov 30th
iguazio - nuclio Meetup Nov 30thiguazio - nuclio Meetup Nov 30th
iguazio - nuclio Meetup Nov 30th
iguazio
 
Full-stack Web Development with MongoDB, Node.js and AWS
Full-stack Web Development with MongoDB, Node.js and AWSFull-stack Web Development with MongoDB, Node.js and AWS
Full-stack Web Development with MongoDB, Node.js and AWS
MongoDB
 
Neo4j Database and Graph Platform Overview
Neo4j Database and Graph Platform OverviewNeo4j Database and Graph Platform Overview
Neo4j Database and Graph Platform Overview
Neo4j
 
The 'right' choices in GIS - Grontmij
The 'right' choices in GIS - GrontmijThe 'right' choices in GIS - Grontmij
The 'right' choices in GIS - Grontmij
Xander Bakker
 
Introduction to Mahout
Introduction to MahoutIntroduction to Mahout
Introduction to Mahout
Ted Dunning
 
Introduction to Mahout given at Twin Cities HUG
Introduction to Mahout given at Twin Cities HUGIntroduction to Mahout given at Twin Cities HUG
Introduction to Mahout given at Twin Cities HUG
MapR Technologies
 
Open Source GIS
Open Source GISOpen Source GIS
Open Source GIS
Joe Larson
 

Similar to Spatial Statistics on the Geospatial Web (20)

Event streaming pipeline with Windows Azure and ArcGIS Geoevent extension
Event streaming pipeline with Windows Azure and ArcGIS Geoevent extensionEvent streaming pipeline with Windows Azure and ArcGIS Geoevent extension
Event streaming pipeline with Windows Azure and ArcGIS Geoevent extension
 
CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQueryCodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
CodeCamp Iasi - Creating serverless data analytics system on GCP using BigQuery
 
Frameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with RFrameworks for geoprocessing on the web with R
Frameworks for geoprocessing on the web with R
 
Processing Geospatial at Scale at LocationTech
Processing Geospatial at Scale at LocationTechProcessing Geospatial at Scale at LocationTech
Processing Geospatial at Scale at LocationTech
 
Open Source Databases And Gis
Open Source Databases And GisOpen Source Databases And Gis
Open Source Databases And Gis
 
Field Data Collecting, Processing and Sharing: Using web Service Technologies
Field Data Collecting, Processing and Sharing: Using web Service TechnologiesField Data Collecting, Processing and Sharing: Using web Service Technologies
Field Data Collecting, Processing and Sharing: Using web Service Technologies
 
A Citizen Science Sensor Platform as a Live Link from GIS to the Internet ...
A Citizen Science Sensor Platform as a Live Link from GIS to the Internet ...A Citizen Science Sensor Platform as a Live Link from GIS to the Internet ...
A Citizen Science Sensor Platform as a Live Link from GIS to the Internet ...
 
Enhancing usability and utility of USGS 3D Elevation Program (3DEP) lidar dat...
Enhancing usability and utility of USGS 3D Elevation Program (3DEP) lidar dat...Enhancing usability and utility of USGS 3D Elevation Program (3DEP) lidar dat...
Enhancing usability and utility of USGS 3D Elevation Program (3DEP) lidar dat...
 
(120303) #fitalk ip finder and geo ip for fun
(120303) #fitalk   ip finder and geo ip for fun(120303) #fitalk   ip finder and geo ip for fun
(120303) #fitalk ip finder and geo ip for fun
 
(120303) #fitalk ip finder and geo ip for fun
(120303) #fitalk   ip finder and geo ip for fun(120303) #fitalk   ip finder and geo ip for fun
(120303) #fitalk ip finder and geo ip for fun
 
Maggie_Sleziak_ResumeLin.2017
Maggie_Sleziak_ResumeLin.2017Maggie_Sleziak_ResumeLin.2017
Maggie_Sleziak_ResumeLin.2017
 
Introduction to mago3D, an Open Source Based Digital Twin Platform
Introduction to mago3D, an Open Source Based Digital Twin PlatformIntroduction to mago3D, an Open Source Based Digital Twin Platform
Introduction to mago3D, an Open Source Based Digital Twin Platform
 
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
 
iguazio - nuclio Meetup Nov 30th
iguazio - nuclio Meetup Nov 30thiguazio - nuclio Meetup Nov 30th
iguazio - nuclio Meetup Nov 30th
 
Full-stack Web Development with MongoDB, Node.js and AWS
Full-stack Web Development with MongoDB, Node.js and AWSFull-stack Web Development with MongoDB, Node.js and AWS
Full-stack Web Development with MongoDB, Node.js and AWS
 
Neo4j Database and Graph Platform Overview
Neo4j Database and Graph Platform OverviewNeo4j Database and Graph Platform Overview
Neo4j Database and Graph Platform Overview
 
The 'right' choices in GIS - Grontmij
The 'right' choices in GIS - GrontmijThe 'right' choices in GIS - Grontmij
The 'right' choices in GIS - Grontmij
 
Introduction to Mahout
Introduction to MahoutIntroduction to Mahout
Introduction to Mahout
 
Introduction to Mahout given at Twin Cities HUG
Introduction to Mahout given at Twin Cities HUGIntroduction to Mahout given at Twin Cities HUG
Introduction to Mahout given at Twin Cities HUG
 
Open Source GIS
Open Source GISOpen Source GIS
Open Source GIS
 

Recently uploaded

FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
Globus
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
Jen Stirrup
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 

Recently uploaded (20)

FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 

Spatial Statistics on the Geospatial Web

  • 1. Spatial Statistics on the Geospatial Web Matthias Hinz, Daniel Nüst, Benjamin Proß, Edzer Pebesma
  • 2. AGILE 2013 - Spatial Statistics on the Geospatial Web 2 Web Service (mediation layer) Domain Scientists Scripting Environment (software / languages) Web Developer / Admin Heterogeneous Audience … browser clients community platforms GIS-applications services Process Sharing mobile devices Geospatial Web
  • 3. AGILE 2013 - Spatial Statistics on the Geospatial Web 3 Run the script as a web process Upload script to server Enhance script
  • 4. AGILE 2013 - Spatial Statistics on the Geospatial Web 4 The Annotation Concept metadata technical instructions has name + parameter list as code comments locally and on a server
  • 5. AGILE 2013 - Spatial Statistics on the Geospatial Web 5 Four Annotation Types general process description dynamic inputs process outputs resources
  • 6. AGILE 2013 - Spatial Statistics on the Geospatial Web 6 1) General Process Description # des: id = my42process, title= “my script”, # abstract = “analyze 42 things”, # author= “me”; # myRuntime.des: id = …
  • 7. AGILE 2013 - Spatial Statistics on the Geospatial Web 7 # number for factorization myFactor <- 10 2) Dynamic Inputs
  • 8. AGILE 2013 - Spatial Statistics on the Geospatial Web 8 2) Dynamic Inputs # number for factorization myFactor <- 10 # in: id = myFactor, type = integer, # title = “numerical factor”, # abstract = “the number to be used # for factorization”, # value = 1, # minOccurs = 0, maxOccurs = 1;
  • 9. AGILE 2013 - Spatial Statistics on the Geospatial Web 9 # number for factorization # off; myFactor <- 10 # on; # in: id = myFactor, type = integer, # title = “numerical factor”, # abstract = “the number to be used # for factorization”, # value = 1, # minOccurs = 0, maxOccurs = 1; 2) Dynamic Inputs
  • 10. AGILE 2013 - Spatial Statistics on the Geospatial Web 10 3) Process Outputs # number for factorization myResult <- myAlgorithm(1, 2, myDataSet) # out: id = myResult, type = string, # title = “factorized output”, # abstract = “output number as text in # scientific notation (a x 10^b)”;
  • 11. AGILE 2013 - Spatial Statistics on the Geospatial Web 11 4) Resources # res: file1.data, file2.zip, file3.txt, ...; # load auxiliary data data1 <- foo("file2.zip") data2 <- bar(“fixed_path/file3.txt")
  • 12. AGILE 2013 - Spatial Statistics on the Geospatial Web 12 Ignore flags # off; script.part.to = be_ignored_on_server() # on; script.part.to = run_on_the_server()
  • 13. AGILE 2013 - Spatial Statistics on the Geospatial Web 13 Application Example: WPS4R Rserve WPS Client HTTP GET / POST TCP / IP Web Admin Console - Upload R scripts - Manage processes - Config parameters WPS4R XML Requests / Responses R HTTP GET / POST User Administrator Apache Tomcat Server Processing Service
  • 14. AGILE 2013 - Spatial Statistics on the Geospatial Web 14 Example: Interpolation +Kappasys WPS-Client Quantum GIS
  • 15. AGILE 2013 - Spatial Statistics on the Geospatial Web 15 WPS Process Description […] <ProcessDescription statusSupported="true" storeSupported="true" wps:processVersion="1.0.0"> <ows:Identifier>org.n52.wps.server.r.Idw</ows:Identifier> <ows:Title>Inverse distance weighted interpolation</ows:Title> <ows:Abstract>A simple interpolation carried out by R, uses packages gstat, sp and rgdal</ows:Abstract> <ows:Metadata xlin:title="R Script used for this process" xlin:href="http://localhost:8080/wps/R/scripts/Idw.R"/> <ows:Metadata xlin:title="Resource Directory URL" xlin:href="http://localhost:8080/wps/R/resources" /> <ows:Metadata xlin:title="R Session Info" xlin:href="http://localhost:8080/wps/R/sessioninfo.jsp"/> <DataInputs> […] # wps.des: id = idw, # title = "Inverse distance weighted interpolation", # abstract = "A simple interpolation carried out # by R, uses packages gstat, sp and rgdal", # author = "Matthias Hinz";
  • 16. AGILE 2013 - Spatial Statistics on the Geospatial Web 16
  • 17. AGILE 2013 - Spatial Statistics on the Geospatial Web 17
  • 18. AGILE 2013 - Spatial Statistics on the Geospatial Web 18 Example: Live WeatheR Plots live sensor data analysis on server image output
  • 19. AGILE 2013 - Spatial Statistics on the Geospatial Web 19
  • 20. AGILE 2013 - Spatial Statistics on the Geospatial Web 20 Conclusion annotation framework script-based web processing demo with open source framework open approach reproducibility
  • 21. AGILE 2013 - Spatial Statistics on the Geospatial Web 21 Outlook security provenance rights further implementations / tools usability bidirectional communication
  • 22. AGILE 2013 - Spatial Statistics on the Geospatial Web 22 Thanks for your Attention!
  • 23. AGILE 2013 - Spatial Statistics on the Geospatial Web 23 Resources WPS4R Website: https://wiki.52north.org/bin/view/Geostatistics/ WPS4R
  • 24. AGILE 2013 - Spatial Statistics on the Geospatial Web 24 Further Information
  • 25. AGILE 2013 - Spatial Statistics on the Geospatial Web 25 Server Environment Variables if(exists(“server”) && server == TRUE){ srv.metadata = get_server_url();}
  • 26. AGILE 2013 - Spatial Statistics on the Geospatial Web 26 Annotated R script: IDW
  • 27. AGILE 2013 - Spatial Statistics on the Geospatial Web 27 WPS Process Description […] <Input minOccurs="1" maxOccurs="1"> <ows:Identifier>attributename</ows:Identifier> <ows:Title>Attribute name</ows:Title> <ows:Abstract>Name of the attribute to be interpolated, musst match the observations</ows:Abstract> <LiteralData> <ows:DataType ows:reference="xs:string" /> <ows:AnyValue /> </LiteralData> </Input> […] # wps.in: attributename, string, "Attribute name", # "Name of the attribute to be interpolated, # must match the observations";
  • 28. AGILE 2013 - Spatial Statistics on the Geospatial Web 28 WPS Process Description […] <DataInputs> <Input minOccurs="1" maxOccurs="1"> <ows:Identifier>points</ows:Identifier> <ows:Title>Observations</ows:Title> <ows:Abstract>The point observations and measurements to be interpolated</ows:Abstract> <ComplexData> <Default> <Format> <MimeType>application/x-zipped- shp</MimeType> </Format> </Default> <Supported> <Format> <MimeType>text/xml;subtype=gml/3.0.0</MimeType> <Encoding>UTF-8</Encoding> <Schema>http://schemas.opengis.net/gml/3. 0.0/base/feature.xsd</Schema> </Format> <Format> […]
  • 29. AGILE 2013 - Spatial Statistics on the Geospatial Web 29 WPS Process Description […]<Output> <ows:Identifier>result</ows:Identifier> <ows:Title>Interpolated predictions</ows:Title> <ows:Abstract>A raster file that contains predictions for the observed area</ows:Abstract> <ComplexOutput> <Default> <Format> <MimeType>image/geotiff</MimeType> </Format> </Default> <Supported> <Format> <MimeType>application/image-ascii- grass</MimeType> <Encoding>base64</Encoding> </Format> […] # wps.out: result, image/geotiff, # "Interpolated predictions", # "A raster file that contains predictions # for the observed area";