320 likes | 436 Views
Räumliche Anfragen. GIS-Seminar WS04/05 Marius Zirngibl FBI, Universität Hamburg. Übersicht. Motivation Konzepte von Anfragesprachen Grundlagen der Datenauswertung Anfrageoptimierung Praktisches Beispiel. Motivation. These:
E N D
Räumliche Anfragen GIS-Seminar WS04/05 Marius Zirngibl FBI, Universität Hamburg
Übersicht • Motivation • Konzepte von Anfragesprachen • Grundlagen der Datenauswertung • Anfrageoptimierung • Praktisches Beispiel Marius Zirngibl / FB Informatik Uni Hamburg
Motivation • These: Der Wert eines Informationssystems wird auch und besonders daran gemessen, welche Fragen an das System gestellt werden können. => Ohne geeignete Abfragemöglichkeit sind gespeicherte Daten wertlos. Marius Zirngibl / FB Informatik Uni Hamburg
Grundsätzliche Fragen • Wie mächtig ist die benutzte Sprache? • Wie formuliere ich meinen Wunsch? • Für welche Benutzergruppen ist die Abfragemethode geeignet? • Wie effizient ist die Auswertung? Marius Zirngibl / FB Informatik Uni Hamburg
Anfragesprachen • Schnittstelle für den Benutzer, um Informationen aus einem System zu bekommen, ohne die interne Struktur der Datenbank genau zu kennen • sehr verschiedene Arten von Anfragesprachen • Zwei Hauptkriterien zur Beurteilung der Qualität einer Anfragesprache: Benutzerfreundlichkeit <-> Funktionsumfang Marius Zirngibl / FB Informatik Uni Hamburg
Konzepte von Anfragesprachen • Grundsätzliche Unterscheidung von Anfragesprachen: - nach Art der Interaktion zwischen Benutzer und System - nach Art der möglichen Operationen - nach Art der angefragten Daten Marius Zirngibl / FB Informatik Uni Hamburg
Unterscheidung von Anfragesprachen • Nach Art der Interaktion: - Graphische Anfragesprachen - Dialogsysteme - Formale Anfragesprachen - Natürliche Anfragesprachen Marius Zirngibl / FB Informatik Uni Hamburg
Unterscheidung von Anfragesprachen • Nach der Art der Operationen: - reine Abfragesprache - Data Manipulation Language (DML): auch Veränderung der Daten - Data Definition Language (DDL): auch Definition der Daten Marius Zirngibl / FB Informatik Uni Hamburg
Unterscheidung von Anfragesprachen • Nach der Art der Daten: - Graph-Anfragesprachen - Räumliche Anfragesprachen (Spatial Query Language, SpQL) - Geographische Anfragesprachen (Geographical Query Language, GQL) Marius Zirngibl / FB Informatik Uni Hamburg
GEOQL – Beispiel einer formalen geographischen Anfragesprache • GEOQL ist eine Erweiterung von SQL • Funktionalität und Syntax sehr ähnlich SQL • Zusätzlich spezielle räumliche Operatoren Marius Zirngibl / FB Informatik Uni Hamburg
Beispiel für eine räumliche Anfrage mit GEOQL • Fragestellung: „Finde alle Städte mit einer Einwohnerzahl über 5000 im Umkreis von 200 km um den Bodensee“ • Problem mit reinem SQL: keine Möglichkeit, Entfernungen zwischen Objekten abzufragen Marius Zirngibl / FB Informatik Uni Hamburg
Räumliche Anfrage mit GEOQL Formulierung der Frage in GEOQL: SELECT CITY.Name FROM CITY, LAKE WHERE LAKE.Name = ´Bodensee´ and CITY.Population >= 5000 and CITY within 200 km of LAKE. Marius Zirngibl / FB Informatik Uni Hamburg
Räumliche Operatoren von GEOQL Marius Zirngibl / FB Informatik Uni Hamburg
Grundlagen der Datenauswertung Man unterscheidet grundsätzlich zwei Methoden der Datenauswertung: • Thematische Datenselektion • Geometrische Datenselektion Marius Zirngibl / FB Informatik Uni Hamburg
Thematische Datenselektion • In den meisten Datenbanken zu finden, nicht nur in GIS • Selektion bestimmter Objekttypen mit bestimmten Attributen • Formale Struktur einer thematischen Selektionsanfrage: <Operand 1> <logischer Operator> <Operand 2> Marius Zirngibl / FB Informatik Uni Hamburg
Geometrische Datenselektion • Nur in raumbezogenen Informationssystemen zu finden • Selektion von geometrischen Objekten, die zu anderen geometrischen Figuren in einer bestimmten topologischen Beziehung stehen • Formale Struktur einer geometrischen Selektionsanfrage: <Operand 1> <geometrischer Operator> <Operand 2> Marius Zirngibl / FB Informatik Uni Hamburg
Topologische Beziehungen Marius Zirngibl / FB Informatik Uni Hamburg
Unterarten geometrischer Datenselektion • „m nearest neighbour query“: Abfrage der m nächsten Objekte zu einem vorgegebenen Objekt • Homöomorphismen: geometrische Ähnlichkeit zwischen Objekten Marius Zirngibl / FB Informatik Uni Hamburg
Anfrageoptimierung • Große Datenmengen => hoher Rechenaufwand bei komplexen Anfragen • Deshalb Unterteilung des Raumes mittels eines räumlichen Index Marius Zirngibl / FB Informatik Uni Hamburg
Quadtree • Algorithmus basiert auf der rekursiven Zerlegung einer Fläche in vier Teile • Entstandene Teilflächen werden durchnumeriert (indiziert) • Grad der Zerlegung abhängig von der Objektdichte Marius Zirngibl / FB Informatik Uni Hamburg
Quadtree • Erstellung des Quadtree auf Grundlage einer bestehenden Datenbasis • Position im DB-System zwischen Datenbasis und Anfragesystem • Fungiert als Zwischenspeicher („cache“) • Speicherung als Baumstruktur mit genau vier Blättern je Knoten (daher „Quadtree“) Marius Zirngibl / FB Informatik Uni Hamburg
Quadtree Marius Zirngibl / FB Informatik Uni Hamburg
Anfrage im Quadtree Marius Zirngibl / FB Informatik Uni Hamburg
Einfügen neuer Knoten Marius Zirngibl / FB Informatik Uni Hamburg
Octree Marius Zirngibl / FB Informatik Uni Hamburg
Beispiel für räumliche Indizierung • Frage: Wie viele Windkraftwerke gibt es in Hamburg, und wo liegen sie? Marius Zirngibl / FB Informatik Uni Hamburg
Beispiel für räumliche Indizierung Marius Zirngibl / FB Informatik Uni Hamburg
Darstellung der Auswertungsergebnisse • Verschiedene Möglichkeiten der Datenausgabe: - textuelle Darstellung (Listen, Tabellen) - graphische Darstellung (Diagramme) - kartographische Darstellung • Kombinationen häufig und nützlich => Übersicht vs. Detailgenauigkeit Marius Zirngibl / FB Informatik Uni Hamburg
Literaturverzeichnis • Dirk Findeisen: Datenstruktur und Abfragesprachen für raumbezogene Informationen, Kirchbaum Verlag, Bonn, 1990 [FIN90] • Beng Chin Ooi: Efficient query processing in geographic information systems, Springer Verlag, Berlin, 1990 [OOI90] • Matthias Ziegler: Untersuchung geographischer Anfragesprachen auf der Basis relationaler und objektrelationaler Datenbankmanagementsysteme, München, 2001 [ZIE01] • Nabil Adam, Aryya Gangopadhyay: Database Issues in Geographic Information Systems, Kluwer, Boston,1997 [ADA97] • Philippe Rigaux, Michel Scholl, Agnes Voisard: Spatial Databases with Apllication to GIS, Morgan Kaufmann, 2002 [RIG02] • Hanan Samet: Neighbor finding in images represented by Octrees, University of Maryland, 1988 [SAM88] Marius Zirngibl / FB Informatik Uni Hamburg
Diskussion • Wie könnten graphische Anfragesprachen aussehen und wie sinnvoll ist deren Einsatz? • Wie effizient können natürliche Anfragesprachen sein? Marius Zirngibl / FB Informatik Uni Hamburg