pushing the envelope… new and innovative ways to leverage open source toolkits for the erma portal...

17
Pushing the envelope… New and innovative ways to leverage Open Source Toolkits for the ERMA portal Aaron Racicot (Z-Pulley Inc) Dane Springmeyer (DBSGeo)

Upload: gabriel-hardy

Post on 03-Jan-2016

214 views

Category:

Documents


1 download

TRANSCRIPT

Pushing the envelope…

New and innovative ways to leverage Open Source Toolkits

for the ERMA portal

Aaron Racicot (Z-Pulley Inc)Dane Springmeyer (DBSGeo)

Z-Pulley Inc - DBSGeo2

Architecture

Current Architecture

Z-Pulley Inc - DBSGeo3

Data Layer

Modeling/AnalysisLayer

User InterfaceLayer

USER USERUser Interface

(Custom HTML/JS and Openlayers)

Internet

Web Server (Apache/mod_perl)

???

Database (PostgreSQL/PostGIS) & File Server (Linux - Fedora)

GIS (Mapserver)

Custom Perl Module

SERV

ER

Architecture Direction

• Consolidation of Languages– Migrate to Python where it makes sense

• Integrate frameworks– GeoDjango – Authentication, REST Services, Admin– GeoExt – UI Layout, Cross Platform Support

• Increase ease of deployment– Automate with install scripts– Reduce dependencies

Z-Pulley Inc - DBSGeo4

Possible Future Architecture

Z-Pulley Inc - DBSGeo5

Data Layer

Modeling/AnalysisLayer

User InterfaceLayer

USER USERUser Interface

(GeoExt and Openlayers)

Internet

Web Server (Apache/mod_python)

Integration Framework(Python)

Database (PostgreSQL/PostGIS) & File Server (Linux - Ubuntu)

GIS (Mapserver/Mapnik)

Framework (GeoDjango)

SERV

ER

Current Short List• Shortcuts for speed

– Server/Connection speed– Faster map requests via Caching (TileCache)– Database optimization (indexing, normalization)– Avoid on-the-fly reprojection – Harmonize into common projection

• Frameworks and Libraries for:– Security

• Wrapping WMS/WFS services in authentication framework– Cross Platform Support

• Get IE support enabled– UI Layout optimization

• Increase map size• Online help

• Increased print functionality

Z-Pulley Inc - DBSGeo6

Current Long List

• Batch uploads• Search and Query capability• Enhanced Reporting• Incorporate 3rd party datasets (IOOS etc), both

WMS/WFS/WCS• Custom groups for categorizing users, AOI’s, visible

datasets, etc.• Bookmarks for quickly allowing users to scale to a

project scope in the interface

Z-Pulley Inc - DBSGeo7

Z-Pulley Inc - DBSGeo8

Speed

Z-Pulley Inc - DBSGeo9

Tile Serving with TileCacheUser Interface

(OpenLayers)

Internet

Web Server (Apache)

Database (PostgreSQL/PostGIS)

GIS (Mapserver/Mapnik)

TileCache

http://labs.metacarta.com/wms-c/tilecache.py/1.0.0/basic/5/32/23.png

Cache Miss

Disk Cache

User Interface (OpenLayers)

Internet

Web Server (Apache)

Database (PostgreSQL/PostGIS)

GIS (Mapserver/Mapnik)

TileCache

http://labs.metacarta.com/wms-c/tilecache.py/1.0.0/basic/5/32/23.png

Cache Hit

Z-Pulley Inc - DBSGeo10

Z-Pulley Inc - DBSGeo11

ProjectionsUser Interface

(OpenLayers)

Internet

Web Server (Apache)

Database (PostgreSQL/PostGIS)

GIS (Mapserver/Mapnik)

http://labs.metacarta.com/wms-c/tilecache.py/1.0.0/basic/5/32/23.png

Proj4

Proj Mismatch

User Interface (OpenLayers)

Internet

Web Server (Apache)

Database (PostgreSQL/PostGIS)

GIS (Mapserver/Mapnik)

http://labs.metacarta.com/wms-c/tilecache.py/1.0.0/basic/5/32/23.png

Proj4

Proj Match

Z-Pulley Inc - DBSGeo12

Z-Pulley Inc - DBSGeo13

Frameworks

ExtJS GeoExt

Z-Pulley Inc - DBSGeo14

Django GeoDjango

Z-Pulley Inc - DBSGeo15

Z-Pulley Inc - DBSGeo16

Rendering

Mapserver Mapnik

Z-Pulley Inc - DBSGeo17