View
214
Download
0
Embed Size (px)
Citation preview
U.S. Department of the InteriorU.S. Geological SurveyCenter of Excellence in Geospatial Information Science
Web-client Based DistributedGeneralization and GeoprocessingWeb-client Based DistributedGeneralization and Geoprocessing
Eric B. Wolf and Kevin Howe
5 February 2009
Overview
Architectures for generalization
Advantages of web-client generalization
Our experiment
Results
Summary
Architectures for generalization
Advantages of web-client generalization
Our experiment
Results
Summary
Architectures - Monolithic
World WideWeb
World WideWeb
Architectures - MRDBs
Architectures - WPS
World
Wide
Web
World
Wide
Web
Architectures – Client Side
Web Browser
World
Wide
Web
World
Wide
Web
JavascriptJavascript
Advantages of Client-side Generalization
Reduced software costs
Reduced software complexity
Resolves conflation issues
Reduced software costs
Reduced software complexity
Resolves conflation issues
Our Experiment: Is it possible?
Douglas-Peucker algorithm
Initially implemented inside OpenLayers
Broke out code for benchmarking
Multiple datasets – synthetic and typical
Multiple browser environments
Douglas-Peucker algorithm
Initially implemented inside OpenLayers
Broke out code for benchmarking
Multiple datasets – synthetic and typical
Multiple browser environments
How does performance compare to other cyberinfrastructure models?
How does performance compare to other cyberinfrastructure models?
Recognized best for linear generalization
Typically O(n2) in complexity
Naturally recursive
Well documented
Recognized best for linear generalization
Typically O(n2) in complexity
Naturally recursive
Well documented
About the Douglas-Peucker algorithm
SyntheticSynthetic
Datasets Selected
TypicalTypical
Browsers Compared
Paper Presentation
Browser Version Build Version Build
Mozilla Firefox
2.0.0.16 1.8.1.14 2.0.0.20 1.8.1.20
3.0.1 1.9.0.1 3.0.5 1.9.0.5
3.1 1.9.1b1pre 3.1b2 1.9.1b2
Microsoft Internet Explorer
7.0 5730.11 7.0 5730.13
8.0 beta 26001.18241
8.0 beta 26001.18241
Apple Safari 3.1.2 525.21 3.2.1 525.27.1
Opera 9.5.2 10108 9.6.3 10476
Google Chrome0.2.149.29
1798 1.0.154.43
Results
0
100
200
300
400
500
600
700
800
900
1000
Arr
ay
LL
ist
Arr
ay
LL
ist
Arr
ay
LL
ist
Arr
ay
LL
ist
Arr
ay
LL
ist
Arr
ay
LL
ist
Arr
ay
LL
ist
Arr
ay
LL
ist
FF 2 FF 3 FF 3.1 Chrome Safari Opera IE 7 IE 8
Browser
Gen
eral
izat
ion
rate
(ms / 1
000
vert
ices
)
streams
roads
fjord (b)
fjord (a)
DiscussionEnvironment difficult to benchmark
Data management imposes processing demands depending on data structure
Safari and Chrome handled arrays as expected
ECMAScript interpreters are quickly evolving
Except for Microsoft – 2/3rds of internet users
Performance of IE8 Beta on par with Firefox 2.0
When it manages to run at all…
Environment difficult to benchmark
Data management imposes processing demands depending on data structure
Safari and Chrome handled arrays as expected
ECMAScript interpreters are quickly evolving
Except for Microsoft – 2/3rds of internet users
Performance of IE8 Beta on par with Firefox 2.0
When it manages to run at all…
SummaryIs client-side geoprocessing possible? Yes
Challenging development environment
Interpreters not robust
Poor stack management - avoid recursion!
Arrays commonly handled like hashes
Standards not equally implemented
Microsoft Internet Explorer commonly fails
How does it compare?
Computation time less than network latency
Is client-side geoprocessing possible? Yes
Challenging development environment
Interpreters not robust
Poor stack management - avoid recursion!
Arrays commonly handled like hashes
Standards not equally implemented
Microsoft Internet Explorer commonly fails
How does it compare?
Computation time less than network latency
Future Directions
Integrate client-based generalization with WFS for multiscale features
Determine what geoprocessing operations are best handled as a WPS or client-based?
Create a library of geoprocessing methods
Integrate client-based generalization with WFS for multiscale features
Determine what geoprocessing operations are best handled as a WPS or client-based?
Create a library of geoprocessing methods
Questions?