U.S. Department of the Interior U.S. Geological Survey Center of Excellence in Geospatial Information Science Web-client Based Distributed Generalization and Geoprocessing Web-client Based Distributed Generalization 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 Wide Web World Wide Web
Architectures - MRDBs
Architectures - WPS World Wide Web World Wide Web
Architectures – Client Side Web Browser World Wide Web World Wide Web Javascrip t
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?
Recognized best for linear generalization Typically O(n 2 ) in complexity Naturally recursive Well documented Recognized best for linear generalization Typically O(n 2 ) in complexity Naturally recursive Well documented About the Douglas-Peucker algorithm
Synthetic Datasets Selected Typical
Browsers Compared PaperPresentation BrowserVersionBuildVersionBuild Mozilla Firefox b1pre3.1b21.9.1b2 Microsoft Internet Explorer beta beta Apple Safari Opera Google Chrome
Results
Discussion 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… 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…
Summary 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 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?