Räumliche Anfragen - Universität Hamburg

Werbung
Räumliche Anfragen
GIS-Seminar WS04/05
Marius Zirngibl
FBI, Universität Hamburg
Übersicht
1.
2.
3.
4.
5.
Motivation
Konzepte von Anfragesprachen
Grundlagen der Datenauswertung
Anfrageoptimierung
Praktisches Beispiel
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
2
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.
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
3
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?
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
4
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
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
5
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
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
6
Unterscheidung von
Anfragesprachen
• Nach Art der Interaktion:
- Graphische Anfragesprachen
- Dialogsysteme
- Formale Anfragesprachen
- Natürliche Anfragesprachen
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
7
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
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
8
Unterscheidung von
Anfragesprachen
• Nach der Art der Daten:
- Graph-Anfragesprachen
- Räumliche Anfragesprachen (Spatial
Query Language, SpQL)
- Geographische Anfragesprachen
(Geographical Query Language, GQL)
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
9
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
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
10
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
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
11
Räumliche Anfrage mit GEOQL
Formulierung der Frage in GEOQL:
SELECT
FROM
WHERE
Räumliche Anfragen
CITY.Name
CITY, LAKE
LAKE.Name = ´Bodensee´ and
CITY.Population >= 5000 and
CITY within 200 km of LAKE.
Marius Zirngibl / FB Informatik
Uni Hamburg
12
Räumliche Operatoren von GEOQL
intersects
adjacent
joins
ends_at
contains
situated_at
within
closest
furthest
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
13
Grundlagen der Datenauswertung
Man unterscheidet grundsätzlich zwei
Methoden der Datenauswertung:
- Thematische Datenselektion
- Geometrische Datenselektion
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
14
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>
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
15
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>
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
16
Topologische Beziehungen
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
17
Unterarten geometrischer
Datenselektion
• „m nearest neighbour query“: Abfrage der
m nächsten Objekte zu einem vorgegebenen
Objekt
• Homöomorphismen: geometrische
Ähnlichkeit zwischen Objekten
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
18
Anfrageoptimierung
• Große Datenmengen => hoher
Rechenaufwand bei komplexen Anfragen
• Deshalb Unterteilung des Raumes mittels
eines räumlichen Index
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
19
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
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
20
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“)
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
21
Quadtree
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
22
Anfrage im Quadtree
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
23
Einfügen neuer Knoten
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
24
Octree
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
25
Beispiel für räumliche Indizierung
• Frage: Wie viele Windkraftwerke gibt es in
Hamburg, und wo liegen sie?
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
26
Beispiel für räumliche Indizierung
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
27
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
28
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
29
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
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
30
Literaturverzeichnis
•
•
•
•
•
•
Dirk Findeisen: Datenstruktur und Abfragesprachen für raumbezogene
Informationen, Kirchbaum Verlag, Bonn, 1990
Beng Chin Ooi: Efficient query processing in geographic information systems,
Springer Verlag, Berlin, 1990
Matthias Ziegler: Untersuchung geographischer Anfragesprachen auf der Basis
relationaler und objektrelationaler Datenbankmanagementsysteme, München,
2001
Nabil Adam, Aryya Gangopadhyay: Database Issues in Geographic
Information Systems, Kluwer, Boston,1997
Philippe Rigaux, Michel Scholl, Agnes Voisard: Spatial Databases with
Apllication to GIS, Morgan Kaufmann, 2002
Hanan Samet: Neighbor finding in images represented by Octrees, University
of Maryland, 1988
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
31
Diskussion
• Wie könnten graphische Anfragesprachen
aussehen und wie sinnvoll ist deren
Einsatz?
• Wie effizient können natürliche
Anfragesprachen sein?
Räumliche Anfragen
Marius Zirngibl / FB Informatik
Uni Hamburg
32
Herunterladen