Thema3_Ausarbeitung_Turevsky

Werbung
“Modellierung von Geodaten”
Zeev Turevsky
Programmiermethodik und Multimediale Informationssysteme
Institut für Informatik, Universität Augsburg
[email protected]
Zusammenfassung. Geodatenbanken spielen eine wesentliche Rolle in der
Entwicklung von Geoinformationssystemen und Navigatoren. Die Daten, die
ein Navigator für den User erstellt, müssen interpretiert, in lesbarer und
sinnvoller Form dargestellt und optimal in einer Datenbank gespeichert werden.
Dafür werden zuerst geometrische Objekte wie Punkt, Linienzug, oder Polygon
in der Datenbank gespeichert. Danach wird eine Objektsammlung von diesen
Objekten gestellt, und diese wird in einem Schema abgebildet, um eine
vollständige geografische Karte zu erstellen.
1
Einführung
Geoinformationssysteme sind Informationssysteme, die mit den geografischen Daten
arbeiten. Mithilfe eines Geoinformationssystems werden geografische Daten
aufgerufen, bearbeitet, organisiert und dargestellt. Aber zuerst müssen sie in einer
bestimmten Form in einer Datenbank, die Geodatenbank heißt, gespeichert werden.
Die Datenbank muss so organisiert werden, dass solche geografischen Objekte wie
Dörfer, Städte, Kreise, Länder, Berge, Seen usw. einerseits möglichst vollständig
erfasst und möglichst wenig Platz im Speicher verbrauchen, und andererseits schnell
und präzise von einer Hardware aufgerufen werden können.
Geodaten müssen geometrische, topologische, thematische und temporale
Eigenschaften erfüllen. Die geometrischen Eigenschaften beschreiben die Form eines
Objektes und seine Koordinaten im Raum. Die topologischen Eigenschaften
beschreiben Beziehungen von mehreren Objekten zueinander in einem Raum: ob sie
sich überlappen, ineinander oder aneinander liegen. Thematische Eigenschaften sind
die Sachattribute wie Ortsnamen, PLZ, Wochentag der Müllabfuhr,
Niederschlagsmenge, Einwohneranzahl usw. Mit Hilfe von
temporalen
Eigenschaften wird festgestellt, in welchen Zeitpunkten oder Zeiträumen die oben
beschriebenen Eigenschaften gültig sind.
Die thematischen Eigenschaften von Geodaten müssen in dem Raum geeignet
dargestellt werden. In den objektbasierten Datenmodellen spielen Geoobjekte als
Attribute die wichtigste Rolle. Andere Attribute werden der Geometrie der Objekte
zugeordnet. Wenn ein Dorf Attribute „Name“, „Einwohnerzahl“ und geometrisches
Attribut „Dorfgebiet“ hat, werden die Attribute „Name“ und „Einwohnerzahl“ dem
2
Zeev Turevsky
Attribut „Dorfgebiet“ zugeordnet. Ein Geoobjekt kann auch auf mehrere
geometrische Attribute aufgeteilt werden.
In räumlichen Datenmodellen spielt der Datenraum wichtige Rolle, weil die
Attribute zu bestimmten Punkten des Geoobjektes zugeordnet werden.
.
Abbildung 1. Die Geoobjekte mit ihren thematischen Attributen. [1]
Die Abbildung 1 veranschaulicht Beispiele von Geoobjekten mit ihren
geometrischen und anderen thematischen Attributen. Die geometrischen Objekte
können auf verschiedene Gebiete geteilt werden.
Auch können geometrischen Objekte auf verschiedene thematische Ebenen geteilt
werden. Jede Ebene stellt ein bestimmtes Teil von gesamtem Objekt. Z. B. können
Städte auf einer, Flusse auf zweiter und Landschaft auf dritter thematischer Ebene
aufgezeigt werden.
Abbildung 2. Aufteilung eines Geoobjektes auf mehreren thematischen Ebenen. [1]
In dieser Seminararbeit wird beschrieben, welche Datenbankoperationen eine
Geoinformationssystem braucht, und wie geografische Objekte in einer Geodatenbank
modelliert, gespeichert und aufgerufen werden können.
In Kapitel 2 wird ein Beispiel vorgestellt. In diesem Beispiel werden die
Anforderungen für einen Kindernavigator beschrieben. Bei der Modellierung des
Kindernavigators wird weiter erläutert, wie die Daten in einer Geodatenbank
organisiert, gespeichert und verwaltet werden sollen.
“Modellierung von Geodaten”
3
In Kapitel 3 werden die Datenbankoperationen (sowie PROJECTION, SELECT,
INSERT usw.) für ein Geoinformationssystem allgemein beschrieben, und die
Ergebnisse der Operationen dargestellt.
In Kapitel 4 werden die einfachsten geografischen Objekte (wie Punkt, Linie usw.)
beschrieben, und danach wird gezeigt, in welchen Formen diese Objekte in einer
Datenbank gespeichert werden können, und wie sie von einer Geodatenbank
aufgerufen und auf einer Karte abgebildet werden können.
2
Beispiel
Für Kinder, die in europäischen Ländern reisen, muss einen Kindernavigator
modelliert werden. Dieser Navigator muss einem Kind nicht nur die Information
liefern, wo er gerade in geografischem Sinne ist. Der Navigator muss auch dem Kind
zeigen, welche Sehenswürdigkeiten er in der Nähe anschauen könnte. Außerdem
müssen Bilder dieser Sehenswürdigkeiten im Navigator gespeichert werden, und das
Kind kann bei Wunsch eigene digitale Fotos von bestimmten Objekten dazu einfügen.
Dafür muss aus mehreren geografischen Karten von Europa (topologische,
politische, geologische und anderen) und mehreren verschiedenen Bilder eine
Kinderkarte erstellt werden. Auf dieser Karte müssen die Länder durch ihre Grenzen
gezeichnet werden. Außerdem müssen die Kinder die wichtigsten größten Städte
zusammen mit ihren Sehenswürdigkeiten (z. B. Perlachturm in Augsburg, Eiffelturm
in Paris usw.) finden können. Darüber hinaus müssen die Sehenswürdigkeiten (z. B.
Neuschwanstein in Deutschland, Big Ben in England usw.) und der Hauptprodukt (z.
B. Auto in Deutschland, Uhr in Schweiz usw.) des Landes auf der Karte gefunden
werden können.
Danach kann die Kinderkarte in der Datenbank eines Navigators gespeichert
werden.
3
Hauptbegriffe und Operationen in räumlichen Datenbanken
In einer Geodatenbank wird Beschreibung von komplexen (geologischen,
politischen, historischen usw.) Karten gespeichert. Diese Karten können nicht direkt
in einer Datenbank gespeichert werden. Deswegen werden sie auf verschiedene
Objekte geteilt, die in einer speziellen räumlichen Datenbank gespeichert werden
können.
Die Hauptobjekte von räumlicher Datenbank sind die Theme, Karte und
Geografisches Objekt:
4
Zeev Turevsky



Die Theme ist eine Sammlung von geografischen Objekten. Die Theme
besteht aus dem Schema und Instanzen. Die Flüsse, Städte und Länder mit
ihren Projektionen, Bezeichnungen und Beschriftungen auf einer Karte
sind Beispiele von Themes. Z. B. gibt es ein geografisches Objekt bzw.
eine Theme Fluss. Lech ist eine konkrete Instanz des geografischen
Objekts Fluss für eine Karte von Bayern.
Die Abbildung der Themes auf dem Papier oder Bildschirm heißt eine
Karte. Die Karten enthalten Themes, Farben, Maßstäbe und Legenden.
Eine Karte ist immer zweckorientiert, z. B. topologische Karte, politische
Karte, Wetterkarte, usw.
Das Geografische Objekt stellt Objekte der realen Welt auf eine Karte dar,
und hat zwei Komponenten: Die Menge der Beschreibungsattributen und
eine räumliche Komponente. Mithilfe der Beschreibungsattribute kann
eindeutig festgestellt werden, welcher Staat, Stadt oder Dorf aus realer
Welt abgebildet werden muss. Die Menge der Beschreibungsattribute
kann z. B. die Name und die Bevölkerungsanzahl des Staates, oder der
Name und die Hauptsehenswürdigkeit der Stadt (für die Kinderkarte)
enthalten. Die räumliche Komponente drückt die Geometrie und
Topologie des Objektes aus. Die isolierte räumliche Komponente eines
geografischen Objekts heißt räumliches Objekt. [2] Ein Beispiel des
räumlichen Objektes ist die Grenze zwischen zwei Ländern.
Ein Geografisches Objekt kann atomar oder komplex sein. Wenn das
Geografische Objekt mithilfe von weiteren geografischen Objekten nicht beschrieben
werden kann, heißt es atomares geografisches Objekt. Wenn das geografische Objekt
weitere geografische Objekte enthält, heißt es komplexes geografisches Objekt. Z. B.
das komplexe geografische Objekt „Staat Deutschland“ enthält atomare geografische
Objekte „Dörfer von Deutschland“.
Theme und geografisches Objekt können wie folgt rekursiv definiert werden [2]:
 Theme = { Geografisches Objekt }
 Geografisches Objekt =
(Beschreibung, räumliches Teil) // atomare Objekte
| (Beschreibung, { Geografisches Objekt }) // komplexe Objekte
Um die Daten in einer räumlichen Datenbank verwalten zu können, werden
verschiedene Operationen von räumlicher Datenbank gebraucht, die den normalen
Datenbank-Operationen entsprechen. Eine Operation von räumlicher Datenbank
bekommt mehrere Themes und gibt ein Theme als Antwort.
Im Allgemeinen können die Karten mit Hilfe von folgenden zwei Themes
beschrieben werden:
1. Länder.
Attributen:
Name,
Hauptstadt,
Bevölkerungsanzahl.
Geometrisches Attribut: Geo:Region.
2. Sprache. Attributen: Sprache (Die Sprache oder Sprachfamilie, die die
meisten Einwohner in der Region sprechen). Geometrisches Attribut:
Geo:Region.
“Modellierung von Geodaten”
5
Mit Hilfe von diesen zwei Themes wird erläutert, wie die obengenannten
Datenbankenoperationen in der räumlichen Datenbank verwaltet werden.
In den räumlichen Datenbanken werden die Operationen PROJECTION, SELECT,
JOIN und UNION gebraucht.
Die PROJECTION kann wie folgt beschrieben werden:
 : theme  [ A1 ,, An ]  theme
Hier sind [ A1 ,  , An ] Attribute, die die Theme beschreiben. Das Ergebnis der
Operation PROJECTION ist eine Theme, wobei die Attributmenge der neuen Theme
aus der Attributmenge der alten Themes besteht, und das räumliche Attribut Geo wird
unverändert. Dieser Operation entspricht die Projektion aus Relationalen Algebra:
 A1 ,, An ,Geo (T ), wobei Geo das räumliche Teil, und T das Instanz der alten Theme
sind.
Abbildung 3. Die Projektion: ein Theme mit Attributen Länder, Bevölkerungsanzahl und
Geo wird ins Theme mit Attributen Bevölkerungsanzahl und Geo projiziert. [2]
Eine weitere Operation von räumlichen Datenbanken ist SELECT (die Abfrage
von Themes). Sie kann wie folgt beschrieben werden:
 : theme  p A  theme
p A das Attribut ist, auf dem die Abfrage  durchgeführt wird. Die folgende
i
wobei
i
Abfrage kann auf räumlicher Datenbank so ablaufen: Auf der Karte von Europa
6
Zeev Turevsky
müssen die Länder ausgewählt werden, die mehr als 50 Millionen Einwohner haben.
Das Ergebnis dieser Abfrage kann in der Abbildung 4 gesehen werden.
Oft wird die Operation UNION für die Vereinigung oder Zusammenfügung von
zwei Themes gebraucht. Diese Operation kann formal wie folgt beschrieben werden:
 : theme  theme  theme
Mit dieser Operation können zwei geografischen Objekten, die gleiches Schema
haben, vereinigt werden. Wenn T1 und T2 zwei Themes sind, wird ihre Vereinigung
als T1 T2 bezeichnet. Das Beispiel aus Abbildung 5 zeigt, wie zwei Themes
vereinigt werden können.
Abbildung 4. Abfrage von Ländern mit über 50 Millionen. [2]
Einwohnern in der Karte von Europa
Abbildung 5. Operation UNION – Vereinigung von zwei Themes. [2]
Im Laufen der Erzeugung einer neuen Karte wird manchmal die Operation
Überlagerung () gebraucht. Formal wird diese Operation wie folgt beschrieben:
“Modellierung von Geodaten”
7
 : theme  theme  theme
Diese Operation erlaubt zwei Karten, die gleiches Schema und verschiedenen Themes
haben, aufeinander überlagern, und dadurch wird ein neues Theme generiert.
In der Abbildung 6 wird gezeigt, wie von Themes T1 und T2 eine neue Theme T
generiert wird. Die Theme T1 beschreibt die politische Karte von Europa, und die
Theme T2 beschreibt die Geografie von germanischen Sprachen (germanischer
Sprachraum) in Europa. Die generierte Theme T beschreibt, in welchen europäischen
Ländern germanischen Sprachen verbreitet sind.
Abbildung 6. Überlagerung von zwei Themes. [2]
In Geoinformatik kommt oft die Situation vor, wenn nur ein Teil der Karte genau
angeschaut werden muss. Dafür ist eine geometrische Abfrage nötig. Die
geometrische Abfrage besteht aus Windowing, Punktabfrage und Clipping:
 Windowing: Mit dieser Operation wird ein Teil der Karte angewählt, und
dann wird eine neue Karte erstellt, die alle Themes (und nicht ihre
ausgewählte Teile) aus ausgewähltem Gebiet beinhaltet. In der Abbildung 7
wird das Ergebnis von Windowing gezeigt. Es werden nur Teile von
Großbritannien, Irland, Frankreich, Spanien und Portugal ausgewählt, und
8
Zeev Turevsky
als Ergebnis kommt eine vollständige Karte mit Themes von obengenannten
Ländern.
Abbildung 7. Ein Beispiel für Windowing. [2]


Punktabfrage: Diese Operation ist zu Windowing gleich, aber die neue
Theme beinhaltet alle Themen, die einen gegebenen Punkt in sich haben.
Clipping: Mit dieser Operation wird auch ein Teil der Karte angewählt, aber
dann wird eine Teilkarte erstellt, die nur die angewählten Teile des Themes
aus der alten Karte beinhaltet. In der Abbildung 8 wird ein Clipping gezeigt.
Abbildung 8. Ein Beispiel für Clipping. [2]
Wenn mehrere geografische Objekte in eine gemeinsame Karte zu einem
bestimmten Zweck zusammengefügt werden müssen, wird die Operation MERGE
verwendet. Der Zweck wird durch den Endnutzer bestimmt. Diese Operation kann
formal wie folgt beschrieben werden:
“Modellierung von Geodaten”
9
MERGE : theme  condition  theme
Diese Operation arbeitet nur mit einer Theme und überführt sie in eine andere Theme.
MERGE entspricht der Aggregation von Objekten. In der Abbildung 9 wird das
MERGE von zwei Karten gezeigt: Die Karten von Westdeutschland und
Ostdeutschland werden in eine Karte Deutschlands aggregiert.
Abbildung 9. Ein Beispiel von MERGE. [2]
Wenn eine Geodatenbank mit mehreren verschiedenen Karten angeboten wird,
kann von dieser Kartenmenge eine Karte für den Kindernavigator modelliert, erstellt
und danach in Datenbank weiter gespeichert werden. Zuerst müssen die
Länderkonturen und die Hauptstädte von der Datenbank, die eine politische Karte
enthält, abgefragt werden. Danach müssen die Bergenkonturen von einer
geologischen Karte abgefragt werden. Dann müssen die Daten über die
Bevölkerungsanzahl, Sprachen, Währungseinheiten usw. von einer administrativen
Karte abgefragt werden. Am Schluss können die Bilder von Sehenswürdigkeiten von
einer Sehenswürdigkeitskarte abgefragt werden, und die Bilder von Hauptprodukten
der Länder dazu hinzugefügt werden.
Danach können die Ergebnisthemes in eine neue Karte überlagert werden, und
diese neue Karte muss in eine Geodatenbank gespeichert werden. Jetzt kann die Karte
in einen Kindernavigator geladen und verwendet werden.
4
Modellierung und
Geodatenbanken
Darstellung
von
Information
in
In den Geodatenbanken müssen die Objekte in verschiedenen Dimensionen
gespeichert werden können. Die Objekte können Dimensionen 0D, 1D, 2D, 3D oder
4D haben:
 Nulldimensionale Objekte sind die Punkte auf der Karte. Mit den
Punkten werden die Objekte auf der Karte bezeichnet, wenn diese
Objekte klein oder auch wenn ihre Formen nicht wichtig sind.
Normalerweise sind das Städte, Kirchen, Spitzen der Bergen usw.
 Eindimensionale oder lineare Objekte sind die Linien auf der Karte. Mit
Linien werden Wege, Flüsse usw. dargestellt. Da diese Objekte nicht den
geraden Linien sondern den Kurven entsprechen, werden sie als
Linienzüge gezeichnet.
10
Zeev Turevsky
Abbildung 10. Die Beispiele von Linienzug. [2]



Die Beispiele von Linienzügen können auf Abbildung 10 angeschaut
werden. Ein Linienzug besteht aus mehreren Segmenten, die gerade
Linien sind. Jeder von diesen Segmenten hat den Startpunkt und
Endpunkt, und sowohl sein Startpunkt ist der Endpunkt eines
vorgehenden Segments (falls es nicht Startsegment ist), als auch sein
Endpunkt ist der Startpunkt eines weitergehenden Segments (falls es
nicht Endsegment ist). Die Startpunkt und Endpunkt von gesamtem
Linienzug heißen die Extrempunkte. Falls ein Linienzug in einem
gleichen Punkt startet und endet, heißt sie geschlossener Linienzug.
Zweidimensionale oder fachliche Objekte werden benutzt, um große
Gebiete (wie große Cities, Regionen, Länder usw.) auf die Karte
darzustellen. Hauptsächlich werden diese Objekte durch verschiedene
Polygonen dargestellt.
Dreidimensionale Objekte werden in solchen Datenbanken wie GoogleEarth oder 3D Navigatoren verwendet, um die bestimme Objekte
(Gebäude, Denkmale usw.) in eine Geodatenbank dreidimensional
speichern zu können.
Vierdimensionale Objekte werden verwendet, damit die Änderungen von
Gebäuden, Städte und Flüsse über die Zeit in Geodatenbank gespeichert
werden können.
Mit drei obergenannten Objekttypen können die primitiven Konturen auf einer
Karte gezeichnet werden. Um die Geoinformationsobjekte vollständig auf einem
Computer darzustellen, muss ein Euklidischer Raum auf Bildschirm abgebildet
werden können.
Das kann mit Hilfe von einem diskreten Modell gemacht werden. Die Oberfläche
des Bildschirms kann auf mehrere Zellen (Mosaik) zerlegt werden, und von diesen
Zellen werden die Geoinformationsobjekte zusammen gestellt. Die Zellen können
“Modellierung von Geodaten”
11
verschiedene Form und Größe haben. Wenn alle Zellen die gleiche Große haben
(N×M Zellen), so heißt das Modell reguläre Mosaik. Auf der Abbildung 11 können
Beispiele von quadratischen und hexagonalen regulären Zellen angeschaut werden.
Abbildung 11. Reguläre Mosaiken. [3]
Wenn die Zellen von Mosaik verschiedene Größe haben, wird das Modell als
irreguläre Mosaik bezeichnet.
Abbildung 12. Irreguläre Mosaiken. [3]
In der Praxis wird das reguläre Mosaik verwendet, wenn die Satellitenbilder (z.B.
Wetter- oder Verschmutzungskarte) auf eine Karte projiziert werden müssen. In
dieser Karte werden die verschiedengefärbten Punkte in geografischen Räumen
diskret angezeigt. Das irreguläre Mosaik wird verwendet, um die administrative und
politische Objekte (Kreise, Länder, Militärblöke usw.) darzustellen.
Außerdem können die räumlichen Objekte in 2D durch die kleinste endliche
Menge von Punkten, die dieses Objekt enthalten, dargestellt werden. In diesem Fall
muss ein Punkt als ein Pixel mit seinen Koordinaten auf der Karte betrachtet werden.
Die Koordinaten dieses Pixels können in verschiedenen Formen beschrieben werden.
Sie können durch ein Paar von natürlichen Zahlen, oder durch eine eindeutige ID
identifiziert werden, falls alle Pixel von Karte durchnummeriert werden. Dann können
die Linienzuge, Polygonen, oder Regionen mit Hilfe von einer endlichen Anzahl von
Pixel auf einer Karte abgebildet werden. Ein Beispiel von solcher Karte kann in
Abbildung 13 angeschaut werden. Der Polygon P enthält Punkte:
P = <5, 12, 13, 14,17, 18, 19, 20, 21, 22, 26, 27, 28, 29, 30, 31, 35, 36, 37, 38>
12
Zeev Turevsky
Abbildung 13. Pixel- oder Rasterdarstellung von Polygon P. [3]
Darüber hinaus können die Objekte von Geodatenbanken als eine Vektorenmenge
dargestellt und gespeichert werden. Hauptsächlich bestehen solche Objekte aus
Punkten (Anfang- und Endpunkt von Vektoren) und Kanten (eigentliche Vektoren).
In diesem Fall muss jeder Punkt als ein Paar von natürlichen Zahlen (seine
Koordinaten) gespeichert werden. Diese Paare werden zu einer komplexen
Datenstruktur wie verkettete Liste, Menge oder Feld, die einen komplexen
Geoinformationsobjekt darstellen, zusammengefasst. Wenn ein Polygon als eine
Vektorenmenge gespeichert wird, wird deutlich weniger Speicherplatz verbraucht.
Deswegen werden die Polygone, Linienzuge und Regionen in der Praxis als eine
Vektorenmenge dargestellt und verwaltet. Dann können diese Objekte wie folgt
definiert werden:
Ein Punkt ist ein Paar von realen Zahlen: point: [x: real, y: real]. [3]
Ein Linienzug wird als eine verkettete Liste von Punkten <p1, …, pn> gespeichert,
wobei jeder Punkt pi einer Ecke des Polygons entspricht, und jedes Paar (pi, pi+1) mit i
< n eine Kante des Linienzuges darstellt. linienzug: <point>. [3]
Ein Polygon wird genauso wie Linienzug als eine verkettete Liste von Punkten
gespeichert, aber die Kante (pn, p1) wird auch gespeichert, da ein Polygon auch ein
geschlossener Linienzug ist. polygon: <point>. [3] In einem Polygon mit n Ecken
können die Ecken verschieden miteinander verbunden werden (2∙n verschiedene
Möglichkeiten). Deswegen werden die Eckpunkte in der Liste im Uhrzeigersinn oder
gegen Uhrzeigersinn angeordnet.
Eine Region wird als eine Menge von Polygonen definiert. region: {polygon}. [3]
Auf der Abbildung 14 kann ein Polygon P, der in Vektordarstellung gespeichert
wird, angeschaut werden. Die Ecken dieses Polygons sind die Punkte:
P = < [4, 4], [6, 1], [3, 0], [0, 2], [2, 2] >
Abbildung 14. Vektordarstellung von Polygon P. [3]
“Modellierung von Geodaten”
13
Darüber hinaus gibt es auch Halbebene-Darstellung, die eine Alternative zu
Vektordarstellung ist. Die Halbebene-Darstellung wird in dieser Seminararbeit nicht
beschrieben.
Die geografischen Objekte werden selten (fast nie) allein auf einer Karte
abgebildet. Normalerweise enthält eine Karte mehrere Objekte (eine
Objektsammlung), die miteinander in der Beziehung stehen. Es gibt drei Modellen zur
Darstellung einer Objektsammlung: Spaghetti-Modell, Netzwerk-Modell und
topologisches Modell. In diesen drei Modellen werden die Beziehungen zwischen den
Objekten verschieden dargestellt.
In dem Spaghetti-Modell wird jedes Objekt in eine Objektsammlung eingefügt und
gespeichert, so dass die Topologie vom Objekt und seine topologischen Beziehungen
zu anderen Objekten nicht berücksichtigt werden. Dann entstehen die Redundanzen
bei der Speicherung von Spaghetti-Modell in einer Datenbank. Z. B. wenn zwei
Regionen, die eine gemeinsame Grenze haben, in einer Datenbank gespeichert
werden müssen, wird ihre gemeinsame Grenze zweimal gespeichert. Danach wird
diese Grenze bei der Kartenerstellung zwei Mal gezeichnet. Wenn zwei Linienzüge
sich schneiden, wird der Schnittpunkt in der Datenbank nicht gespeichert.
Das Spaghetti-Modell ist einfach. Außerdem werden alle Objekte in diesem
Modell unabhängig voneinander gespeichert, und die neuen Objekte können in
Spaghetti-Datenbank eingefügt werden. Andererseits wird es schwierig eine Karte
von einer Spaghetti-Datenbank zu erstellen, da ihre Objekte nicht ordentlich
gespeichert wurden. Auch ist es schwer festzustellen, ob ein Eintrag von Datenbank
redundant ist oder nicht. Z. B. wenn zwei Polygonen mit einer gemeinsamen Grenze
auf eine Karte gezeichnet werden müssen, wird diese gemeinsame Grenze doppelt
gezeichnet.
Das Netzwerk-Modell wurde ursprünglich entwickelt, um Daten von einer
netzbasierten Anwendung in einer Datenbank zu speichern. Z. B. funktionieren die
Netzwerk-Modelle in Strom- und Telefonleitungen. Dieses Modell bearbeitet die
Eckpunkte und die Linienzuge, die diese Eckpunkte miteinander verbinden. Die
Eckpunkte werden als die Knoten und die Linienzuge werden als die Kanten eines
Graphs betrachtet.
Abbildung 15. Ein Netz. [3]
14
Zeev Turevsky
In der Abbildung 15 kann Beispiel eines Netzes angeschaut werden. Der Punkt
(bzw. der Knoten) n1 ist mit anderen Punkten durch die Linienzuge (bzw. die Kanten)
a1, a2, a3 und a4 verbunden. Für die Linienzüge a1, a2, a3 und a4 ist der Knote n1 je
nach der Richtung ein Startpunkt oder ein Endpunkt.
Das Netzwerk-Modell wurde hauptsächlich entwickelt, um zu ermöglichen, den
Weg von einem Knoten zu einem anderen Knoten möglichst effizient zu finden.
Deswegen ist es gut in Navigatoren anwendbar, z. B. wenn der kürzeste Weg von
einem geografischen Punkt zu einem anderen gefunden werden muss.
In diesem Modell muss die Datenbank die allgemeinen Punkte von Eckpunkten
oder Knoten streng unterscheiden. Ein Knoten ist entweder ein Start- oder Endpunkt
eines Linienzuges, oder ein isoliertes Punkt auf der Karte. Die Punkte, die auf den
Linienzügen oder auf der Kante von Polygonen liegen, sind reguläre Punkte.
Außerdem kann ein Netzwerk planar oder nicht planar dargestellt werden. In
planaren Netzwerken werden Punkte, in denen sich die Kanten oder Linienzüge
schneiden, als Knoten definiert. In den nicht planaren Netzwerken können sich zwei
Linien schneiden, so dass kein Knoten daraus entsteht (Z. B. wenn ein Tunnel eine
Bergkette schneidet).
Das Netzwerkmodell verwendet folgende geometrische Objekte [3]:
 Punkt: [x: real, y: real]
 Knote: [Punkt, <Kante>]
 Kante: [Startpunkt, Endpunkt, <Punkt>]
 Polygon: <Punkt>
 Region: [Polygon]
Im Netzwerk-Modell werden alle Linien auf der Karte in die Datenbank
gespeichert. Deswegen kann das Netzwerk-Modell für die Suche von optimalen
Wegen auf einer Karte verwendet werden.
Im topologischen Modell werden planare Netzwerke verwendet. Das topologische
Modell verwendet folgende geometrische Objekte [3]:
 Punkt: [x: real, y: real]
 Knote: [Punkt, <Kante>]
 Kante: [Startpunkt, Endpunkt, linke Polygon, rechte Polygon, <Punkt>]
 Polygon: <Kante>
 Region: [Polygon]
Ein Knoten wird als ein Eckpunkt mit den Kanten, die diesen Punkt als Startpunkt
oder Endpunkt haben, in diesem Modell beschrieben. Wenn die Kantenmenge eines
Knoten leer ist, ist dieser Knoten ein isolierter Eckpunkt. Mit isolierten Eckpunkten
werden verschiedene Sehenswürdigkeiten (z.B. Perlachturm oder Martin-LutherPlatz) auf der Karte bezeichnet.
“Modellierung von Geodaten”
15
Das topologische Modell enthält weniger Redundanz als die anderen Modelle. Die
Polygone können in diesem Modell entweder als Polygone oder als Kantenmengen
gespeichert werden.
Abbildung 16. Zwei aneinander liegenden Polygonen in topologischem Modell. [3]
Z. B. müssen zwei aneinander liegenden Polygonen P1 und P2 aus der Abbildung
16 in einer räumlichen Datenbank als topologisches Modell gespeichert werden. Die
Polygonen können als Kantenmengen wie folgt in eine Datenbank gespeichert
werden: P1: <a, b, f> und P2: <c, d, e, f>. Die Kante f verbindet die Knoten N1 und
N2, und gehört zu beiden Polygonen P1 und P2. Dann kann diese Kante wie folgt
gespeichert werden: f: [N1, N2, P1, P2, <>]. Ein Knoten N1 wird mit den Koordinaten
des Eckpunktes und den Kanten, die in ihm starten oder enden, in der Geodatenbank
gespeichert: N1: [[3, 0], <a, f, e>].
Dann kann aus den gespeicherten Daten festgestellt werden, in welchen
Beziehungen die gespeicherten geometrischen Objekte zueinander stehen. Z. B. um
festzustellen, ob zwei Polygonen aneinander liegen, werden diese Polygonen von
Datenbank abgefragt, danach werden die Kanten festgestellt, und zum Schluss wird
überprüft, ob eine Kante zu zwei verschiedenen Polygonen gehört. Deswegen wird
auf der durch dieses Modell entstehenden Karte die Grenze zwischen zwei aneinander
liegenden Polygonen nur einmal gezeichnet.
5
Ausblick
Hinter jedem mobilen Navigationsgerät steht eine geografische Karte, auf der für
den Endnutzer einige Informationen dargestellt werden. Diese Karte wird in einer
Geodatenbank zuerst gespeichert, und dann werden die verschiedenen
Kartenfragmente von der Datenbank abgefragt.
16
Zeev Turevsky
Eine Geodatenbank verwendet die gleichen Datenbankoperationen (SELECT,
INPUT, UNION usw.) wie jede andere Datenbank. Das Ergebnis einer
Datenbankoperation ist nicht ein Testsatz sondern eine Karte.
Die Karten können in einer Datenbank als eine Sammlung von einfachen
geometrischen Objekten wie Punkte, Linienzüge, Polygone und Regionen gespeichert
werden. Auf dem Bildschirm können die Karten in Form von Mosaiken, als ein Raster
oder als ein Polygon, der mit Hilfe von Vektormenge angezeigt wird, dargestellt
werden.
Die Objektsammlung kann mit Hilfe von drei verschiedenen Modellen (Spaghetti-,
Netzwerk- und topologisches Modell) in der Geodatenbank gespeichert werden. Das
Spaghetti-Modell ist das einfachste Modell nicht nur für die Datendarstellung,
sondern auch für die Datenverwaltung (SELECT, INSERT, DELETE, UPDATE). Die
Nachteile von Spaghetti-Modell sind sowohl hohe Redundanz (ein Linienzug kann
mehrmals auf der Karte angezeigt werden), als auch die Ungenauigkeiten (z. B. zwei
gleiche Kartenabschnitten können mit verschiedenen Koordinaten gespeichert
werden), die die Datenbank enthalten kann.
Das Netzwerk-Modell wird für die Karten verwendet, wenn mit Hilfe von diesen
Karten effizient ein kürzester Weg gefunden werden muss. In diesem Modell werden
Karten als Graphen (Knoten und Kanten) gespeichert. Das Netzwerk-Modell ist gut
für die schematische Darstellung geografischer Objekten, wobei die Topologie dieser
Objekte nicht berücksichtigt werden muss. Z. B. das U-Bahn-Schema oder
Linienfahrpläne für die Büse werden als ein Netzwerk-Modell in Geodatenbank
gespeichert.
Das topologische Modell ermöglicht die Geoinformationen in eine Geodatenbank
zu speichern, sodass die Topologie von gespeicherten Objekten berücksichtigt wird.
Unter die Verwendung dieses Modells kann genau festgestellt werden, in welchen
Beziehungen verschiedene Objekte aus einer Objektsammlung zueinander stehen (ob
sie aneinander, ineinander, isoliert voneinander liegen, oder ob sie sich überlappen).
Das topologische Modell kann effizienter als Spaghetti-Modell erstellt werden, da
in Spaghetti-Modell eine Kante des Polygons oft mehrmals gespeichert werden muss.
Wenn in dem UPDATE die neuen Polygone, die mit anderen Polygonen benachbart
sind, dazu kommen, werden die Kanten von einigen Kanten immer wieder neu
gespeichert. In topologischem Modell wird zuerst festgestellt für jede Kante, ob sie
schon gespeichert wurde, und wenn nicht nur dann sie einmal gespeichert wird.
Aber die Erstellung von Untermenge geometrischer Objekten, zu denen eine Karte
neu eingefügten Objektes gehören kann, kann zu lange dauern. Deswegen können
einige Operationen wie INSERT, DELETE, UPDATE usw. in topologischem Modell
viel aufwändiger als in Spaghetti-Modell werden.
“Modellierung von Geodaten”
6
17
Literatur
[1] T. Brinkhoff. Geodatenbanksysteme in Theorie und Praxis (2. Auflage).
Eigenschaften von Geodaten, pp. 59 – 64, Verlag Wichmann, 2008
[2] P. Rigaux, M. Scholl, A. Voisard. An Introduction to Spatial Databases. In
Spatial Databases with Application to GIS. Vocabulary in Geospatial Database
Applications, Geospatial Data Manipulation, pp. 9 - 21, Morgan Kaufmann
Publishers, 2002
[3] P. Rigaux, M. Scholl, A. Voisard. An Introduction to Spatial Databases. In
Spatial Databases with Application to GIS. Representation of Spatial Objects, pp. 29 68, Morgan Kaufmann Publishers, 2002
[4] Karl Heinz Borgwardt. Optimierung, Operations Research, Spieltheorie.
Mathematische Grundlagen. (p. 37), Verlag Birkhäuser, 2001
Erklärung
Hiermit erkläre ich, Zeev Turevsky, dass ich die vorliegende Arbeit selbständig
verfasst und keine anderen Hilfsmittel als die angegebenen verwendet habe. Die
Stellen der Arbeit, die anderen Werken dem Wortlaut oder dem Sinn nach entnommen
sind, wurden in jedem Fall unter Angabe der Quelle kenntlich gemacht.
Herunterladen