Geometrische Objekte in Datenbanken Martin Pfeifle Institut für Informatik, Universität München Lehr- und Forschungseinheit für Datenbanksysteme Prof.

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen und Datenstrukturen
Advertisements

Der R-Baum Richard Göbel.
Anzahl der ausgefüllten und eingesandten Fragebögen: 211
1. 2 Untersuchungsdesign Zielgruppe:Bevölkerung ab 14 Jahre Befragungsgebiet:Land Brandenburg Stichprobe:Soll:3.000 Befragte Ist:3.052 Befragte Auswahl:telefonische.
Geometrische Datenstrukturen Haozhe Chen Aaron Richardson.
Algebraische Zahlen: Exaktes Rechnen mit Wurzeln
Datenbanksysteme für FÜ WS2004/05 SQL1 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.
B-Bäume.
IT – Struktur an Schulen
Standortfaktoren INTERN - Ausdrucksstark präsentieren.
Der Einstieg in das Programmieren
Anfrage-Optimierung und -Bearbeitung in Verteilten DBMS
Sortieren mit Binären Bäumen
Effizienz: Indexstrukturen
Algorithmentheorie 04 –Hashing
Suche in Texten: Suffix-Bäume
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (19 - Analyse natürlicher Bäume) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (18 - Bäume: Durchlaufreihenfolgen, Analyse nat. Bäume) Prof. Th. Ottmann.
WS Prof. Dr. Th. Ottmann Algorithmentheorie 09 - Suche in Texten Suffix - Bäume.
WS03/041 Binomial Queues Prof. Dr. S. Albers Prof.Dr.Th Ottmann.
Geometrisches Divide and Conquer
Erweiterte Datenmodelle Referentin: Lena Becker HS: Datenbanken vs. Markup Datum:
Rechneraufbau & Rechnerstrukturen, Folie 3.1 © 2006 W. Oberschelp, G. Vossen.
Diskrete Mathematik I Vorlesung Arrays-
Institut für Kartographie und Geoinformation Diskrete Mathematik I Vorlesung Bäume-
Vorlesung 3: Verschiedenes Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Prof. Dr. Bernhard Wasmayr
SQL 2 Order by null Aggregatfunktionen group by Join subselect.
Datenintegrität Referentielle Integrität create table
Datenmanagement in Sensornetzen PRESTO - Feedback gesteuertes Datenmanagement - SS 2007 Sören Wenzlaff.
Inhalte und Maßnahmen eingegeben haben,
Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Prof. Dr. Bernhard Wasmayr VWL 2. Semester
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
Bild 1.1 Copyright © Alfred Mertins | Signaltheorie, 2. Auflage Vieweg+Teubner PLUS Zusatzmaterialien Vieweg+Teubner Verlag | Wiesbaden.
20:00.
7.1 Externes Suchen Bisherige Algorithmen: geeignet, wenn alle Daten im Hauptspeicher. Große Datenmengen: oft auf externen Speichermedien, z.B. Festplatte.
...ich seh´es kommen !.
Präsentation läuft auch vollautomatisch ab … wie du möchtest
Werkzeugmaschinen Einführung © Prof. Dr. H.-J. Weber 10.11
Auslegung eines Vorschubantriebes
WS 2009/10 Datenbanksysteme Fr 15:15 – 16:45 R Vorlesung #3 Das relationale Modell (Teil 2)
WS 2007/08 Datenbanksysteme Mi 17:00 – 18:30 R Vorlesung #10 Physische Datenorganisation.
SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #7 SQL (Teil 2)
WS 2011/12 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #9 Physische Datenorganisation.
WS 2013/14 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #5 SQL (Teil 2)
Vorlesung Datenbanksysteme vom Physische Datenorganisation
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
Einführung in Datenbankmodellierung und SQL
Vorlesung #10 Physische Datenorganisation
Managemententscheidungsunterstützungssysteme (Ausgewählte Methoden und Fallstudien) ( Die Thesen zur Vorlesung 3) Thema der Vorlesung Lösung der linearen.
MINDREADER Ein magisch - interaktives Erlebnis mit ENZO PAOLO
SQL - Structured Query Language AIFB SS (1/9) Join-Operationen in SQL-92(1/9) Syntax einer Join-Operation: join-op := CROSS JOIN | [NATURAL]
LOD Levels of Detail Oliver Gassner Christian Troger.
Analyseprodukte numerischer Modelle
2014 Januar 2014 So Mo Di Mi Do Fr Sa So
Folie Beispiel für eine Einzelauswertung der Gemeindedaten (fiktive Daten)
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation III Vorlesung 1 WS 2001/02 Punkt-in-Landkarte I (Streifenkarte)
Der Erotik Kalender 2005.
Familie Beutner, Konrad-Voelckerstrasse, Edenkoben/Pfalz, Tel:
Folie Einzelauswertung der Gemeindedaten
Modul 141: Datenbanksysteme in Betrieb nehmen
Algorithmen und Datenstrukturen 1 SS 2002
Martin Pfeifle, Objekt - relationale Verwaltung hochauflösender CAD-Datenbanken Martin Pfeifle LFE Datenbanksysteme Institut für Informatik LMU.
Projektarbeit von Michael W. Passer Betreuer: Martin Pfeifle
 Präsentation transkript:

Geometrische Objekte in Datenbanken Martin Pfeifle Institut für Informatik, Universität München Lehr- und Forschungseinheit für Datenbanksysteme Prof. Dr. Hans-Peter Kriegel

Kriegel, Pfeifle Überblick CAD-Datenbanken Intervalle in Datenbanken Demonstration

Kriegel, Pfeifle Digitaler Zusammenbau

Kriegel, Pfeifle Haptische Simulation

Kriegel, Pfeifle CAD-Datenbanken: Probleme Komplexe geometrische Objekte –Bauteil-Oberflächen und -Volumina –Hüllgeometrien,... Aufwendige Operationen –Bereichs- und Kollisionsanfragen –Kraft-Rückkopplung, …

Kriegel, Pfeifle CAD-Datenbanken: Probleme

Kriegel, Pfeifle CAD-Datenbanken: Probleme Komplexe geometrische Objekte –Bauteil-Oberflächen und -Volumina –Hüllgeometrien,... Aufwendige Operationen –Bereichs- und Kollisionsanfragen –Kraft-Rückkopplung, … Große Datenmengen –Millionen von geometrischen Objekten –Viele Gigabytes Speicherplatz Viele Benutzer –Interne und externe Konstrukteure –Fertigungsplanung, Einkauf, …

Kriegel, Pfeifle CAD-Datenbanken: Ziele Effektivität –Verwaltung von geometrischen Objekten –Räumliche Anfragebearbeitung Effizienz –Kurze Antwortzeiten für Anfragen –Schnelles Einfügen, Ändern und Entfernen Skalierbarkeit –Verwaltung sehr großer Datenmengen –Anbindung vieler Benutzer

Kriegel, Pfeifle Überblick CAD-Datenbanken Intervalle in Datenbanken Demonstration

Kriegel, Pfeifle Triangulation Abbildung auf Intervalle Voxelmenge Triangulation Voxelmenge Intervallsequenz

Kriegel, Pfeifle Schnittanfragen Intervalle sind ausgedehnte Objekte im 1D J226 M51 B43 A Welche Datenbankintervalle schneiden den Anfragebereich? Verwaltung in relationalen Datenbanksystemen +Gut geeignet für große Datenmengen und viele Benutzer –Keine unmittelbare Unterstützung für Intervalldaten

Kriegel, Pfeifle Naives Relationales Schema Relationales Schema create table Intervals (partid, begin, end); Schnittanfrage (lower, upper) select * from Intervals where begin = lower; Zeitverhalten –O(n) für n Intervalle, da sequentiell gesucht wird –Erwünscht wäre eine sublineare Antwortzeit –Können Indexe eingesetzt werden?

Kriegel, Pfeifle Bisherige Ansätze Hauptspeicherstrukturen –keine Persistenz –keine Blockstruktur Sekundärspeicherstrukturen +Persistent, sehr effizient –Erweiterungen im DB-Kern, in der Regel nicht möglich Relationale Speicherung +Benutzung statt Erweiterung +Einfache Implementierung +Effizienz muß nicht leiden Interval Tree (80), Segment Tree (80), Priority Search Tree (85), Interval Skip List (90) Time Index (90), Segment R-tree (91), Path Caching (94), TP-Index (94), External Segment Tree (94), Interval B-tree (95), External Memory Interval Tree (96), Interval B+-tree (98) D-Order (96), Window List (97), Linear Segment Tree (99), MAP21 (99) Disk No DB SQL

Kriegel, Pfeifle Bisherige Ansätze Hauptspeicherstrukturen –keine Persistenz –keine Blockstruktur Sekundärspeicherstrukturen +Persistent, sehr effizient –Erweiterungen im DB-Kern, in der Regel nicht möglich Relationale Speicherung +Benutzung statt Erweiterung +Einfache Implementierung +Effizienz muß nicht leiden Interval Tree (80), Segment Tree (80), Priority Search Tree (85), Interval Skip List (90) Time Index (90), Segment R-tree (91), Path Caching (94), TP-Index (94), External Segment Tree (94), Interval B-tree (95), External Memory Interval Tree (96), Interval B+-tree (98) D-Order (96), Window List (97), Linear Segment Tree (99), MAP21 (99)x Disk No DB SQL

Kriegel, Pfeifle B5B 13 B Der Relationale Intervallbaum Primärstruktur: Binärbaum mit Wurzel 2 h-1 über dem Bereich [1..2 h -1] Intervalle: Jedes Intervall ist genau einem Knoten zugeordnet Sekundärstruktur: Sortierte Listen von Intervallgrenzen an den Knoten Relationale Speicherung: Abbildung auf Indextabellen (VLDB2000) J M7M 1M1M 3J3J 15 J 5B5B 10 A 15 A M51 B43 A47

Kriegel, Pfeifle Relationale Speicherung Zwei relationale Indexe speichern die Intervallgrenzen: 4,1,M51 8,3,J226 8,5,B4312,10,A47 lowerIndex (node,lower,id): 4,1,M51 8,3,J226 8,5,B43 12,10,A47 4,7,M51 8,13,B43 8,15,J22612,15,A47 upperIndex (node,upper,id): 4,7,M51 8,13,B43 8,15,J226 12,15,A47 In jedem RDBMS realisierbar: Keine internen Erweiterungen J3J 5B5B 7M7M 1M1M 15 J 13 B 10 A 15 A

Kriegel, Pfeifle Anfragevorbereitung Steige (arithmetisch) von root bis lower und bis upper ab: –Für Intervalle i in Knoten links von lower: Teste i.upper lower –Für Intervalle i in Knoten rechts von upper: Teste i.lower upper –Für Knoten von lower bis upper: Ausgabe aller Intervalle lower upper root fork

Kriegel, Pfeifle Relationale Bearbeitung Join-Anfrage auf den Indexen: SELECT id FROM upperIndex i, leftQueries left WHERE i.node = left.node AND i.upper >= lower UNION ALL SELECT id FROM lowerIndex i, rightQueries right WHERE i.node = right.node AND i.lower <= upper UNION ALL SELECT id FROM lowerIndex i /*oder upperIndex i*/ WHERE i.node BETWEEN lower AND upper

Kriegel, Pfeifle Skalierbarkeit: Analytisch Wie verhält sich das System bei großen Datenmengen? Gegeben sei eine Platte mit Blockgröße b, ein Relationaler Intervallbaum der Höhe h und eine Menge von n Intervallen. Speicherplatzbedarf: O(n/b) Plattenblöcke. –Platzbedarf ist linear abhängig von der Datenbankgröße. Einfügen oder Entfernen eines Intervalls: O(log b n) Plattenzugriffe. –Einfügezeit ist logarithmisch abhängig von der Datenbankgröße. Schnittanfrage mit r Ergebnissen: O(h·log b n + r b) Plattenzugriffe. –Suchzeit wird dominiert von der Größe der Ergebnismenge. Disk

Kriegel, Pfeifle Skalierbarkeit: Praktisch Implementierung auf einem kommerziellen RDBS (Oracle8i Datenbankserver) Vergleich mit relationalen Speicherungsstrukturen Relational R-Tree Linear Octree Relational Interval Tree Skalierbarkeit

Kriegel, Pfeifle Überblick CAD-Datenbanken Intervalle in Datenbanken Demonstration

Kriegel, Pfeifle CAD-Datenbanken: Realisierung DBS (Oracle8i) Web-Server (Apache) HTTP/HTML JDBC/Java HTTP/VRML (ICDE 01, SIGMOD 01)