Schnittstelle zu relationalen Datenbanken ArcSDE: Architektur Proseminar: Geoinformation II Cornelia Lückenbach Bonn, Januar 2005 Motivation Heute: Geodatenerhaltung in Datenbanken eher die Ausnahme Zukunft: Geodatenerhaltung in Datenbanken wird Standard sein Unsere Chance: Wir können den Prozess mitverfolgen 31.01.2005 Cornelia Lückenbach 2 Motivation Gateway zu Geodatenbanken: ArcSDE 31.01.2005 Cornelia Lückenbach 3 Übersicht Datenbanken Datenbankverwaltungssysteme Oracle und Oracle Spatial ArcSDE Allgemein Architektur Datenspeicherung Räumliche Anfragen 31.01.2005 Cornelia Lückenbach 4 Datenbanken Datenbanken Relationale Datenbanken 31.01.2005 Objektrelationale Datenbanken Cornelia Lückenbach Objektorientierte Datenbanken 5 Relationale Datenbanken Basiert auf relationalem Datenmodell Daten werden auf die Struktur eines konkreten Datenbanksystems abgebildet Siehe Vorlesung Geoinformation I 31.01.2005 Cornelia Lückenbach 6 Relationales Datenmodell Relation Kunde Daten Attribute K.Nr Vorname Name Ort Primär- 815 Schlüssel 830 Peter Müller Bonn Hans Schmitz Bonn 1213 Maria Schütz Bonn Relation Attribute Auftrag A_Nr Primärschlüssel 1 Fremd2 schlüssel 3 31.01.2005 K_Nr werden in Tabellen abgespeichert und verwaltet Tabellen sind über Schlüssel miteinander verknüpft A_Datum 815 05.10.2000 830 10.10.2000 1230 11.10.2000 Cornelia Lückenbach 7 Objektorientierte Datenbanken Erst kommen die Daten, an denen sich die Datenstruktur dann orientiert Realwelt 31.01.2005 – Modell Cornelia Lückenbach – Programm 8 Objektrelationale Datenbanken Bindeglied zwischen klassischen relationalen Datenbanken und objektorientierte Datenbanken Datenbanken Relationale Datenbanken 31.01.2005 Objektrelationale Datenbanken Cornelia Lückenbach Objektorientierte Datenbanken 9 Objektrelationale Datenbanken Einsatz: Wenn Mengen und Objekte in Beziehung zu anderen Daten oder Objekten gebracht werden müssen Koordinaten miteinander verknüpfen oder referenzieren andere Daten 31.01.2005 Cornelia Lückenbach 10 Objektrelationale Datenbanken Beispiel zum Einsatz Mehrere Objektkoordinaten gehören zu einer Autobahn Koordinaten stehen in Relation mit dem Namen der Autobahn Koordinaten sind selbst Objekte, die zueinander in Relation stehen Quelle: Beko Technologies 31.01.2005 Cornelia Lückenbach 11 Datenbankverwaltungssystem (DBMS) Sammlung von Programmen Ermöglichen dauerhafte Speicherung der Daten in einer Datenbank Übernehmen die Verwaltung 31.01.2005 Cornelia Lückenbach 12 Datenverwaltungssystem Bereitstellung verschiedener Sichten auf die Daten Integritätssicherung Autorisationsprüfung Synchronisation Datensicherungsmöglichkeiten 31.01.2005 Cornelia Lückenbach 13 Datenbankverwaltungssystem Sammlung von Programmen Arbeitssprache SQL Structured 31.01.2005 Query Language Cornelia Lückenbach 14 Oracle Datenbankverwaltungssystem Objekt-relational Leistungsfähig Keine hohe Standardkonformität Läuft unter diversen Betriebsprogrammen Unix, 31.01.2005 Linux, Windows, IBM-Großrechner Cornelia Lückenbach 15 Oracle Spatial Erweiterung von Oracle Zur Speicherung, Zugriff und Analysen von Geodaten Geometrische Repräsentation der Form eines räumlichen Elements im Koordinatenraum 31.01.2005 Cornelia Lückenbach 16 ArcSDE Allgemein Schnittstelle zu relationalen Datenbanken Tool zum Speichern, Verwalten und Bearbeiten von Geodaten ArcSDE von ESRI für ArcGIS 31.01.2005 Cornelia Lückenbach 17 ArcSDE Allgemein Zentraler Baustein im GIS ArcGIS Desktop ArcView ArcEditor ArcInfo ArcSDE Gateway 31.01.2005 Relationale GeodatenCorneliabank Lückenbach ArcSDE 18 ArcSDE ArcSDE ist offen Arbeitet mit diversen Datenbanken (Infomix, IBM, DB2, Microsoft, Oracle) 31.01.2005 Cornelia Lückenbach 19 ArcSDE - Architektur Nach dem Ende des Kommunismus soll nun Moskau ein einheitliches städtisches Katasterinformationssystem bekommen. Zentrale Geodatenbank muss eingerichtet werden, so dass verschiedene Behörden auf die Daten zugreifen können 31.01.2005 Cornelia Lückenbach 20 ArcSDE - Architektur ArcSDE kann auf zwei verschiedene Arten als Gateway in die Datenbank verwendet werden 31.01.2005 Cornelia Lückenbach 21 ArcSDE - Architektur Two-tierArchitektur: Direkter Zugriff 31.01.2005 Three-tierArchitektur: ArcSDE als Applikationsserver Cornelia Lückenbach 22 Direkter Zugriff ArcGIS Desktop + Server Relationale Geodatenbank 31.01.2005 ArcGIS Desktop Anwendung hat dies bereits implementiert Lesender Zugriff auf Geodatenbank möglich Schreibender Zugriff nur mit Server Lizenz Hohe Netzlast Cornelia Lückenbach 23 ArcSDE - Architektur Two-tierArchitektur: Three-tierArchitektur: ArcSDE als Applikationsserver Direkter Zugriff Vorteil: Administration und Installation sind einfach 31.01.2005 Cornelia Lückenbach 24 ArcSDE als Applikationsserver ArcGIS Desktop ArcSDE Applikationsserver Relationale Geodatenbank 31.01.2005 Applikationsserver ist mit Datenbank installiert Konfigurations- und Tuningmöglichkeiten am Applikationsserver Versionen und lange Transaktionen Optimierte Netzlast Cornelia Lückenbach 25 Erinnerung Versionen und lange Transaktionen Teildatenbestände temporär entkoppeln Erhalt der Datenintegrität bei Bearbeitung Effiziente Arbeitsteilung 31.01.2005 Cornelia Lückenbach 26 ArcSDE als Applikationsserver ArcGIS Desktop ArcSDE Applikationsserver Cooperative processing: Verteilung der Anwendungen auf server und client Relationale Geodatenbank 31.01.2005 Cornelia Lückenbach 27 ArcSDE - Architektur Two-tierArchitektur: Direkter Zugriff z.B. auf eine Personal Geodatabase 31.01.2005 Three-tierArchitektur: ArcSDE als Applikationsserver z.B. Zugriff auf Oracle Cornelia Lückenbach 28 Übung (Three-tier-Architektur) Stellt euch vor, ihr werdet im Rahmen eines Universitätsaustausches nach Moskau geschickt. Dort bittet man euch ein ArcGISProjekt zu betreuen. Eure Aufgabe ist es Informationen über die Infrastruktur mit denen über die Eigentümer von Grundstücken und deren Lage zu kombinieren. Die Daten befinden sich in einem Datenbankverwaltungssystem. 31.01.2005 Cornelia Lückenbach 29 Übung (Three-tier-Architektur) Frage: Wie kann ich eine Verbindung zu dem Datenbankverwaltungssystem herstellen? In unserem Fall handelt es sich dabei um eine Verbindung zu Oracle. 31.01.2005 Cornelia Lückenbach 30 Übung (Three-tier-Architektur) Stellt nun selbst eine Verbindung zu Oracle her. Server: 131.220.71.184 Service: 5151 Database: freilassen User Name: seminar Passwort: gis3 31.01.2005 Cornelia Lückenbach 31 Räumliche Anfragen (Übersicht) Räumliche Objekte Query Model Spatial Indexing Quad-Tree-Indexing R-Tree-Indexing 31.01.2005 Cornelia Lückenbach 32 Räumliche Objekte Hoher Speicherplatzbedarf Komplexe Berechnungen Quelle: www.transa.de 31.01.2005 Cornelia Lückenbach 33 Räumliche Anfragen (Übersicht) Räumliche Objekte Query Model Spatial Indexing Quadtree R-tree 31.01.2005 Cornelia Lückenbach 34 Query Model Two-tier query model Beantwortet spatial queries und spatial joins Erster und Zweiter Filter (primary and secondary filter) 31.01.2005 Cornelia Lückenbach 35 Query Model Erster Filter (primary filter) Schnelle Auswahl Weitergabe Möglichst effektiv sein (spatial index) Vergleicht 31.01.2005 an den zweiten Filter geometrische Annährungen Verringert die Berechnungskomplexität lower-cost filter Cornelia Lückenbach 36 Query Model Große Datenmenge 31.01.2005 Erster Filter Cornelia Lückenbach Kleinere Auswahl 37 Query Model Zweiter Filter (secondary filter) Berechnung der Geometrie exakte Antwort Berechnung ist teuer Berechnung wird nur auf die Ergebnisse des ersten Filters angewendet Exakte 31.01.2005 Cornelia Lückenbach 38 Query Model Große Datenmenge 31.01.2005 Erster Filter Kleinere Auswahl Cornelia Lückenbach Zweiter Filter Exakte Ergebnis 39 Query Model Große Datenmenge Erster Filter Kleinere Auswahl Zweiter Filter Exaktes Ergebnis Schnelle und effektive Suche durch räumliche Selektion Implementierung des Ersten Filters: Spatial index 31.01.2005 Cornelia Lückenbach 40 Räumliche Anfragen (Übersicht) Räumliche Objekte Query Model Spatial Indexing Quadtree R-tree 31.01.2005 Cornelia Lückenbach 41 Spatial Indexing Limitiert eine Suche Ein räumlicher Index (spatial index) wird benötigt für Window queries Spatial join 31.01.2005 Cornelia Lückenbach 42 Spatial Indexing Window query Finde alle Straßen die durch die Weststadt führen Quelle: Institut für Landtechnik, Uni Bonn 31.01.2005 Cornelia Lückenbach 43 Spatial Indexing Spatial join Finde alle Festhallen, die mehr als 2000 Quadratmeter haben und die von der Universität innerhalb von 20 Minuten zu Fuß zu erreichen sind Quelle: Dänisches Kulturinstitut, Bonn 31.01.2005 Cornelia Lückenbach 44 Quad-Tree-Indexing Anbringung eines Gitters an eine feature class Indextabelle: In welchen Quadranten befindet sich welches feature 31.01.2005 Cornelia Lückenbach 45 R-Tree-Indexing y Außen MBR – minimum bounding rectangle kleinstes umschließende Viereck Quelle: Geoinformation III, Vorlesung 4: Punkt-in-Polygon-Verfahren von Prof.Plümer x 31.01.2005 Cornelia Lückenbach 46 Auswahl: R-Tree oder Quadtree R-Tree Weniger Speicherplatz Tuning ist einfacher No fine-tuning Keine großen Updates Index für vier Dimensionen 31.01.2005 Quadtree Mehr Speicherplatz Tuning ist schwieriger Fine-tuning Große Updates Index Cornelia Lückenbach nur für zwei Dimensionen 47 Zukunftsaussichten GIS Dateiformate beherrschten lange Jahre die Szene Shapefiles, Coverage.. Zur Zeit Einsatz von Datenbanksystemen im Geodaten-Umfeld eher die Ausnahme Größere GIS Installationen speichern Sachdatentabellen bereits in einem RDBMS und beginnen Geodaten dort einzufügen 31.01.2005 Cornelia Lückenbach 48 Zukunftsaussichten In Zukunft wird die Geodatenerhaltung in einer Datenbank Standard sein ArcSDE ist dafür notwendig ArcSDE stellt die Integration der Geodaten in das RDBMS und damit in die Unternehmens-IT sicher Aktuelle Version: ArcSDE 9 31.01.2005 Cornelia Lückenbach 49 Übung (Two-tier-Architektur) Nachdem ihr bei der ersten Übung eine Three-tier-Architektur verwendet habt, wollt ihr sicherlich auch ein Beispiel für die Two-tier-Architektur, weil nicht jedes Unternehmen z.B. mit Oracle arbeitet. 31.01.2005 Cornelia Lückenbach 50 Übung (Two-tier-Architektur) Bei einem Praktikum in einer kleinen Firma sollt ihr in eine Personal Geodatabase eine Deutschlandkarte importieren und für ein Schul-Projekt die ausgeschriebenen Namen durch Abkürzungen ersetzen (z.B. NRW) 31.01.2005 Cornelia Lückenbach 51 Übung (Two-tier-Architektur) 1. 2. 3. 4. Erstellt eine Personal Geodatabase: Importiert V:\Lueckenbach\Bundesländer.shp Seht es euch in ArcMap an und lasst euch die Namen der Bundesländer anzeigen (Label-Feature). Öffnet in Microsoft Access eure erstellte Geodatenbank und dann die Tabelle Deutschland_Bundesländer. Ändert z.B. NordrheinWestfalen in NRW um. Seht euch das Ergebnis in ArcMap an (Refresh-View). 31.01.2005 Cornelia Lückenbach 52 Quellen Understanding ArcSDE (GIS by ESRI) Oracle Spatial: User‘s Guide and Refernce Homepage von ESRI Germany arcaktuell von ESRI (Ausgabe 4/2004) Hompage von Oracle Nachschlagewerk: Wikipedia University of Arizona Geoinformation I und III Diskrete Mathematik 31.01.2005 Cornelia Lückenbach 53