SlideShare a Scribd company logo
EVALUATION OF WPS 
FRAMEWORKS! 
Ebrahim Poorazizi! 
Andrew Hunter! 
! 
Geomatics Eng., University of Calgary! 
gisciencegroup.ucalgary.ca!
OUTLINE! 
§ Introduction ! 
§ Web Processing Service! 
§ WPS Servers! 
§ Methodology! 
§ Experimental Results! 
§ Lessons Learned! 
§ Discussion and Conclusions! 
2!
INTRODUCTION! 
Created by tagxedo.com!3!
INTRODUCTION! 
4! 
How FAST is it?! 
Is it EASY-TO-USE?! 
Images courtesy: © funcom.com, iconbug.com, tagxedo.com!
INTRODUCTION! 
Spatial Web Services Evaluations:! 
§ Web Map Service {Horák, J. et al. (2009), Kalbere, P. (2010), FOSS4G Shootout}! 
§ Sensor Observation Service {Tamayo, A. et al. (2011), Poorazizi, M.E. et al. (2012)}! 
§ Web Processing Service {Scholten, M. et al. (2006), Michaelis, C. and Ames, D. (2009), 
FOSS4G Shootout}! 
5! 
What have been done so far:! 
§ Focused on influential performance issues, the WPS protocol and its 
specification, and compliance and interoperability testing!
INTRODUCTION! 
What needs to be done:! 
§ Evaluating WPS functionality and performance! 
Why it should be done:! 
§ To identify the strengths and weaknesses of each system! 
§ To improve WPS servers to meet both application user and 
developer requirements! 
Images courtesy: © iconfinder.com!6!
WEB PROCESSING SERVICE! 
7! 
A web service interface to standardize the way that (spatial) 
algorithms are made available on the Internet! 
GET 
POST 
SOAP 
GetCapabilities 
DescribeProcess 
Execute
WPS SERVERS! 
8! 
! 
52°North! Deegree! GeoServer! PyWPS! Zoo! 
Organization! 52°North GmbH! OSGeo! OSGeo! Intevation GmbH! OSGeo! 
Development Platform! Java! Java! Java! Python! C/C++! 
License! GNU GPL v. 2! LPGL! GNU GPL v. 2! GNU GPL v. 2! MIT/X-11 style! 
Supported Libraries! JTS! 
GeoTools! 
SEXTANTE! 
R! 
GRASS! 
ArcGIS! 
SEXTANTE! JTS! 
GeoTools! 
GRASS! 
GDAL! 
R! 
GRASS! 
GEOS! 
GDAL! 
Na t i v e l y S u p p o r t e d 
Development Languages! 
Java! Java! Java! Python! C/C++! 
Fortran! 
Java! 
Python! 
PHP! 
Perl! 
JavaScript! 
Service ! Servlet! Servlet! Servlet! CGI! CGI! 
DCP Request! GET/POST/SOAP! GET/POST/SOAP! GET/POST! GET/POST/SOAP! GET/POST!
METHODOLOGY – CASE STUDY! 
! 
§ Determine accessible walkable area 
(walkshed) using pedestrian and transit 
infrastructure! 
§ Assess walkshed using a number of quality 
of life and access indicators such as local 
crime, or shopping and recreation facilities 
within that area! 
WalkYourPlace Transit Model à http://webmapping.ucalgary.ca/WPSClient/ 
Images courtesy: © walkonomics.com!9!
METHODOLOGY – ARCHITECTURE ! 
10! 
Design! Implement! Release! Test! 
§ A bottom-up 
approach! 
§ PostGIS & 
Python! 
§ Wrapping & 
exposing as 
WPS! 
§ Evaluating from 
quantitative & 
qualitative views!
METHODOLOGY – ARCHITECTURE ! 
11!
METHODOLOGY – ARCHITECTURE ! 
12!
METHODOLOGY – ARCHITECTURE ! 
13!
METHODOLOGY – ARCHITECTURE ! 
WPS Input! WPS Output! 
StartPoint=51.057,-114.066! 
StartTime=17:43:00! 
WalkingTimePeriod=15! 
WalkingSpeed=1.38! 
BusWaitingTime=10! 
BusRideTime=5! 
DistanceDecayFunction=False! 
14! 
Walkshed WPS!
METHODOLOGY – ARCHITECTURE ! 
15!
METHODOLOGY – ARCHITECTURE ! 
16! 
WPS Input! WPS Output! 
Transit WPS! 
StartTime=17:43:00! 
WalkingTimePeriod=15! 
WalkingSpeed=1.38! 
BusWaitingTime=10! 
BusRideTime=5!
METHODOLOGY – ARCHITECTURE ! 
17!
METHODOLOGY – ARCHITECTURE ! 
18! 
WPS Input! WPS Output! 
Union WPS!
METHODOLOGY – ARCHITECTURE ! 
19!
METHODOLOGY – ARCHITECTURE ! 
20! 
WPS Input! WPS Output! 
POI WPS!
METHODOLOGY – ARCHITECTURE ! 
21!
METHODOLOGY – ARCHITECTURE ! 
22! 
WPS Input! WPS Output! 
Crime WPS!
METHODOLOGY – ARCHITECTURE ! 
23!
METHODOLOGY – ARCHITECTURE ! 
24! 
Aggregation 
WPS! 
WPS Input! 
WPS Output! 
StartPoint=51.057,-114.066! 
WalkingTimePeriod=15! 
DistanceDecayFunction=False!
METHODOLOGY – TEST SCENARIO! 
SCENARIO A! 
ü To assess how fast each server responds! 
ü 45 Execute requests, random WPS input parameters:! 
§ Walking Start Point! 
§ Walking Start Time: 5 a.m. – 12 p.m. ! 
§ Walking Time Period (WTP): 5 min – 20 min! 
§ Walking Speed: 3 km/h – 6 km/h! 
§ Bus Waiting Time (BWT): 0 – WTP! 
§ Bus Ride Time: 0 – (WTP – BWT)! 
§ Distance Decay Function: True/False! 
! 
25!
METHODOLOGY – TEST SCENARIO! 
SCENARIO B! 
ü To assess the effect of increased load on each server! 
§ Number of concurrent requests: 2n , n = {0,…,7}! 
§ 30 replications! 
§ Random WPS input parameters, like SCENARIO A! 
26!
METHODOLOGY – TEST ENVIRONMENT! 
§ Each WPS server was installed on a separate Virtual Machine (VM)! 
§ The same machine used to run the VMs and the tests! 
§ JMeter was used to perform the tests! 
27! 
Hardware! Dell OptiPlex 990 (Host)! VMware (VM)! 
CPU! Intel Core i5 3.1 GHz! 4 Cores of 8! 
RAM! 8 GB! 4 GB! 
HDD! 500 GB! 40 GB! 
OS! Windows 7 Professional (64-bit)! Ubuntu 12.04 LTS (64-bit)!
EXPERIMENTAL RESULTS! 
SCENARIO A! 
§ Response Time: time taken for a service call to return all response bytes! 
§ Response Size: the quantity of data exchanged between client and server! 
! 
28! 
WPS Server! Response Time (sec.)! Response Size (kB)! 
52°North! 2.784 ± 1.269! 2.448 ± 0.267! 
Deegree! 2.499 ± 1.259! 2.505 ± 0.267! 
GeoServer! 2.753 ± 1.255! 2.301 ± 0.267! 
PyWPS! 3.995 ± 1.661! 2.686 ± 0.269! 
Zoo! 2.999 ± 1.313! 2.479 ± 0.269!
EXPERIMENTAL RESULTS! 
F(4,220)=0.739, p=0.566 !F(4,220)=1.071, p=0.372 !29!
EXPERIMENTAL RESULTS! 
SCENARIO B! 
§ Response Time! 
§ Server Failure! 
§ Server Throughput! 
30!
EXPERIMENTAL RESULTS! 
31! 
Response Time!
EXPERIMENTAL RESULTS! 
32! 
Server Failure Rate!
EXPERIMENTAL RESULTS! 
33! 
Server Throughput!
LESSONS LEARNED! 
34! 
52°North! Deegree! GeoServer! PyWPS! Zoo! 
Installation*! Easy! Easy! Easy! Difficult! Difficult! 
Create new processes 
Easy! Medium! Easy! Difficult! Easy! 
and Configuration* ! 
Native Development 
Languages! 
One ! One ! One ! One ! Many! 
Quality of 
Documentation**! 
Great! Good! Great! Good! Good! 
Community Support! 
• Many 
Avenues! 
• Active 
Support! 
• Many 
Avenues! 
• Active 
Support! 
• Many 
Avenues! 
• Active 
Support! 
• Few 
Avenues! 
• Little 
Support! 
• Many 
Avenues! 
• Active 
Support! 
* Ranking ranges: Easy; Medium; Difficult! 
** Ranking ranges: Weak; Good; Great!
DISCUSSION! 
SCENARIO A! 
§ Deegree returns the response package most rapidly! 
§ But, based on a One Way ANOVA test, there is no significant difference in 
response time between the WPS servers tested nor data volume returned! 
SCENARIO B! 
§ Deegree and GeoServer performed similarly; Deegree tending to perform better 
under high loads! 
§ 52°North had difficulty when processing more than 16 concurrent requests, but 
performed more effectively under low loads! 
§ From a qualitative perspective, compared to other WPS servers, 52°North and 
GeoServer seem to be the best choices! 
35!
CONCLUSIONS! 
36! 
§ When selecting an appropriate WPS server, it is important to consider both 
quantitative and qualitative metrics! 
§ The importance of each metric can be weighted based on different 
application requirements! 
§ A recommendation: start with an evaluation process with some basic 
questions:! 
ü Who is the user of the system, end-user or application developer?! 
ü How complex are the geoprocessing services?! 
ü How should the system function, synchronous or asynchronous?! 
ü What is the architecture used to design the processing workflow?! 
ü What is the expected number of users?!
THANK YOU! 
ANY QUESTION?! 
Ebrahim Poorazizi! 
mepooraz@ucalgary.ca! 
ebrahim.planyourplace.ca! 
Andrew Hunter! 
ahunter@ucalgary.ca! 
gisciencegroup.ucalgary.ca!

More Related Content

Similar to Evaluation of Web Processing Service Frameworks

Context-Aware Access Control for RDF Graph Stores
Context-Aware Access Control for RDF Graph StoresContext-Aware Access Control for RDF Graph Stores
Context-Aware Access Control for RDF Graph StoresSerena Villata
 
Fast Web Applications with Go
Fast Web Applications with Go Fast Web Applications with Go
Fast Web Applications with Go Eylem Ozekin
 
Imola informatica - cloud computing and software development
Imola informatica - cloud computing and software developmentImola informatica - cloud computing and software development
Imola informatica - cloud computing and software developmentFilippo Bosi
 
A DevOps Perspective: MongoDB & MMF
A DevOps Perspective: MongoDB & MMFA DevOps Perspective: MongoDB & MMF
A DevOps Perspective: MongoDB & MMFMapMyFitness
 
NGS Informatics and Interpretation - Hardware Considerations by Michael McManus
NGS Informatics and Interpretation - Hardware Considerations by Michael McManusNGS Informatics and Interpretation - Hardware Considerations by Michael McManus
NGS Informatics and Interpretation - Hardware Considerations by Michael McManusKnome_Inc
 
CliqueSquare processing
CliqueSquare processingCliqueSquare processing
CliqueSquare processingINRIA-OAK
 
Speech-Enabling Web Apps
Speech-Enabling Web AppsSpeech-Enabling Web Apps
Speech-Enabling Web AppsMojo Lingo
 
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...OdessaJS Conf
 
Introduction to Cassandra and CQL for Java developers
Introduction to Cassandra and CQL for Java developersIntroduction to Cassandra and CQL for Java developers
Introduction to Cassandra and CQL for Java developersJulien Anguenot
 
Workflows in the Virtual Observatory
Workflows in the Virtual ObservatoryWorkflows in the Virtual Observatory
Workflows in the Virtual ObservatoryJose Enrique Ruiz
 
System insight without Interference
System insight without InterferenceSystem insight without Interference
System insight without InterferenceTony Tam
 
Keeping London On The Move - Interesting Solutions For Challenging Problems
Keeping London On The Move - Interesting Solutions For Challenging ProblemsKeeping London On The Move - Interesting Solutions For Challenging Problems
Keeping London On The Move - Interesting Solutions For Challenging ProblemsAnand Ramdeo
 
Cassandra Summit 2014: Active-Active Cassandra Behind the Scenes
Cassandra Summit 2014: Active-Active Cassandra Behind the ScenesCassandra Summit 2014: Active-Active Cassandra Behind the Scenes
Cassandra Summit 2014: Active-Active Cassandra Behind the ScenesDataStax Academy
 
Hacklu2011 tricaud
Hacklu2011 tricaudHacklu2011 tricaud
Hacklu2011 tricaudstricaud
 
Enabling Limitless Connectivity, Opportunity and Growth with Interconnection ...
Enabling Limitless Connectivity, Opportunity and Growth with Interconnection ...Enabling Limitless Connectivity, Opportunity and Growth with Interconnection ...
Enabling Limitless Connectivity, Opportunity and Growth with Interconnection ...Sagi Brody
 
Palringo : a startup's journey from a data center to the cloud
Palringo : a startup's journey from a data center to the cloudPalringo : a startup's journey from a data center to the cloud
Palringo : a startup's journey from a data center to the cloudPhilipBasford
 
Webinar: Modern Techniques for Better Search Relevance with Fusion
Webinar: Modern Techniques for Better Search Relevance with FusionWebinar: Modern Techniques for Better Search Relevance with Fusion
Webinar: Modern Techniques for Better Search Relevance with FusionLucidworks
 
RIPE 69 & IETF 91 Webinar - DNS-Privacy, IPv6, DANE and DHCP(v6)
RIPE 69 & IETF 91 Webinar - DNS-Privacy, IPv6, DANE and DHCP(v6)RIPE 69 & IETF 91 Webinar - DNS-Privacy, IPv6, DANE and DHCP(v6)
RIPE 69 & IETF 91 Webinar - DNS-Privacy, IPv6, DANE and DHCP(v6)Men and Mice
 

Similar to Evaluation of Web Processing Service Frameworks (20)

Context-Aware Access Control for RDF Graph Stores
Context-Aware Access Control for RDF Graph StoresContext-Aware Access Control for RDF Graph Stores
Context-Aware Access Control for RDF Graph Stores
 
Fast Web Applications with Go
Fast Web Applications with Go Fast Web Applications with Go
Fast Web Applications with Go
 
Imola informatica - cloud computing and software development
Imola informatica - cloud computing and software developmentImola informatica - cloud computing and software development
Imola informatica - cloud computing and software development
 
A DevOps Perspective: MongoDB & MMF
A DevOps Perspective: MongoDB & MMFA DevOps Perspective: MongoDB & MMF
A DevOps Perspective: MongoDB & MMF
 
NGS Informatics and Interpretation - Hardware Considerations by Michael McManus
NGS Informatics and Interpretation - Hardware Considerations by Michael McManusNGS Informatics and Interpretation - Hardware Considerations by Michael McManus
NGS Informatics and Interpretation - Hardware Considerations by Michael McManus
 
CliqueSquare processing
CliqueSquare processingCliqueSquare processing
CliqueSquare processing
 
Speech-Enabling Web Apps
Speech-Enabling Web AppsSpeech-Enabling Web Apps
Speech-Enabling Web Apps
 
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
 
Introduction to Cassandra and CQL for Java developers
Introduction to Cassandra and CQL for Java developersIntroduction to Cassandra and CQL for Java developers
Introduction to Cassandra and CQL for Java developers
 
Workflows in the Virtual Observatory
Workflows in the Virtual ObservatoryWorkflows in the Virtual Observatory
Workflows in the Virtual Observatory
 
System insight without Interference
System insight without InterferenceSystem insight without Interference
System insight without Interference
 
Keeping London On The Move - Interesting Solutions For Challenging Problems
Keeping London On The Move - Interesting Solutions For Challenging ProblemsKeeping London On The Move - Interesting Solutions For Challenging Problems
Keeping London On The Move - Interesting Solutions For Challenging Problems
 
Cassandra Summit 2014: Active-Active Cassandra Behind the Scenes
Cassandra Summit 2014: Active-Active Cassandra Behind the ScenesCassandra Summit 2014: Active-Active Cassandra Behind the Scenes
Cassandra Summit 2014: Active-Active Cassandra Behind the Scenes
 
Hacklu2011 tricaud
Hacklu2011 tricaudHacklu2011 tricaud
Hacklu2011 tricaud
 
Enabling Limitless Connectivity, Opportunity and Growth with Interconnection ...
Enabling Limitless Connectivity, Opportunity and Growth with Interconnection ...Enabling Limitless Connectivity, Opportunity and Growth with Interconnection ...
Enabling Limitless Connectivity, Opportunity and Growth with Interconnection ...
 
Palringo : a startup's journey from a data center to the cloud
Palringo : a startup's journey from a data center to the cloudPalringo : a startup's journey from a data center to the cloud
Palringo : a startup's journey from a data center to the cloud
 
Webinar: Modern Techniques for Better Search Relevance with Fusion
Webinar: Modern Techniques for Better Search Relevance with FusionWebinar: Modern Techniques for Better Search Relevance with Fusion
Webinar: Modern Techniques for Better Search Relevance with Fusion
 
RIPE 69 & IETF 91 Webinar - DNS-Privacy, IPv6, DANE and DHCP(v6)
RIPE 69 & IETF 91 Webinar - DNS-Privacy, IPv6, DANE and DHCP(v6)RIPE 69 & IETF 91 Webinar - DNS-Privacy, IPv6, DANE and DHCP(v6)
RIPE 69 & IETF 91 Webinar - DNS-Privacy, IPv6, DANE and DHCP(v6)
 
AMBER14 & GPUs
AMBER14 & GPUsAMBER14 & GPUs
AMBER14 & GPUs
 
Service worker API
Service worker APIService worker API
Service worker API
 

Recently uploaded

123445566544333222333444dxcvbcvcvharsh.pptx
123445566544333222333444dxcvbcvcvharsh.pptx123445566544333222333444dxcvbcvcvharsh.pptx
123445566544333222333444dxcvbcvcvharsh.pptxgargh1099
 
Pollinator Ambassador Earth Steward Day Presentation 2024-05-22
Pollinator Ambassador Earth Steward Day Presentation 2024-05-22Pollinator Ambassador Earth Steward Day Presentation 2024-05-22
Pollinator Ambassador Earth Steward Day Presentation 2024-05-22LHelferty
 
527598851-ppc-due-to-various-govt-policies.pdf
527598851-ppc-due-to-various-govt-policies.pdf527598851-ppc-due-to-various-govt-policies.pdf
527598851-ppc-due-to-various-govt-policies.pdfrajpreetkaur75080
 
Acorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutesAcorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutesIP ServerOne
 
Eureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 PresentationEureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 PresentationAccess Innovations, Inc.
 
Writing Sample 2 -Bridging the Divide: Enhancing Public Engagement in Urban D...
Writing Sample 2 -Bridging the Divide: Enhancing Public Engagement in Urban D...Writing Sample 2 -Bridging the Divide: Enhancing Public Engagement in Urban D...
Writing Sample 2 -Bridging the Divide: Enhancing Public Engagement in Urban D...Rahsaan L. Browne
 
Getting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control TowerGetting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control TowerVladimir Samoylov
 
Oracle Database Administration I (1Z0-082) Exam Dumps 2024.pdf
Oracle Database Administration I (1Z0-082) Exam Dumps 2024.pdfOracle Database Administration I (1Z0-082) Exam Dumps 2024.pdf
Oracle Database Administration I (1Z0-082) Exam Dumps 2024.pdfSkillCertProExams
 
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...Orkestra
 
05232024 Joint Meeting - Community Networking
05232024 Joint Meeting - Community Networking05232024 Joint Meeting - Community Networking
05232024 Joint Meeting - Community NetworkingMichael Orias
 
The Canoga Gardens Development Project. PDF
The Canoga Gardens Development Project. PDFThe Canoga Gardens Development Project. PDF
The Canoga Gardens Development Project. PDFRahsaan L. Browne
 
Hi-Tech Industry 2024-25 Prospective.pptx
Hi-Tech Industry 2024-25 Prospective.pptxHi-Tech Industry 2024-25 Prospective.pptx
Hi-Tech Industry 2024-25 Prospective.pptxShivamM16
 
Bitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXOBitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXOMatjaž Lipuš
 
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
0x01 - Newton's Third Law:  Static vs. Dynamic Abusers0x01 - Newton's Third Law:  Static vs. Dynamic Abusers
0x01 - Newton's Third Law: Static vs. Dynamic AbusersOWASP Beja
 

Recently uploaded (15)

123445566544333222333444dxcvbcvcvharsh.pptx
123445566544333222333444dxcvbcvcvharsh.pptx123445566544333222333444dxcvbcvcvharsh.pptx
123445566544333222333444dxcvbcvcvharsh.pptx
 
Pollinator Ambassador Earth Steward Day Presentation 2024-05-22
Pollinator Ambassador Earth Steward Day Presentation 2024-05-22Pollinator Ambassador Earth Steward Day Presentation 2024-05-22
Pollinator Ambassador Earth Steward Day Presentation 2024-05-22
 
527598851-ppc-due-to-various-govt-policies.pdf
527598851-ppc-due-to-various-govt-policies.pdf527598851-ppc-due-to-various-govt-policies.pdf
527598851-ppc-due-to-various-govt-policies.pdf
 
Acorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutesAcorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutes
 
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
 
Eureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 PresentationEureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 Presentation
 
Writing Sample 2 -Bridging the Divide: Enhancing Public Engagement in Urban D...
Writing Sample 2 -Bridging the Divide: Enhancing Public Engagement in Urban D...Writing Sample 2 -Bridging the Divide: Enhancing Public Engagement in Urban D...
Writing Sample 2 -Bridging the Divide: Enhancing Public Engagement in Urban D...
 
Getting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control TowerGetting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control Tower
 
Oracle Database Administration I (1Z0-082) Exam Dumps 2024.pdf
Oracle Database Administration I (1Z0-082) Exam Dumps 2024.pdfOracle Database Administration I (1Z0-082) Exam Dumps 2024.pdf
Oracle Database Administration I (1Z0-082) Exam Dumps 2024.pdf
 
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
 
05232024 Joint Meeting - Community Networking
05232024 Joint Meeting - Community Networking05232024 Joint Meeting - Community Networking
05232024 Joint Meeting - Community Networking
 
The Canoga Gardens Development Project. PDF
The Canoga Gardens Development Project. PDFThe Canoga Gardens Development Project. PDF
The Canoga Gardens Development Project. PDF
 
Hi-Tech Industry 2024-25 Prospective.pptx
Hi-Tech Industry 2024-25 Prospective.pptxHi-Tech Industry 2024-25 Prospective.pptx
Hi-Tech Industry 2024-25 Prospective.pptx
 
Bitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXOBitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXO
 
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
0x01 - Newton's Third Law:  Static vs. Dynamic Abusers0x01 - Newton's Third Law:  Static vs. Dynamic Abusers
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
 

Evaluation of Web Processing Service Frameworks

  • 1. EVALUATION OF WPS FRAMEWORKS! Ebrahim Poorazizi! Andrew Hunter! ! Geomatics Eng., University of Calgary! gisciencegroup.ucalgary.ca!
  • 2. OUTLINE! § Introduction ! § Web Processing Service! § WPS Servers! § Methodology! § Experimental Results! § Lessons Learned! § Discussion and Conclusions! 2!
  • 3. INTRODUCTION! Created by tagxedo.com!3!
  • 4. INTRODUCTION! 4! How FAST is it?! Is it EASY-TO-USE?! Images courtesy: © funcom.com, iconbug.com, tagxedo.com!
  • 5. INTRODUCTION! Spatial Web Services Evaluations:! § Web Map Service {Horák, J. et al. (2009), Kalbere, P. (2010), FOSS4G Shootout}! § Sensor Observation Service {Tamayo, A. et al. (2011), Poorazizi, M.E. et al. (2012)}! § Web Processing Service {Scholten, M. et al. (2006), Michaelis, C. and Ames, D. (2009), FOSS4G Shootout}! 5! What have been done so far:! § Focused on influential performance issues, the WPS protocol and its specification, and compliance and interoperability testing!
  • 6. INTRODUCTION! What needs to be done:! § Evaluating WPS functionality and performance! Why it should be done:! § To identify the strengths and weaknesses of each system! § To improve WPS servers to meet both application user and developer requirements! Images courtesy: © iconfinder.com!6!
  • 7. WEB PROCESSING SERVICE! 7! A web service interface to standardize the way that (spatial) algorithms are made available on the Internet! GET POST SOAP GetCapabilities DescribeProcess Execute
  • 8. WPS SERVERS! 8! ! 52°North! Deegree! GeoServer! PyWPS! Zoo! Organization! 52°North GmbH! OSGeo! OSGeo! Intevation GmbH! OSGeo! Development Platform! Java! Java! Java! Python! C/C++! License! GNU GPL v. 2! LPGL! GNU GPL v. 2! GNU GPL v. 2! MIT/X-11 style! Supported Libraries! JTS! GeoTools! SEXTANTE! R! GRASS! ArcGIS! SEXTANTE! JTS! GeoTools! GRASS! GDAL! R! GRASS! GEOS! GDAL! Na t i v e l y S u p p o r t e d Development Languages! Java! Java! Java! Python! C/C++! Fortran! Java! Python! PHP! Perl! JavaScript! Service ! Servlet! Servlet! Servlet! CGI! CGI! DCP Request! GET/POST/SOAP! GET/POST/SOAP! GET/POST! GET/POST/SOAP! GET/POST!
  • 9. METHODOLOGY – CASE STUDY! ! § Determine accessible walkable area (walkshed) using pedestrian and transit infrastructure! § Assess walkshed using a number of quality of life and access indicators such as local crime, or shopping and recreation facilities within that area! WalkYourPlace Transit Model à http://webmapping.ucalgary.ca/WPSClient/ Images courtesy: © walkonomics.com!9!
  • 10. METHODOLOGY – ARCHITECTURE ! 10! Design! Implement! Release! Test! § A bottom-up approach! § PostGIS & Python! § Wrapping & exposing as WPS! § Evaluating from quantitative & qualitative views!
  • 14. METHODOLOGY – ARCHITECTURE ! WPS Input! WPS Output! StartPoint=51.057,-114.066! StartTime=17:43:00! WalkingTimePeriod=15! WalkingSpeed=1.38! BusWaitingTime=10! BusRideTime=5! DistanceDecayFunction=False! 14! Walkshed WPS!
  • 16. METHODOLOGY – ARCHITECTURE ! 16! WPS Input! WPS Output! Transit WPS! StartTime=17:43:00! WalkingTimePeriod=15! WalkingSpeed=1.38! BusWaitingTime=10! BusRideTime=5!
  • 18. METHODOLOGY – ARCHITECTURE ! 18! WPS Input! WPS Output! Union WPS!
  • 20. METHODOLOGY – ARCHITECTURE ! 20! WPS Input! WPS Output! POI WPS!
  • 22. METHODOLOGY – ARCHITECTURE ! 22! WPS Input! WPS Output! Crime WPS!
  • 24. METHODOLOGY – ARCHITECTURE ! 24! Aggregation WPS! WPS Input! WPS Output! StartPoint=51.057,-114.066! WalkingTimePeriod=15! DistanceDecayFunction=False!
  • 25. METHODOLOGY – TEST SCENARIO! SCENARIO A! ü To assess how fast each server responds! ü 45 Execute requests, random WPS input parameters:! § Walking Start Point! § Walking Start Time: 5 a.m. – 12 p.m. ! § Walking Time Period (WTP): 5 min – 20 min! § Walking Speed: 3 km/h – 6 km/h! § Bus Waiting Time (BWT): 0 – WTP! § Bus Ride Time: 0 – (WTP – BWT)! § Distance Decay Function: True/False! ! 25!
  • 26. METHODOLOGY – TEST SCENARIO! SCENARIO B! ü To assess the effect of increased load on each server! § Number of concurrent requests: 2n , n = {0,…,7}! § 30 replications! § Random WPS input parameters, like SCENARIO A! 26!
  • 27. METHODOLOGY – TEST ENVIRONMENT! § Each WPS server was installed on a separate Virtual Machine (VM)! § The same machine used to run the VMs and the tests! § JMeter was used to perform the tests! 27! Hardware! Dell OptiPlex 990 (Host)! VMware (VM)! CPU! Intel Core i5 3.1 GHz! 4 Cores of 8! RAM! 8 GB! 4 GB! HDD! 500 GB! 40 GB! OS! Windows 7 Professional (64-bit)! Ubuntu 12.04 LTS (64-bit)!
  • 28. EXPERIMENTAL RESULTS! SCENARIO A! § Response Time: time taken for a service call to return all response bytes! § Response Size: the quantity of data exchanged between client and server! ! 28! WPS Server! Response Time (sec.)! Response Size (kB)! 52°North! 2.784 ± 1.269! 2.448 ± 0.267! Deegree! 2.499 ± 1.259! 2.505 ± 0.267! GeoServer! 2.753 ± 1.255! 2.301 ± 0.267! PyWPS! 3.995 ± 1.661! 2.686 ± 0.269! Zoo! 2.999 ± 1.313! 2.479 ± 0.269!
  • 29. EXPERIMENTAL RESULTS! F(4,220)=0.739, p=0.566 !F(4,220)=1.071, p=0.372 !29!
  • 30. EXPERIMENTAL RESULTS! SCENARIO B! § Response Time! § Server Failure! § Server Throughput! 30!
  • 31. EXPERIMENTAL RESULTS! 31! Response Time!
  • 32. EXPERIMENTAL RESULTS! 32! Server Failure Rate!
  • 33. EXPERIMENTAL RESULTS! 33! Server Throughput!
  • 34. LESSONS LEARNED! 34! 52°North! Deegree! GeoServer! PyWPS! Zoo! Installation*! Easy! Easy! Easy! Difficult! Difficult! Create new processes Easy! Medium! Easy! Difficult! Easy! and Configuration* ! Native Development Languages! One ! One ! One ! One ! Many! Quality of Documentation**! Great! Good! Great! Good! Good! Community Support! • Many Avenues! • Active Support! • Many Avenues! • Active Support! • Many Avenues! • Active Support! • Few Avenues! • Little Support! • Many Avenues! • Active Support! * Ranking ranges: Easy; Medium; Difficult! ** Ranking ranges: Weak; Good; Great!
  • 35. DISCUSSION! SCENARIO A! § Deegree returns the response package most rapidly! § But, based on a One Way ANOVA test, there is no significant difference in response time between the WPS servers tested nor data volume returned! SCENARIO B! § Deegree and GeoServer performed similarly; Deegree tending to perform better under high loads! § 52°North had difficulty when processing more than 16 concurrent requests, but performed more effectively under low loads! § From a qualitative perspective, compared to other WPS servers, 52°North and GeoServer seem to be the best choices! 35!
  • 36. CONCLUSIONS! 36! § When selecting an appropriate WPS server, it is important to consider both quantitative and qualitative metrics! § The importance of each metric can be weighted based on different application requirements! § A recommendation: start with an evaluation process with some basic questions:! ü Who is the user of the system, end-user or application developer?! ü How complex are the geoprocessing services?! ü How should the system function, synchronous or asynchronous?! ü What is the architecture used to design the processing workflow?! ü What is the expected number of users?!
  • 37. THANK YOU! ANY QUESTION?! Ebrahim Poorazizi! mepooraz@ucalgary.ca! ebrahim.planyourplace.ca! Andrew Hunter! ahunter@ucalgary.ca! gisciencegroup.ucalgary.ca!