paas4g - towards a service oriented platform for
TRANSCRIPT
PaaS4G - Towards a Service Oriented Platform for
Geoinformatics
Venkatesh Raghavan, Gerald Fenoy, Daisuke Yoshida & Nicolas Bozon
in 2004 it was FOSS4G!
FOSS/GRASS User Conference in Bangkok
FOSS4G2006 held at Lausanne, Switzerland http://2006.foss4g.org/
FOSS4G2007 held at Victoria, Canada http://2007.foss4g.org/
FOSS4G2008 held at Cape Town, South Africahttp://2008.foss4g.org
FOSS4G2009 held at Sydney, Australiahttp://2009.foss4g.org
FOSS4G2010 held at Barcelona, Spain http://2010.foss4g.org/
FOSS4G2011 to be held at Denver, USA http://2011.foss4g.org/
FOSS4G2012 to be held at Beijing, Chinahttp://2012.foss4g.org/ CANCELLED
FOSS4G 2013 Nottingham, UK http://2013.foss4g.org/
FOSS4G is now a worldwide phenomenon
Home BrewJapan, Korea, India, Malaysia, The Philippines…and Asia
In 2013, PaaS4G! is round the corner
Platform as a Service for
(sounds like 4) Geoinformatics
(or geospatial) applications*
*In other words CloudGIS
INTEROPERABLE SERVICE ORIENTED
GEOSPATIAL ARCHITECTURE
Automate and orchestrates WPS, WMS, WMTS and
WFS.
Geoprocessing driven by a collection of WPS
Services
Vector Data as WMS and WFS
Raster data is displayed as WMS
Both datatypes as WMTS in final Web-GIS
applications
WHAT IS WPS ?
Web Processing Service is designed to standardize the way thatGIS algorithms are made available on the Internet.
WPS specifies a mean for a client to request the execution of a spatialcalculation from a service.
WPS intends to automate geoprocessing by employing geospatial semantics in a service-oriented architecture (SOA).
Open Geospatial Consortium interoperability standards since 2005
WPS Standard was published and accepted as Standard in 2007
http://zoo-project.org
Short WPS Overview
Web Processing Service defines three requests :
GetCapabilities (as almost all the OWS Standards)
Provides a full overview of all the processes available on the therequested server.
DescribeProcess Provides detailed description ofService.
Execute Provides a way to run the Service and ask for the
ResponseDocument or RawdataOutput.
http://zoo-project.org
Why use WPS ?
WPS opens the door to interoperability with Web GIS!
Input:
- Shapefile, MapInfo...
- GeoTiff, DEM, Lidar …
- KML, GeoJSON...
- PostGIS, Oracle, ArcSDE...
- WFS, WCS, CSW...
Output:
- Shapefile, MapInfo...
- GeoTiff, DEM, Lidar …
- KML, GeoJSON...
- PostGIS, Oracle, ArcSDE...
- WMS, WFS, WCS...
WPS allows the processing and conversion of GIS data online
http://zoo-project.org
Client
WPS request
WPS response
How ZOO Works
ZOO Server
HOW DOES ZOO WORK ? (2)
http://zoo-project.org
Example
HelloWorld.py
def HelloPy(conf,inputs,outputs):outputs["output1"]={"value": "helloworld"+inputs['Name']['value'],"datatype": "string"}return SERVICE_SUCCEEDED
HelloWorld.zcfg overview
[HelloWorld]Title = Get the HelloWorld string.serviceProvider = test_serviceserviceType = Python<DataInputs>[Name]Title = HelloString<LiteralData>DataType = string</LiteralData></DataInputs>
<DataOutputs>[output1]Title = HelloString<LiteralData>DataType = string</LiteralData></DataOutputs>
http://zoo-project.org
SUPPORTED LANGUAGES
ZOO Kernel supports several programming languages
- C / C++ Native support
- Python Optional support (Python interpreter)
- Fortran Optional support (F77, F90)
- PHP Optional support (PHP embedded)
- Java Optional support (Java SDK)
- Perl Optional support (Perl interpreter)
- Javascript Optional support (SpiderMonkey)
http://zoo-project.org
ZOO PROJECT STATUS(1)
ZOO 1.0 released under MIT/X-11 license since April 2010:
ZOO Kernel ( C )
ZOO Services ( C and Python)ZOO API ( Javascript )
svn checkout http://svn.zoo-project.org/svn/trunk zoo
ZOO documentation and packaging
Install guide and ZOO Workshop available on the wiki。Quickstart: ZOO 1.2 available on OSGeo-Live
ZOO -1.3 available Since September 2013!
http://zoo-project.org
Available onhttp://live.osgeo.org/
ZOO PROJECT STATUS(2)
ZOO Services
Ogr2Ogr (C)
GEOS/OGR (C)GdalTranslate (C)GdalGrid (C)GRASS 7.0 modules vector and raster (Python)OpenOffice Document Text Converter (Python)
http://zoo-project.org/trac/browser/trunk/zoo-services/
ZOO API
Based on SpiderMonkey and ZOO's optional JavaScript supportUses server-side JavaScript and a Proj4js adaptationAdd Logic in WPS chaining
http://zoo-project.org
ZOO PROJECT STATUSSimple Vector Features operations OGR Based
http://zoo-project.org
Example of Interoperability
ZOO Services can be executed by any client that support WPS Standard
Quantum GIS OpenLayers
http://zoo-project.org
A COMMERCIAL OPEN SOURCE
SOLUTION FOR MANAGING
GEOSPATIAL CONTENT AND SERVICES
www.mapmint.com/
MapMint COMPONENTS
Server-side:
MapServer
GDAL/OGR
ZOO-Project
Client-side:
Jquery
OpenLayers
Everything is a Service
- GIS data access
- GDAL/OGR functions
- MapServer configuration
- OpenLayers configuration
- HTML5 output maps creation
100% geospatial SaaS
WPS + WMS + WFS + WCS+WMTS
The web maps generator
- Several GIS formats(GDAL/OGR)
- PostGIS databases
- Full MapServer editor
- Full OpenLayers editor
- HTML5 layouts
- CSS3 themes
- Web mobile output
Advanced features
- Windows and Trees
- Search layers (WFS)
- Editing (WFS-T)
- Thematic mapping MapServer
- Spatial analysis (GDAL)
- Routing (PgRouting)
- Raster analysis (GDAL)
- GeoReferencer (GDAL)
- WPS, WMS & WFS servers configuration
- Detailed server and data stores statistics
- Quick access to created projects
Control your SDI with the MapMint Dashboard
http://mapmint.com
- Create and manage data stores from existing databases or directories
- Convert, re-project, re-encode, download and preview data sources
- New data sources are published as WFS and WMS automatically
Manage your GIS data with the MapMint Distiller
- Load and visualize non georeferenced maps (scans)
- Create GCP using available Reference Layers (MapQuest, OSM...)
- Georectify and create a new raster DataSource
Georectify maps with the MapMint GeoReferencer
- Rich Web GIS interface for creating webmapping projects
- Add/Remove vector and raster data layers available in the Distiller
- Advanced tools and widgets for configuring and processing layers
Compose web maps with the MapMint Manager
http://mapmint.com
- Complete publication interface. Choose the look and feel for your app.
- Select baselayers, layer types, default settings and tools to publish
- Select a layout for the final app, web or web mobile.
Publish web maps with the MapMint Publisher
PUBLISH SIMPLE WEB MAPS FAST AND
EASY !
Example generated web application (2)
Web client for searching,visualizing and editing a utilities network
Example generated web application (3)
Map of the Geo Conferences planned for 2012, from a Google Fusion Table http://demo.mapmint.com/public/conferences
Mapping the French OpenData
OpenData Geoportal http://opendata.mapmint.com/public
Example generated web mobile application
Application for routing and profiling bicycle ways available from OpenStreetMap
Geo-platform as a ServicePaas4G Framework
Disaster Support
OSMF Japan
Experiment
ZOO on OpenStack ver. 2013.1 testing with 2 servers as below;
+
Summary
Prototype for Spatial Information Infrastructure as a
Service has been implemented.
Provides a interoperable and scalable Cloud-GIS
solution
Further test and benchmarking is planned to test
system performance and stability
Welcome to Pass4G
http://zoo-project.org
http://mapmint.com
Let’s make that happen!!!!
Jeju 2015