ArcIMS Architektur Susanne Kunze 28.01.2002 Gliederung • • • • • • • GIS im Internet Präsentationsbereich Aufgabe 1 Servicebereich Kommunikation Zusammenfassung Aufgabe 2 Susanne Kunze 28.01.2002 GIS im Internet - Wofür? • Kartendarstellung – Bevölkerungsverteilung – Nutzung • Suchen – Straßen – Sehenswürdigkeiten – Restaurants • Routenplaner Susanne Kunze 28.01.2002 GIS im Internet - Wie? • Nutzer fragt über das Internet nach Informationen • Anbieter bearbeitet die Anfrage und sendet die Information zurück zum Nutzer • Nutzer sieht sich die Informationen an Nutzer Susanne Kunze Anfrage Internet Info‘s Anbieter 28.01.2002 GIS im Internet - ArcIMS • ArcIMS bringt GIS ins Internet • Kartendienste erstellen • Webseiten erstellen, die mit Kartendiensten kommunizieren • Seiten verwalten Susanne Kunze 28.01.2002 Programmebenen I • ArcIMS besteht aus drei Ebenen: Präsentation Service Kommunikation durch ArcXML Daten Susanne Kunze 28.01.2002 Programmebenen II Präsentation Client Viewers Web Server ArcIMS Application Server Connectors Service ArcIMS Application Server ArcXML ArcIMS Spatial Server Daten Susanne Kunze Datenquellen 28.01.2002 Präsentationsbereich • Nutzer • 3 ArcIMS Viewers – HTML/DHTML Viewer, der ArcXML benutzt – HTML/DHTML Viewer, der ArcIMS ColdFusion oder ActiveX Connectors benutzt – Java Viewers • bearbeitet Daten auf dem Nutzerrechner • bestimmen die Funktionalität und die graphische Darstellung der Seite Susanne Kunze 28.01.2002 Viewers • Werden benutzt um – – – – – – – Kartengröße und -maßstab auszuwählen und zu zoomen Adressen ausfindig zu machen Text, Graphiken oder Bilder in die Karte einzufügen Legenden zu charakterisieren Karten zu überblicken Projekte zu speichern und wiederherzustellen Karten zu drucken Susanne Kunze 28.01.2002 HTML/DMTML Viewers I • benutzt HTML, DHTML und Java Script • es kann nur eine Karte gleichzeitig dargestellt werden • bei Klicken auf eine Karte oder ein Tool wird vom Viewer eine Anfrage erzeugt, die über den Servlet Connector an einen ArcIMS Spatial Server gesendet • die Antwort wird vom Nutzer auf Darstellungsinstruktionen untersucht Susanne Kunze 28.01.2002 HTML/DHTML Viewers II • ColdFusion und ActiveX Viewers sind ebenfalls HTML/DHTML Implementationen • im Gegensatz zum HTML Viewer werden alle Prozesse auf der Anbieterseite behandelt • Anfragen laufen über einen dritten beteiligten Application Server • Antwort ist eine HTML Seite, die schnell erzeugt wird • kleinerer Nutzer, da Anfragen nicht erzeugt und Antworten nicht analysiert werden müssen Susanne Kunze 28.01.2002 Java Viewer • unterstützt Image und Feature MapServices • MapServices werden mit lokalen Daten kombiniert und im gleichen Viewer angesehen • Daten werden zeitweilig auf dem Nutzerrechner gespeichert • Anfragen werden von dem Nutzerrechner behandelt, wenn alle Daten vorhanden sind • ansonsten wird die Anfrage vom Server bearbeitet • Zwischenspeicher wird beim Schließen des Viewers gelöscht Susanne Kunze 28.01.2002 Aufgabe 1 • www.ruhrtal.de • auf den Routenplaner • auf die Karte Hattingen/Dahlhausen – – – – – – Eisenbahnmuseum Bochum Dahlhausen Ruine Isenburg Wehr Hattingen Blankenstein Freizeitpark Heveney Witten • Gesamtstrecke Susanne Kunze 28.01.2002 Servicebereich • Anbieter/Betreiber • Komponenten – – – – Web Server Application Server Connectors Application Server Spatial Server • werden benutzt um – Anfragen zu bearbeiten – Kartendienste zu erstellen und zu betreiben – Seite zu verwalten Susanne Kunze 28.01.2002 Servicebereich II Servlet Connector Web Server ColdFusion Connector ArcIMS Application Server ArcIMS Spatial Server ActiveX Connector Susanne Kunze 28.01.2002 Web Server • kommuniziert mit einem der ArcIMS Application Server Connectors • muss fähig sein mit ColdFusion und Active Server Pages (ASP‘s) zu kommunizieren • muss mit einem Java Servlet engine kommunizieren können oder einen eigenen Java Servlet haben Susanne Kunze 28.01.2002 Application Server Connectors • werden benutzt um den Web Server und den ArcIMS Application Server zu verbinden • Application Server versteht nur XML • Web Server braucht die Antworten in der Ausgangssprache • ArcIMS hat drei Connectors: – Servlet – ColdFusion – ActiveX Susanne Kunze 28.01.2002 Application Server Connectors II ArcXML ColdFusion ASP Susanne Kunze Servlet Connector ColdFusion Connector ArcXML ActiveX Connector 28.01.2002 Application Server Connectors III • Servlet Connector – Standard Connector – Anfrage kommt in XML, wird an den Application Server weitergeleitet, Antwort wieder in XML • ColdFusion Connector/ActiveX Connector – übersetzten die eigene Sprache in XML und leiten an den Application Server weiter – Antwort wird wieder in die Ausgangssprache gewandelt Susanne Kunze 28.01.2002 Application Server • läuft als Hintergrundprozess • behandelt die Arbeitsverteilung der eintreffenden Antworten • wird als Katalog benutzt um zu verfolgen, welcher MapService von welchem Spatial Server bearbeitet wird • teilt ein, welcher MapService von welchem Spatial Server bearbeitet wird • leitet eine Anfrage an den passenden Spatial Server Susanne Kunze 28.01.2002 Spatial Server I • bearbeitet Anfragen nach Karten und verbundenen Informationen • beinhaltet verschiedene Komponenten • wird unterstützt von – Weblink: Kommunikationsspur zwischen Application Server und Spatial Server – XML Parser: analysiert Anfragen – Data Access Manager: stellt Links bereit zwischen Spatial Server und anderen Datenquellen Susanne Kunze 28.01.2002 Spatial Server II • führt Funktionen aus wie: Image Rendering (Bildübertragung) Feature Streaming Weblink Geocoding Image Feature Query (Abfrage) Query Data Extraction (Datenauszug) Geocode XML Parser – – – – – Extract Data Access Manager Susanne Kunze 28.01.2002 Image Rendering • erzeugt und sendet Karten zu den Web Browsern als JPEG, PNG oder GIF Bild Susanne Kunze 28.01.2002 Feature Streaming • sendet shapefiles und ArcSDE Datensätze in einem komprimierten Binärformat zum Nutzer • gibt an, wie die Daten zusammengebaut werden • bleibt nur so lange, wie das Java Applet geöffnet ist • lässt mehr funktionale Fähigkeiten beim Nutzer zu, wie Beschriften, das Aussehen einer Karte ändern und räumliches Auswählen Susanne Kunze 28.01.2002 Geocoding I • lokalisiert Adressen auf Karten • liefert Adresse, Durchschnitt, Stadt, Zustand und ortsgebundene Dienstleistungen, die auf Adressinformationen in den shapefiles und ArcSDE-Dateien basieren • Geocode Server liefert entweder eine exakte Übereinstimmung oder eine Liste der Übereinstimmungen mit den Nutzereingaben Susanne Kunze 28.01.2002 Geocoding II Susanne Kunze 28.01.2002 Query • liefert verbundene Daten für die räumlichen und tabellarischen Abfragen zurück • können gegen shapefiles, ArcSDE-Dateien und verbundene externe Tabellen aufgebaut werden Susanne Kunze 28.01.2002 Data Extraction • eine Anfrage wird zum Server geschickt, um Daten aus shapefiles und ArcSDE Daten zu ziehen • erbetene Daten werden zurück zum Nutzer geschickt • Unterschied zum Feature Streaming: die Daten werden zum Nutzer als gezippte shapefile geschickt Susanne Kunze 28.01.2002 Kommunikation - ArcXML I • Kommunikation mit den verschiedenen Komponenten • definiert den Inhalt von Kartendiensten • wird benutzt für alle Anfragen und Antworten zwischen Nutzer, middleware und Server • ArcXML Dateien erscheinen ähnlich wie HTML Seiten, aber – HTML beschreibt die Seitenstruktur für die Darstellung – ArcXML stellt die Struktur für die Beschreibung des Inhalts bereit Susanne Kunze 28.01.2002 Kommunikation - ArcXML II • Ein Nutzer macht eine Anfrage: – – – – läuft erst zum Web Server durch die Connectors und Application Server zu einem Spatial Server folgt dem gleichen Weg umgekehrt zurück • MapService configuration files – beschreiben wie eine Karte dargestellt werden soll – beinhalten eine Liste von Layern, die benutzt werden sollen und wie sie symbolisiert werden Susanne Kunze 28.01.2002 Kommunikation - ArcXML III • Requests (Anfragen) – setzen auf bestehende MapService configuration files einen Filter, der bestimmt welcher Teil einer Karte und damit verbundene Daten auf die Antwort wirken • Responses (Antworten) – senden die Informationen zurück zum Nutzer Susanne Kunze 28.01.2002 Zusammenfassung I • Webserver leitet eine Anfrage an die Application Server Connectors, wo die Anfrage in XML umgeschrieben und an den Application Server geschickt wird • teilt ein, welcher Spatial Server für welchen Teil der Anfrage zuständig ist und sendet ihn an den entsprechenden Spatial Server • Spatial Server bearbeitet seinen Anfragenteil • in umgekehrter Reihenfolge geht die Antwort zurück Susanne Kunze 28.01.2002 Zusammenfassung II Nutzer Internet Servlet Connector Web ColdFusion Connector Server ActiveX Connector ArcIMS Application Server ArcIMS Spatial Server(s) Susanne Kunze 28.01.2002 Aufgabe 2 • • • • • www.general-anzeiger-bonn.de Region: Stadtpläne/Bonn „Wo finde ich was?“ Karte Gesucht ist die Entfernung – – – – von IKG über Hauptbahnhof über Unihauptgebäude zum Stadthaus Susanne Kunze 28.01.2002