Institut für Informatik III
Universität Bonn

Datenbanken * Informationssysteme * Softwaretechnologie * Computergrafik * Mustererkennung * Bildverarbeitung * Künstliche Intelligenz * Robotik


 ProSeminar "Verteilte Informationssysteme"

(Sommersemester 2006)

      INDEX:   Ansprechpartner   Informationen  Themen und Termine Literatur (Bücher) Links und online-Literatur

Ansprechpartner


Informationen zum ProSeminar

Beschreibung:

Thema “Grundlagen der Verteilten Informationssystemen, Architekturen und Algorithmen”

Der Trend zu "offenen" Systemen einerseits sowie sinkende Preise für Rechner- und Kommunikatiossysteme andererseits haben in den letzten Jahren das Interesse an verteilten Systemen, insbesondere an verteilten Informationssystemen, stark wachsen lassen. In vielen Unternehmen hat der Wechsel von den vorhandenen monolithischen Großrechneranwendungen hin zu verteilten, dezentral organisierten Lösungen bereits begonnen oder ist doch für die nächsten Jahre geplant. In diesem Zusammenhang werden häufig Schlagworte wie Client/Server-Architektur, CORBA oder Web Services verwendet.

Ziel dieses Seminars ist die Diskussion der zur Realisierung von Client/Server-Systemen benötigten Basistechnologien (JavaRMI, CORBA, Web Services) sowie der grundlegenden Konzepten (Caching, Prefetching, Garbage Collection, etc.). Die Vorstellung der genauen Vortragsthemen erfolgt während der Vorbesprechung.

Zeit und Ort:

Vorbesprechung: Di. 7.2.2006, 15:30 Uhr st, SR A121
Treffen: Do. 13-15, SR A121

Vortragsmodus:

Einzelvortrag mit eine schriftlicher Ausarbeitung.

Ausarbeitung: Die fertige schriftliche Ausarbeitung des vorgetragenen Materials (ca. 15-Seiten) soll vor dem Vortrag als pdf- oder ps-File per E-Mail dem jeweiligen Betreuer zuzuschicken. Bei der Ausarbeitung ist Folgendes zu berücksichtigen:

Vortrag: Jeder Seminarteilnehmer muss einen ca. 60-minütigen Vortrag im Seminar halten und danach für Fragen der Teilnehmer zur Verfügung stehen. Bei der Vorbereitung der Folien können folgende Empfehlungen helfen:

Zeitplan: Diese Fristen sind unbedingt einzuhalten!

Spätestens 3 Wochen vor dem Vortragstermin: vorläufige Ausarbeitung*

Spätestens 1 Woche vor dem Vortragstermin: vorläufiger Folienentwurf*

am Vortragstermin: Vortrag

Spätestens 1 Woche nach Vortragstermin: fertige Ausarbeitung

* Eine frühere (frühstmögliche) Besprechung der Thematik/Ausarbeitung wird angeraten. Eventuell müssen dann noch Nachbesserungen vorgenommen werden.

to top

Themen und Termine:

Diese Themen wurden für dieses ProSeminar ausgewählt.

Termin Thema Name
  Basistechnologien  
06.04.06 Verteilte (n-tier) Architekturen Ina Hessenmueller
13.04.06 Kommunikationsdienste des Betriebssystems Sinan Ayan
20.04.06 Entfernte Prozedur- Objekt-Aufruf Paul Rybka
27.04.06 World Wide Web Marovan Bendib
04.05.06 Web Services Feng Qu
  Konzepte  
11.05.06 Lokalisierung und Verteilten Hashtabellen (Distributed Hash Table) Sebastian Trunz
18.05.06 Caching Daria Makarova
01.06.06 Prefetching Yuhang ZHOU
22.06.06 Verteilte Garbage Collection Sergej Penner
06.07.06 Lasterverteilung (Load Balancing) Stephan Wagner
13.07.06 Synchronisation und verteilte Transaktionsverwaltung Jiliang ZHANG
to top

Literatur:

Verteilte (n-tier) Architekturen

(Client-Server, Client-Server-Server, Kommunikationsmodelle, Proxy, Application Server, 2-tier, 3-tier, n-tier, Objekt-Adapter, Objekt-Wrapper, Agenten, P2P)

Kommunikationsdienste des Betriebssystems

(ISO-Modell, Kommunikations-Protokoll, Kommunikationsmodelle, TCP/IP-Sockets)
Konzepte, Funktionsweise, Besonderheiten

Entfernte Prozedur- Objekt-Aufruf

(Sun RPC, CORBA, Java RMI)
Programmiermodelle, Funktionsweise, Vergleich und Besonderheiten

World Wide Web

(HTTP, Web Server, CGI, Servlets, Applets, Skripte)

Web Services

(XML, SOAP, WSDL)

Lokalisierung und Verteilten Hashtabellen (Distributed Hash Table)

Ein Hash ist eine Datenstruktur, die ein Assoziatives Array implementiert. In einem Hash werden (Schlüssel => Wert)-Paare gespeichert. Jeder Schlüssel ist mit einem Wert assoziert und der Wert kann über Angabe des Schlüssels erhalten werden. Ein verteilter Hash bezeichnet einen Mechanismus, der die Identifikation und das Abrufen von Werten in einem Verteilten System ermöglicht. Der gesamte Hash ist dabei auf mehrere Stationen eines Netzwerkes verteilt, wobei jede Station über einen Teil des Hashes verfügt. In diesem Vortrag sollen die Grundprinzipien der alten bekanntesten Systeme (Napster, Gnutella, Kazaa) vorgestellt werden und mit aktuellen Ansätzen aus P2P-Forschung (Chord, Kademlia) verglichen werden.

Caching

In diesem Vortrag sollen die wichtigsten technischen Grundlagen von verschiedenen Techniken vorgestellt werden, die durch eine Zwischenspeicherung der Daten die Performanz eines verteilten Systems verbessern können. Dazu gehören sowohl die klassische (FIFO, LFU, LRU, GreedyDual, LRV) als auch moderne Verfahren (so wie Semantisches Caching, LDD).

Prefetching

In diesem Vortrag sollen die wichtigsten technischen Grundlagen von verschiedenen Techniken vorgestellt werden, die durch eine intelligente Auswahl der einzulagernden Daten die Performanz eines Caches verbessern können. Dieser Vorgang wird auch als Prefetching bezeichnet. Dazu gehören sowohl die klassische Strategien (OBL, PPM, TIP) als auch moderne Verfahren (so wie Data Hoarding).

(in Web)

(in Datenbanken)

Verteilte Garbage Collection

Hier sollte ein Überblick über existierende Lösungen und Forschungsansätze für eine verteilte Garbage Collection gegeben werden - inklusive der Darstellung der jeweiligen Vor- und Nachteile bzw. Probleme. Es sollte (zumindest in der Ausarbeitung) auch geklärt werden, welche Algorithmen in heutigen Middleware Plattformen (Java-RMI, CORBA, etc) wirklich verwendet werden.

Lasterverteilung (Load Balancing)

Hier sollte auf Verfahren eingegangen werden, die Anwendungen oder Teile davon so über Rechner zu verteilen versuchen, dass eine möglichst hohe Performance erreicht wird. Es sollte dabei nicht (zumindest nicht ausschließlich) auf das Load Balancing in homogenen parallelen Systemen eingegangen werden; stattdessen sollte das Hauptaugenmerk auf heterogenen verteilten Systemen liegen.

Synchronisation und verteilte Transaktionsverwaltung

Die Transaktion als Zusammenfassung logisch zusammengehörender Einzeloperationen kommt sowohl in zentralen als auch in verteilen Informationssystemen eine sehr große Bedeutung zu. In diesem Vortrag soll man der Begriff der Transaktion, die grundlegende Eigenschaften und die gängige Transaktionsmodell vorführen.

to top

Links und online-Literatur

Artikelsammlungen

to top


[Uni-Bonn] [Informatik] [III] [Lehre] [Seitenanfang]

Letzter Stand: 23.11.2005 14:41 Uhr, Serge Shumilov shumilov(at)cs.uni-bonn.de