2. Ein abstraktes Geo-Datenmodell

Ähnliche Dokumente
Kapitel 2: Ein abstraktes Geo-Datenmodell

Kapitel 2: Ein abstraktes Geo-Datenmodell

Lernmodul 2 Topologie. Lernmodul 2: Geoobjekte und ihre Modellierung - Topologie

GIS und raumbezogene Datenbanken

Raumbezogene Datenbanken (Spatial Databases)

FachPraktikum 1590 Erweiterbare Datenbanksysteme. Aufgaben Phase 1

Modul Nr ,, M.Sc. Bau: Geodäsie und GIS Teil GIS Kapitel 2:

Datenmodelle. Einführung in das Entity-Relationship-Modell. Datenbankmodelle. Beispiel für ein ER-Schema. Kunde( Meier, , ) 41, Meier

Datenmodelle dienen der Darstellung der Informationsstruktur, nicht der Darstellung der Informationen selbst. Motivation

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)

Mehrsortige Strukturen

3D Infrastrukturen. Volker Coors, Seminar GIS & Internet, Überblick. - Nutzung von 3D-Stadtmodellen im WWW

GEODATENBANKEN. Geo-Informationssysteme. Geodatenbanken - Vertreter. Geodaten GEODATENBANKEN - 1

Formale Methoden 2. Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2014/2015

1. Einführung Seite 1. Kapitel 1: Einführung

Übung 4. Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017)

Fachpraktikum 1590 Erweiterbare Datenbanksysteme. Aufgaben Phase 1

8. Modelle für feste Körper

2.7.1 Inside-Test Konvexe Hülle Nachbarschaften Schnittprobleme

Dieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.

Relationen-Algebra und Persistenz Teil I

Relationen-Algebra und Persistenz Teil I

Wiederholung VU Datenmodellierung

Graphentheorie Graphentheorie. Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke

Wir haben folgende Ausprägung der Relation Studenten:

Datenbanken Unit 4: Das Relationale Modell & Datenintegrität

Kap. 3 Relationenmodell mit relationaler Algebra

GEO-INFORMATIONSSYSTEME

GEO-INFORMATIONSSYSTEME

On the Consistency of Spatial Semantic Integrity Constraints. Konsistenzprüfung von räumlichen semantischen Integritätsregeln.

Kapitel 3: Grundlagen von Anfragesprachen

Datenbanken 1. Sommersemester Übung 2

Geradenarrangements und Dualität von Punkten und Geraden

Kapitel 1: Einführung 1.1 Datenbanken?

Räumliche Datenbanken

Seminar: mobilegis. Einführung zu Geodatenbanken. Session 1 am Von Ralph Zeumann

Geradenarrangements und Dualität von Punkten und Geraden

Structured Query Language (SQL) als standardisierte Anfragesprache für relationale Datenbanken

Geradenarrangements und Dualität von Punkten und Geraden

Mathematische Grundlagen

3. Abbildung auf das relationale Datenmodell

Informationssysteme für Ingenieure

Fachpraktikum 1590 Erweiterbare Datenbanksysteme. Aufgaben Phase 1

Domänen: Grundtypen, alle vordefiniert, z.b. INTEGER ~ integer NUMERIC (p,s) p: precision, s: scale (nach,) etc.

Wiederholung VU Datenmodellierung

Spezifikation in Datalog:

Norbert Bartelme. Geoinformatik. Modelle Strukturen Funktionen. 4., vollständig überarbeitete Auflage. Mit 146 Abbildungen.

Geoinformation Abbildung auf Tabellen

Lernmodul 2 Modelle des Raumes

Geoinformation I Landkarten

Geoinformation I Landkarten

Relationen-Algebra. Prof. Dr. T. Kudraß 1

Komplexitätstheorie Datenbanken und Deskriptive Komplexität

Algorithmische Geometrie 3. Schnitte von Liniensegmenten

Kapitel 3: Abbildung auf das relationale

2. Einführung der NF 2 -Algebra

Für die Anzahl der Kanten in einem vollständigen Graphen (und damit für die maximale Anzahl von Kanten in einem einfachen Graphen) gilt:

Vorlesung Datenbanktheorie. Einige Erweiterungen der Anfragesprachen. Regelbasierte konjunktive Anfragen mit = Vorlesung vom Mittwoch, 26.

KARL-FRANZENS-UNIVERSITÄT GRAZ. Seminar aus Reiner Mathematik. Die Museumswächter. Krupic Mustafa Wintersemester 2013/14

Univ.-Prof. Dr. Goulnara ARZHANTSEVA

1 Datenstrukturen Datenstrukturen und Algorithmen

Antwort auf QB ist Menge von Tupeln, i-e. selbst wieder Relation (wie bei rel. Algebra) in QB "Zugriff" auf Tupel mit Tupel-Variablen

Liniensegmentschnitt. Doppelt verkettete Kantenliste. Überlagerung von 2 ebenen Graphen. Boolsche Operatoren für einfache Polygone (LEDA)

2.2. Schnitte von Liniensegmenten

Kommunikation und Datenhaltung. Übungsblatt D1. (Relationale Algebra & SQL)

Geodaten mal ohne Karte

Schemamerging und -mapping

Datenbanken: Relationales Modell und SQL. Dr. Matthias Uflacker, Stefan Klauck 23. April 2018

Modul Nr , M.Sc. Bau: Geodäsie und GIS Teil GIS Kapitel 2: Grundlegende Konzepte

12 Übungen zu Gauß-Algorithmus

4.3 Splitstrategien für R-Bäume (I)

d.h. zu Definitions-Stelle eindeutiger Funktionswert x X! y Y : (x,y) f umgekehrt: (x 1,y), (x 2,y) f ist o.k. X Y f(x) = y

Kapitel 5: Strukturen. 1.1 Zweistellige Relationen 1.2 Graphen 1.3 Algebren 1.4 Strukturen

Datenbanken Unit 5: Datenintegrität und funktionale Abhängigkeit

4.3 R-Bäume (I) Idee. basiert auf der Technik überlappender Seitenregionen verallgemeinert die Idee des B + -Baums auf den 2-dimensionalen Raum

Kapitel 1: Einführung 1.1 Datenbanken?

Anfragesprachen für On-Line Analytical Processing (OLAP)

3.7 Struktur der Syntax

Das relationale Modell (Teil 1)

Datenbanksysteme I WS 17/18 HS-Übung. Universität Leipzig, Institut für Informatik Abteilung Datenbanken Prof. Dr. E. Rahm, V. Christen, M.

Einführung in die Informatik II

1 Lineare Gleichungssysteme und Matrizen

Graphdatenbanksysteme

Geheimnisprinzip: (information hiding principle, Parnas 1972)

M. Pester 29. Ein konvexes d-polytop ist eine begrenzte d-dimensionale polyedrale Menge. (d = 3 Polyeder, d = 2 Polygon)

[W, T4, D, 15] [start_transaction, T3] [W, T3, C, 30] [W, T4, A, 20] [commit, T4] [W, T2, D, 25] System Crash

Kapitel 6: Algorithmen der Computer-Geometrie

Vorlesung Algorithmen für hochkomplexe Virtuelle Szenen

Vorlesung Diskrete Strukturen Abbildungen

Algorithmen II Vorlesung am

Kapitel 12: Objekt-relationale Erweiterungen

Vorlesung Wissensentdeckung in Datenbanken

Hallo Welt! für Fortgeschrittene. Geometrie I. Philipp Erhardt. 19. Juli Philipp Erhardt Geometrie I 19. Juli / 27

Übersicht. Vorstellung des OO-Paradigmas

Transkript:

2 Ein abstraktes Geo-Datenmodell 1 Was soll modelliert werden? 2 Spatial Data Types 3 Integration in das relationale Datenmodell Geo-Informationssysteme 24

21 Was soll modelliert werden? Einzelne Objekte Punkt Linie Fläche Mengen räumlich benachbarter Objekte Partition Netzwerk Geo-Informationssysteme 25

21 Was soll modelliert werden? Probleme mit dem Euklidischen Raum Punkt = (r 1, r 2 ), r i sind theoretisch reelle Zahlen, im Rechner aber nur als Fließkommazahlen mit bestimmter Genauigkeit repräsentiert Problem mit Schnittpunkten zweier Linien: Koordinaten des Schnittpunkts werden zur nächsten Fließkomma-Zahl gerundet der Schnittpunkt liegt dann auf keiner der beiden Linien (Inkonsistenz) Realm-basierter Ansatz Ein Realm ist eine Menge von Punkten und nicht-schneidenden Liniensegmenten über einem gegebenen Gitter Schnittpunkte zweier Linien müssen auf einem Gitterpunkt liegen Geo-Informationssysteme 26

21 Realms Gegeben sei ein endlicher diskreter Raum N N mit N = {0,1,, n-1} Robuste Geometrische Primitive Realms Ein N-Punkt ist ein Paar (x,y) N N P N sei die Menge aller N-Punkte Ein N-Segment ist ein Paar verschiedener N-Punkte (p,q), S N die Menge aller Segmente Eine N-Realm ist eine Menge R = P S mit (i) P P N (R-Punkte), S S N (R-Segmente) (ii) s S : s = (p,q) p P q P (iii) p P s S : ( p in s ) (iv) s, t S, s t : ( s intersects t ) Interpretation einer Realm als planarer Graph: Menge der Knoten = P Menge der Kanten = S Geo-Informationssysteme 27

21 Realms Realm Strukturen Die folgenden Definitionen beruhen auf der Graph-Interpretation einer Realm R: Ein R-cycle ist ein Zyklus im Graphen von R Ein R-face ist ein R-cycle der andere disjunkte R-cycles enthalten kann Ein R-block ist eine Zusammenhangskomponente im Graphen von R R-face R-cycle R-block Geo-Informationssysteme 28

Geo-Informationssysteme 29 22 Spatial Data Types Realm-Basierte Spatial Data Types Gegeben sei eine Realm R Der Typ points definiert Mengen von R-Punkten Der Typ lines definiert Mengen von paarweise disjunkten R-blocks Der Typ regions definiert Mengen von paarweise kanten-disjunkten R-faces ein Element von points ein Element von lines ein Element von regions

22 Spatial Data Types Typmengen EXT = {lines, regions} GEO = {points, lines, regions} OBJ = {cities, highways, } (anwendungsspezifisch) set(obj) modelliert eine Datenbank Second Order Signature (Typmengen = kinds) Arten von Operationen Resultat vom Typ bool (Prädikate) Resultat vom Typ GEO Resultat vom Typ int / real Resultat vom Typ set(geo) (Anfragen) Geo-Informationssysteme 30

22 Spatial Data Types Prädikate (Resultat vom Typ bool) geo GEO ext, ext1, ext2 EXT geo geo bool =,, nördlich von, dist < 100, geo regions bool inside regions regions bool area_disjoint, edge_disjoint points ext bool on_border_of ext1 ext2 bool disjoint, meet, overlaps, covers, contains, covered_by, inside, equal (Topologische Prädikate) vollständige Menge der topologischen Prädikate Geo-Informationssysteme 31

22 Topologische Prädikate (I) 9-Schnitt-Modell (Egenhofer 1991) Wir betrachten einfache Polygone ohne Löcher (R-cycles) Ein solches Polygon kann als Punktmenge im 2D (N-Punkte) angesehen werden Für eine Punktmenge A bezeichnen A 0 das Innere von A, δa den Rand von A und A -1 das Äußere (Komplement) von A Um die topologische Beziehung zwischen zwei Polygonen (Punktmengen) A und B zu bestimmen, bilden wir die folgenden 9 Schnitte und notieren die Ergebnisse ( oder ) in einer Matrix, genannt Durchschnittsmatrix: δa δb δa B 0 δa B -1 A 0 δb A 0 B 0 A 0 B -1 A -1 δb A -1 B 0 A -1 B -1 Von den 512 potentiellen Matrizen können nur 8 auftreten, wenn A und B keine Löcher haben, zusammenhängend sind und nicht 1-dimensional sind Jede dieser 8 Matrizen definiert eine topologische Beziehung zwischen den Polygonen A und B Geo-Informationssysteme 32

22 Topologische Prädikate (II) 9-Schnitt-Modell (Forts) Durchschnittsmatrizen für die 8 topologischen Beziehungen B Μ disjoint (A, B) = Μ meet (A, B) = A Μ overlaps (A, B) = Μ covers (A, B) = Μ contains (A, B) = Μ coveredby (A, B) = Μ inside (A, B) = Μ equal (A, B) = Geo-Informationssysteme 33

22 Spatial Data Types Operationen mit Resultat vom Typ GEO geo GEO ext, ext1, ext2 EXT geo geo geo plus, minus ext points vertices regions lines contour points points? intersection lines lines? intersection regions regions? intersection regions lines? intersection siehe Übung! Semantik basierend auf Realm-Operationen Seien R regions und L lines: intersection(r,l):= blocks({s Segments(L) r R: s inside r}) Geo-Informationssysteme 34

22 Spatial Data Types Operationen mit Resultat vom Typ int oder real (skalar) geo, geo1, geo2 GEO geo int no_of_components geo1 geo2 real dist geo real diameter lines real length regions real area Semantik basierend auf Realm-Operationen Seien G GEO und L lines: diameter(g):= max{dist(p,q) p, q vertices(g)} length(l):= Σ dist(p,q) (p,q) Segments(L) Geo-Informationssysteme 35

22 Spatial Data Types Anfragen obj OBJ, geo1, geo2 GEO set(obj) (obj geo1) geo2 set(obj) nearest_neighbor_query Beispiel: set(cities) (cities regions) points set(cities) set(obj) (obj geo1) regions set(obj) region_query Beispiel: set(cities) (cities regions) regions set(cities) Geo-Informationssysteme 36

23 Integration in das rel Datenmodell Idee Geo-Objekte einer Anwendung werden als Tupel bzw Objekte mit mindestens einem Attribut eines Spatial Data Types modelliert Das Datenmodell soll neben den atomaren Datentypen wie int und string Spatial Data Types anbieten Beispiel: Relationales Schema relation states (sname: string; area: regions; population: int) relation cities (cname: string; center: points; ext: regions; population: int) relation rivers (rname: string; route: lines) Geo-Informationssysteme 37

23 Integration in das rel Datenmodell Beispiel: Anfragen in Geo-Relationaler Algebra (1) cities select [center inside Bavaria] Bavaria sei eine Konstante des Typs regions (2) rivers select [route intersects Window] (3) cities select [dist(center,hagen) < 100 and population > 500000] (4) cities states join [center inside area] (5) cities rivers join [dist(center,route) < 50] (6) rivers select [route intersects Bavaria] extend [intersection(route,bavaria) {part}] extend [length(part) {plength}] project [rname,part,plength] Geo-Informationssysteme 38

23 Integration in ein Datenbanksystem Integration der algebraischen Operationen in konkrete Anfragesprache zb SQL: (4 ) SELECT cname, sname FROM cities, states WHERE center inside area Input und Output von Konstanten Input von Konstanten von Spatial Data Types: points, lines, regions benennen (zb über Mapping obj geo) oder graphischer Input der Konstanten Output von Konstanten von Spatial Data Types: Graphischer Output mit Legende (Namen, Typ, von Objekten) Geo-Informationssysteme 39