Upload
adelheit-bopp
View
113
Download
5
Embed Size (px)
Citation preview
FortgeschrittenenpraktikaSS 2004
Database Research Group, Prof. Dr. Bernhard Seeger
Department of Mathematics and Computer Science
University of Marburg
Germany
06.05.2004
2
Generell
Zeitraum: SS 2004, Abgabe 30.09.2004
Blockfopra möglich
Zielgruppe: Studierende der Informatik mit Vordiplom
Voraussetzungen: mindestens Java und Englischkenntnisse (lesen und verstehen) Weitere Voraussetzungen stehen beim jeweiligen
Thema
Kontakt: beim jeweiligen Mitarbeiter
Informationen: dbs.mathematik.uni-marburg.de
3
XXL
XXL: eXtensible fleXible Library
Java Bibliothek
Funktionalität für Datenbankentwickler, u.a. Anfrageverarbeitung
Funktionen/Prädikate
Cursor-Konzept
I/O
Indexstrukturen
XML Speicherungsstrukturen
Gute Dokumentation
4
Cursor Konzept
select namefrom Vorlesungwhere professor=„Seeger“
name
professor=„Seeger“
Vorlesung
Erweitert java.util.Iterator
Jeder Anfrageoperator in XXL ist ein Cursor.
boolean hasNext()Object next()
5
Thema 1
"Mitarbeit im Forschungsprojekt XXL"
Betreuer: Die Mitarbeiter der AG Datenbanksysteme
Java (gute Kenntnisse)
Bearbeiter: bis zu 4
6
Thema 1: Betätigungsfelder
Es gibt immer etwas zu tun, z.B. Implementierung von Plug&Join
Externspeicher-Heap, Externspeicher-Liste
Entwicklung von Tests (JUnit)
Java Generics
Anpassungen von „relational“ an JDBC 3.0
JDO
...
Teilnahme an XXL-Besprechungen Eigene Ideen können eingebracht werden.
7
Thema 2
"Weiterentwicklung der GUI für XXL"
Betreuer: u.a. Dipl.-Inf. Tobias Schäfer
Java (gute Kenntnisse)
Bearbeiter: 1-2
8
Thema 2: Neue Features
Spezielle Funktionen und Prädikate, die häufig in der GUI Verwendung finden
Erweiterung der Codeerzeugung Erzeugung von kompletten Klassen
Aufrufreihenfolge von Methoden
Starten der Beispiele in eigener Java-VM
Visualisierung des Datenflusses zwischen den Objekten
Realisierung als Eclipse-Plugin?
9
Thema 3
"Verarbeitung von XML Dokumenten mit Operatoren"
Betreuer: Dipl.-Inf. Martin Schneider
Java, XML, (XXL)
Bearbeiter: 1-2
10
Thema 3: Beispiel
XML Tree
insert
XSLTCursor
XMLCursor
query
WebserviceCursor
Webservice
XSLTCursor
MetaDataCursor
(relational)
DB
Filter
Creation ofstatic HTML
TeeCursor
XPathInformation
MapperXPath
Predicate
11
Thema 3
Ähnlich zu den Unix-Tools (awk, grep, sort, diff, …) sollen Operatoren entwickelt werden. Jeder Operator ist ein Iterator
Paper von Dan Suciu
Einige Operatoren sind vorhanden.
12
Thema 4
"Entwicklung eines schlanken Datenbanksystems auf Basis von XXL"
Betreuer: Dipl.-Inf. Martin Schneider
Java, Grundlagen von Datenbanksystemen, (XXL)
Bearbeiter: 1-3
XXL bietet Funktionalität für Datenbankentwickler
Bislang kein System auf Basis von XXL erstellt.
Nutzung der Komponenten von XXL und der GUI
Nutzung von verschiedenen Indexstrukturen (B+-Baum, R-Baum, …).
13
Thema 5
„Benutzung der JTS Topology Suite in XXL“
Betreuer: Bernhard Seeger, Michael Cammert
Voraussetzungen: Java, Datenstrukturen, optional: XXL
Bearbeiter: 1-3
Aufgabenstellung
Implementierung eines Connectivity-Package zur Anbindung der JTS Topology Suite an XXL
Hilfsmittel: XXL, JTS Topology Suite
14
Thema 5
Was ist die JTS Topology Suite? „… is an API of 2D spatial predicates and functions.”XXL viel Funktionalität zur Verarbeitung mehrdim. Daten räumliche Auswertung i.A. nur auf Basis
achsenparalleler Rechtecke Verwendung der JTS Topology Suite wünschenswertWas ist zu tun? Entwicklung von Klassen für die einfache Anwendung
der JTS Topology Suite in XXL. Bsp.:com.vividsolutions.jts.geom.Point
<-?->xxl.core.spatial.points.Point
15
Thema 6
„Implementierung von progressiven Verfahren für Skyline-Anfragen“
Betreuer: Evangelos Dellis, Bernhard Seeger, Akrivi Vlachou
Voraussetzungen: Java, Datenstrukturen, optional: XXL
Bearbeiter: 1-2
Anwendungsbeispiel
Menge von Hotels mit Preis und Distanz zum Strand
Ein Hotel ist interessant … Wenn es kein Hotel gibt, das
sowohl günstiger ist als auch näher zum Stand liegt. x
yb
a
i k
h
g
d
f
ec
l
o1 2 3 4 5 6 7 8 9 10
12
3
4
5
6
7
8
9
10
m
n
price
distance
16
Thema 6
Aufgabenstellung
Implementierung einer Skyline-Anfrage unter Verwendung von R-Bäumen
Implementierung weiterer Varianten (optional)
Hilfsmittel
XXL R-Baum und weitere Tools verfügbar
Literatur
17
Thema 7
"Anfrageverarbeitung mit mehreren Indexen" Betreuer: Evangelos Dellis, Akrivi Vlachou
Java (gute Kenntnisse)
Bearbeiter: bis zu 2
Motivation
Große Menge von hochdimensionalen Daten
Die meisten Indexstrukturen versagen bei einer hohenDimensionalität des Datenraums.
18
Thema 7: Idee
Mehrere Indexe niedriger Dimensionalität
Strategien für die Auswahl der Dimensionen
Erzeugung der Indexe
Beantworten von Bereichsanfragen Splitten der Anfrage
Mergen der Antworten
Abstrakte Implementierung, so dass auch andere Anfragentypen und Strategien unterstützt werden können.
19
Thema 8
"Historische Anfragen über Multiversions-B-Bäumen auf Datenströmen"
Betreuer: Dipl.-Inf. Jürgen Krämer Java (gute Kenntnisse), Indexstrukturen, XXL, PIPES Bearbeiter: 1
PIPES: Bibliothek mit Funktionalität zur Verarbeitung von Datenströmen
Multiversions-B-Baum als Indexstruktur zur Speicherung versionierter Daten
Problematik historischer Anfragen auf Datenströmen Zeitlich begrenzte historischen Anfragen auf
Datenströmen mit Multiversions-B-Bäumen
20
Thema 9
"Implementierung des Linear Road Benchmarks"
Betreuer: Dipl.-Inf. Jürgen Krämer
Java (gute Kenntnisse), Indexstrukturen, XXL, PIPES
Bearbeiter: 1-2
PIPES: Bibliothek mit Funktionalität zur Verarbeitung von Datenströmen
Benchmark für Datenstrommanagementsysteme
Verkehrsszenario mit gegebenen Daten
Implementierung des Benchmarks nach der Spezifikation mit den in PIPES bereitgestellten Operatoren
21
Thema 10
"Implementierung einer GUI für Wavelet-Anwendungen"
Betreuer: Dipl.-WiMa. Christoph Heinz
Java (gute Kenntnisse), Wavelets (gute Kenntnisse)
Bearbeiter: 1-2
Wavelets als Basis von Funktionenvektorräumen
Vielfältige Anwendungsmöglichkeiten von Wavelets (z.B. Dichteschätzung, Signalanalyse, Regression)
Realisierung einer GUI für bestimmte Wavelet-Applikationen