Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Waldemar Egger Geändert vor über 8 Jahren
1
Geodaten prozessieren mit WPS (Web Processing Service) Matthias Lendholt 6. Januar 2010
2
Geodatenprozessierung
3
Warum auslagern? –Performanzgewinn -Hoher Ressourcenbedarf -Parallelisierbarkeit –Wiederverwendbarkeit –Komplexitätsreduktion –Übersichtlichere Architektur -Stärkere Kohäsion -Höhere Kapselung -Losere Kopplung
4
-Corba (†) -RPC -Web Services: SOAP -REST (direct HTTP) -Sprachspezifisch, z.B. Java RMI -WPS Remote
5
WPS -OGC Standard –Spezifiziert für HTTP –SOAP optional -GeoDaten (XML) direkt in Prozessaufruf Typsicherheit! (jenseits von int und String) -Synchroner Aufruf -Rückgabewerte –Entweder direkt in Antwort –Oder als separater Download (URL)
6
WPS - Operationen -GetCapabilities Liste verfügbarer Prozesse -Describe Process Liste Eingabe- und Rückgabeparameter -Execute Operation
7
Anwendungsfall 1: Eigenen Prozess auslagern Anwendungsfall 2: Fremden WPS integrieren
8
AAIS (I) + Projekt DEWS: Affected Area Identification Service (AAIS)
9
DEWS AAIS (II) GUIAWI-SimulationResource-Service AAIS
10
DEWS AAIS (III) GUIAWI-SimulationResource-Service AAIS
11
DEWS AAIS (IV) GUIAWI-SimulationResource-Service AAIS WPS Execute Process
12
DEWS AAIS (V) GUIAWI-SimulationResource-Service AAIS
13
DEWS AAIS (VI) GUIAWI-SimulationResource-Service AAIS +
14
DEWS AAIS (VII) GUIAWI-SimulationResource-Service AAIS
15
<wps:Execute service="WPS" version="1.0.0" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xlink="http://www.w3.org/1999/xlink"> AffectedAreaIdentificationProcess ISOCountryCode TH SimulationResultURL http://dews-services/resources/docs/foo.zip AAIS – wps:Execute (I)
16
EtaAttribute arrivaltim SshAttribute ssh_max MinSsh 0.5 AAIS – wps:Execute (II)
17
AffectedAreaIdentificationProcess NumberOfIdentifiedAffectedAreas 61 FeatureCollection UEsDBBQAC1ycDsAAA … = AAIS – wps:ExecuteResponse ~500.000 Bytes Base64 encodiertes und zuvor geziptes Shapefile
18
Diskussion Anwendungsfall AAIS + Service ausgelagert + Separation of Concerns + Präzisere Architektur (Nutzung von Standards) + Wiederverwendbarkeit + Erhöhte Flexibilität + Server Performance > Client Performance - Zweifelhaft: · Prozessor-Geschwindigkeit? · Parallelisierung? · RAM? - Up- und Downloadzeiten NONSENSE
19
Fazit Anwendungsfall AAIS (I) Sinnvolle Auslagerung / bessere Architektur Client unabhängig von GeoDaten Keine volle Nutzung der WPS Fähigkeiten (Shapefiles statt GML) Kein Performancegewinn Zu hoher Anteil von Up- und Download Nur geringer Gewinn bei Prozessierungszeit Alternative wäre leichter zu realisieren Kein Deegree WPS Server z.B. Java RMI oder XML RPC
20
Fazit Anwendungsfall AAIS (II) Warum auslagern? –Performanzgewinn -Hoher Ressourcenbedarf -Parallelisierbarkeit –Wiederverwendbarkeit –Komplexitätsreduktion –Übersichtlichere Architektur -Stärkere Kohäsion -Höhere Kapselung -Losere Kopplung ? ?
21
Anwendungsfall 1: Eigenen Prozess auslagern Anwendungsfall 2: Fremden WPS integrieren
22
DEWS AWI-Simulation (I) GUIAWI-Simulation als WPS Resource-Service AAIS Sensordaten
23
AWI-Simulation (I) GUIAWI-Simulation als WPS Sensordaten observations 2007-12-12T01:12:00+02 <swe:CompositePhenomenon gml:id="comp_123" dimension="1"> DLR 104.095 -6.2522 <swe:TextBlock decimalSeparator="." blockSeparator="@@" tokenSeparator="," /> 2007-12-12T01:12:00+02,109.12,8,104.095 -6.25229@@ 2007-12-12T01:20:00+02
24
AWI-Simulation (III) GUIAWI-Simulation als WPS Sensordaten
25
Komplexitätsfalle <Execute xmlns="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:smf="http://www.awi.de/tsunami/smf/1.0" xmlns:om="http://www.opengis.net/om/0.0" xmlns:gml="http://www.opengis.net/gml" xmlns:swe="http://www.opengis.net/swe/0.0" service="WPS" version="1.0.0">
26
104.095 -6.2522
27
Java Code XML 1.XML-Schema Java Bibliothek (z.B. XMLBeans) Nicht möglich 2.Generische Objektbäume (Map-List-Schachtelung) Nicht typsicher und nicht praktikabel 3.Templates mit String Ersetzung Wie bitte? ExecuteProcess-XML kann nicht sinnvoll erzeugt werden
28
AWI-Simulation GUIAWI-Simulation als WPS Sensordaten Nicht sinnvoll realisierbar
29
WPS -GeoDaten (XML) direkt in Prozessaufruf Typsicherheit! (jenseits von int und String) Generik = Beliebigkeit (XML Schema zu mächtig für Java) Warum auslagern? -Komplexitätsreduktion Komplexität wird weitergereicht (schlechtes Schnittstellendesign)
30
Fazit Anwendungsfall AWI-Simulation Warum auslagern? –Performanzgewinn -Hoher Ressourcenbedarf -Parallelisierbarkeit –Wiederverwendbarkeit –Komplexitätsreduktion –Übersichtlichere Architektur -Stärkere Kohäsion -Höhere Kapselung -Losere Kopplung
31
WPS Fazit „Wann lohnt sich ein WPS?“ Einzelfallentscheidung
32
WPS Fazit -Performanzgewinn bei –Hoher Parallelisierung –Hohem Arbeitsspeicher-Bedarf –Abwägung gegenüber Transferzeiten -Typsicherheit nur bei –Nutzung von GML (statt Shapefiles) –in Java erzeugbarem XML (Schema Bibliothek) -Verbesserung der Architektur –Übersichtlichkeit, Verständlichkeit –Funktionale Trennung –Flexibilität und Wiederverwendbarkeit
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.