Étude comparative de serveurs open source conformes WPS : GeoServer, ZooWPS, Deegree et 52 North

54
Étude comparative de serveurs open source conformes WPS : GeoServer, ZooWPS, Deegree et 52 North Kaboro SAMASSE Encadré par: -Dr. Tierry Badard -Dr. Frédéric Hubert GMT6006 – Automne 2012

description

Étude comparative de serveurs open source conformes WPS : GeoServer, ZooWPS, Deegree et 52 North. Kaboro SAMASSE Encadré par: -Dr. Tierry Badard -Dr. Frédéric Hubert GMT6006 – Automne 2012. Plan de l’exposé. Introduction Objectifs Serveur WPS Description des serveurs - PowerPoint PPT Presentation

Transcript of Étude comparative de serveurs open source conformes WPS : GeoServer, ZooWPS, Deegree et 52 North

Page 1: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

Étude comparative de serveurs open source conformes WPS :

GeoServer, ZooWPS, Deegree et 52 North

Kaboro SAMASSE

Encadré par:-Dr. Tierry Badard-Dr. Frédéric Hubert

GMT6006 – Automne 2012

Page 2: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

2

Plan de l’exposé

• Introduction• Objectifs• Serveur WPS• Description des serveurs• Critères de comparaison• Réalisation des tests• Tableau de synthèse• Conclusion

Page 3: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

3

Introduction

Architecture type d’un service Web OGC. Source=http://geoconnexions.rncan.gc.ca/1022

OGC=Open Geospatial Consertium

- 483 membres (OGC,2012)

- Interopérabilité des SIG

- Spécifications des interfaces de services Web interopérables OWS (OGC Web Services)

Page 4: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

4

Introduction

• Exemples de OGC Web Services– WMS: Web Map Service– WFS: Web Feature Service– WCS: Web Coverage Service– WPS: Web Processing Service

Page 5: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

5

Objectifs

• Décrire les caractéristiques des serveurs GeoServer, Deegree, 52 North et ZooWPS

• Vérifier la conformité des serveurs pré-cités à la spécification OGC WPS

• Établir une grille des forces et des faiblesses dans l’utilisation du service WPS à partir de ces serveurs

Page 6: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

6

Serveur WPS

• Rôle:– Distributeur des fonctionnalités de traitements

géospatiaux (Process)– Exemples de Process: Calcul de distance, Fonction

d’interpolation IDW, Buffer, Contour…– Possède 3 opérations• GetCapabilities• DescribeProcess• Execute

Page 7: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

7

Serveur WPS

• Échange entre Serveur et Client WPS:

http://www.rencontres-sig-la-lettre.fr/wp-content/uploads/2012/01/R2012-WPS-Cauchy.pdf

Page 8: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

8

Description des serveurs

• GeoServer: – Certifié conforme OGC– Implémente les services WMS, WFS, WCS et WPS

comme une extension– Développé en Java avec GeoTools

Page 9: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

9

Description des serveurs

• Deegree:– Plateforme de service web développée en Java– JTS Topology Suite pour le WPS– Implémente WMS, WFS…

www.deegree.org

Page 10: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

10

Description des serveurs

• 52 North:– Basé sur une plateforme Java– Possède une communauté 52 North Geoprocessing– Plug-in WPS pour uDig et JUMP– JTS Topology Suite pour les Process

Page 11: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

11

Description des serveurs

• ZooWPS:– Projet orienté uniquement vers WPS– Composé de 3 parties:

http://zoo-project.org/

Page 12: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

12

Critères de comparaison• Récupération et installation des serveurs • Disponibilité de documentation et de support • Type de licence • Maturité du serveur WPS• Systèmes d’exploitation supportés • Test de conformité au standard WPS • Support de plusieurs langages de programmation • Traitement asynchrone • Complexité de déploiement des traitements spatiaux • Intégration dans des applications SIG

Page 13: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

13

Réalisation des tests

• Ordinateur utilisé:– Processeur Dual Core– Windows 7– RAM= 3Go– Disque dur = 500 Go

• Données géographiques– Linéaire: route.gml– Ponctuelle: village.gml– Surfacique: parcelle.gml

Page 15: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

15

Page 16: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

16

Réalisation des tests

• Récupération et installation des serveursDeegree:• http://www.deegree.org/Download• Pas de prérequis

Page 17: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

17

Page 18: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

18

Réalisation des tests

• Récupération et installation des serveurs52 North WPS: • http://52north.org/downloads/geoprocessing/wps• Prérequis: JAVA6 ou plus récent

Page 19: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

19

Page 20: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

20

Réalisation des tests

• Récupération et installation des serveursZooWPS:• http://zoo-project.org/site/Downloads• Prérequis: Autoconf, cgic, cURL, FastCGI, Flex et Bison,

libxml2, OpenSSL, Python.• Installé à partir de OsGeo Live DVD5.5

Page 21: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

21

Réalisation des tests

• Test de conformité au standard WPS – Exigences selon le document OGC 05-007r7• http://portal.opengeospatial.org/files/?

artifact_id=24151

Page 22: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

22

Réalisation des tests

• Test de conformité au standard WPS GeoServer:

• GetCapabilities– Requête: http://

localhost:8083/geoserver/ows?service=wps&version=1.0.0&request=GetCapabilities

– Réponse du serveur:

Page 23: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

23

Page 24: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

24

Réalisation des tests

• Test de conformité au standard WPS GeoServer:

• DescribeProcess– Requête: http://

localhost:8083/geoserver/ows?service=WPS&version=1.0.0&request=DescribeProcess&Identifier=JTS:buffer

– Réponse du serveur:

Page 25: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

25

Page 26: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

26

Réalisation des tests

• Test de conformité au standard WPS GeoServer:

• Execute– Requête et Réponse

Page 27: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

27

Page 28: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

28

<?xml version="1.0" encoding="UTF-8"?><wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"> <ows:Identifier>JTS:buffer</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>geom</ows:Identifier> <wps:Data> <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1"><![CDATA[LINESTRING(-139.0542539399907 59.99968406467396, - 139.0954933825154 60.02169517499379, -139.1406646325113 60.05079987316714, -139.178418355588 60.07506760268618, -139.1990047524417 60.08827870457464)]]></wps:ComplexData> </wps:Data> </wps:Input> <wps:Input> <ows:Identifier>distance</ows:Identifier> <wps:Data> <wps:LiteralData>0.1</wps:LiteralData> </wps:Data> </wps:Input> <wps:Input> <ows:Identifier>capStyle</ows:Identifier> <wps:Data> <wps:LiteralData>Round</wps:LiteralData> </wps:Data> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm></wps:Execute>

Page 29: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

29

Page 30: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

30

Réalisation des tests

• Test de conformité au standard WPS Deegree:

• GetCapabilities– Requête: http://

localhost:8082/services?service=wps&version=1.0.0&request=GetCapabilities

– Réponse du serveur:

Page 31: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

31

Page 32: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

32

Réalisation des tests

• Test de conformité au standard WPS Deegree:

• DescribeProcess– Requête: http

://localhost:8082/services?service=wps&version=1.0.0&request=DescribeProcess&Identifier=Buffer

– Réponse du serveur:

Page 33: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

33

Page 34: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

34

Réalisation des tests

• Test de conformité au standard WPS Deegree:

• Execute– Requête et Réponse

Page 35: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

35

Page 36: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

36

<wps:Execute xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ows="http://www.opengis.net/ows/1.1" service="WPS" version="1.0.0" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsExecute_request.xsd"> <ows:Identifier>Buffer</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>GMLInput</ows:Identifier> <wps:Reference xlink:href="http://192.168.1.161:8084/geoserver/ipr/wfs?service=WFS&amp;version=1.1.0&amp;request=GetFeature&amp;TypeName=ipr:routes&amp;Format=GML"/> </wps:Input> <wps:Input> <ows:Identifier>BufferDistance</ows:Identifier> <wps:Data> <wps:LiteralData uom="unity" dataType="double">0.1</wps:LiteralData> </wps:Data> </wps:Input> </wps:DataInputs></wps:Execute>

Page 37: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

37

<gml:Polygon srsName="urn:x-ogc:def:crs:EPSG:4326"> <gml:exterior> <gml:LinearRing srsName="urn:x-ogc:def:crs:EPSG:4326"> <gml:posList>60.107982 -139.044783 60.134862 -139.086502 60.134920 -139.086593 60.159188 -139.124347 60.159228 -139.124409 60.172439 -139.144996 60.181359 -139.162452 60.186701 -139.181314 60.188262 -139.200855 60.185980 -139.220325 60.179943 -139.238976 60.170384 -139.256091 60.157669 -139.271012 60.142288 -139.283165 60.124831 -139.292085 60.105970 -139.297427 60.086429 -139.298988 60.066958 -139.296706 60.048308 -139.290669 60.031193 -139.281110 60.016272 -139.268395 60.004118 -139.253014 59.990943 -139.232484 59.937607 -139.149615 59.933475 -139.142580 59.911464 -139.101341 59.903973 -139.083225 59.900160 -139.063996 59.900171 -139.044392 59.904007 -139.025168 59.911520 -139.007061 59.922421 -138.990768 59.936291 -138.976915 59.952597 -138.966034 59.970713 -138.958542 59.989942 -138.954730 60.009546 -138.954741 60.028770 -138.958577 60.046877 -138.966090 60.063170 -138.976991 60.077023 -138.990861 60.087904 -139.007167 60.107982 -139.044783 </gml:posList> </gml:LinearRing> </gml:exterior></gml:Polygon>

Page 38: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

38

Réalisation des tests

• Test de conformité au standard WPS 52North WPS:

• GetCapabilities– Requête: http://

localhost:8080/wps/WebProcessingService?Request=GetCapabilities&Service=WPS

– Réponse du serveur:

Page 39: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

39

Page 41: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

41

Page 42: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

42

Réalisation des tests

• Test de conformité au standard WPS 52North WPS:

• Execute– Requête et Réponse du serveur:

Page 43: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

43

Page 44: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

44

Réalisation des tests

• Test de conformité au standard WPS ZooWPS:

• Getcapabilities:– Requête: http://localhost/zoo

/?Request=GetCapabilities&service=WPS&version=1.0.0

– Réponse du serveur:

Page 46: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

46

Tableau de synthèseCritères GeoServer Deegree 52° North Zoo WPS

Récupération et installation des serveurs

-Téléchargement disponible sur Internet-Possède un installateur -Facile à installer- Interface d’administration web avancée et en français

- Téléchargement disponible sur Internet- Installation très simple-Possède une interface web avancée

- Téléchargement disponible sur Internet- Installation simple-Possède une interface web pour la configuration moins avancée

- Installation très simple-Installation très complexe mais disponible en démos sur DVD.

Disponibilité de documentation et de support

-Documentation très disponible et communauté d’utilisateurs et développeurs dynamiques

-Documentation très disponible et communauté d’utilisateurs et développeurs dynamiques

-Documentation très disponible et communauté d’utilisateurs et développeurs dynamiques

-Documentation très disponible et communauté d’utilisateurs et développeurs dynamiques

Page 47: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

47

Tableau de synthèseCritères GeoServer Deegree 52° North Zoo WPS

Type de licence  -GNU GPL 2 -GNU LGPL -GNU GPL 2 - licence de type MIT/X-

11

Maturité du

serveur WPS

- WPS en 2008 - WPS en 2004 -WPS en 2008. -ZooWPS créé en 2008

Systèmes

d’exploitation

supportés 

-Windows,

MacOS X,

Linux

-Windows, MacOS X,

Linux, Solaris

-Windows, linux,

MacOS X

-Linux, Windows,

MacOS X, Unix

Test de conformité au

standard WPS 

Conforme Conforme Conforme Conforme

Support de plusieurs

langages de

programmation 

-Moins riche :

JAVA (JTS,

Geotools),

XML

-Moins riche : JAVA,

XML

-Moins riche : JAVA

(JTS, Geotools,

xmlBeans, servlet API,

derby), XML

-Très riche: C/C++,

Fortran, JAVA, Python,

PHP, Perl, JavaScript

Page 48: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

48

Tableau de synthèseCritères GeoServer Deegree 52° North Zoo WPS

Traitement

asynchrone 

Supporte les modes

synchrone et

asynchrone

Supporte les modes

synchrone et

asynchrone

Supporte les modes

synchrone et

asynchrone

Supporte les modes

synchrone et

asynchrone

Complexité de

déploiement

des traitements

spatiaux 

-Outil WPS Request

Builder pour créer et

tester des Process.

-Process personnalisé

nécessite une base de

connaissance en

programmation JAVA

et XML.

-Workspace avec des

traitements WPS déjà

définis

- Nécessite la

programmation JAVA

et des connaissances

en XML.

-Kit de développement

de Process composé

d’un projet Eclipse

(52North WPS SDK).

-Espace de test pour

Process

 

-Un service peut se

programmer en Python,

PHP, JAVA ou

JavaScript.

-Il faut créer un

fichier .zcfg pour les

codes programmés.

 

Intégration

dans des

applications

SIG 

RAS RAS Plug-in pour les

clients uDig et JUMP

ZooWPS peut être

intégré dans le SIG

Grass

Page 49: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

49

Conclusion

1) Les quatre plateformes GeoServer, Deegree, 52°North et ZOOWPS ont l’avantage d’être distribuées sous licence open source et facilement téléchargeables sur Internet

Page 50: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

50

Conclusion

2) Les tests des opérations GetCapabilities, DescribeProcess et Execute ont montré que les serveurs sont conformes à la spécification WPS

Page 51: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

51

Conclusion

3) Le deploiement d’un Process ou encore fonction de traitement est plus facile dans GeoServer et Deegree, complexe dans 52 North et très complexe dans ZooWPS

Page 52: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

52

Conclusion

4) Le serveur ZooWPS est plus intéressant pour les programmeurs, il offre plusieurs possibilités de langage de programmation (C/C++, JAVA, Python, Perl, PHP, JavaScript)

Page 53: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

53

Conclusion

5) 52 North est en avance dans le developpement de plug-in client WPS (uDig, JUMP, suivi de ZooWPS (GRASS)

Page 54: Étude comparative de serveurs open source conformes WPS :  GeoServer, ZooWPS, Deegree et 52  North

54

MERCI