Adaptive Replikation von Daten in heterogenen mobilen Kommunikationsnetzen
Zusammenfassung der Projektergebnisse
Mobilen Informationssystemen müssen die Spezifika des neuartigen Paradigmas des „mobile Computing“ sowie der diesem zugrundeliegenden Technologien reflektieren. Nutzer von leichtgewichtigen mobilen Endgeräten wie beispielsweise PDAs oder Mobiltelefonen wollen jederzeit und an jedem Ort auf ihre Daten zugreifen. Die hierfür notwendigen und derzeitig verfügbaren Funknetzwerktechnologien lassen sich in zwei Gruppen unterteilen: (1) flächendeckend verfügbar aber vergleichsweise langsam und teuer (GSM, GPRS, HSCSD, etc.) (2) nicht flächendeckend verfügbar aber vergleichsweise schnell und preiswert (WLAN, Bluetooth, etc.). Um die Kosten, die durch die Datenübertragung anfallen, zu minimieren, können unterschiedliche Techniken (u.a. Replikation) genutzt werden, welche einmal übertragene Daten auf dem mobilen Gerät lokal speichern und verfügbar machen. Im Rahmen des Projektes wurden mehrere Dimensionen der Adaptivität derartiger Verfahren untersucht. Ein Fokus lag auf der automatischen Bestimmung der anzufordernden Daten. Bisher existierten in der Literatur mehrere Ansätze, welche die Lokation eines Nutzers bzw. seines Gerätes nutzen, um die Menge der zu übertragenden Daten zu reduzieren. Wenn beispielsweise ein Nutzer in Berlin Informationen zu Restaurants anfragt, wird er im Allgemeinen nicht an den Preisen der Münchner Gaststätten interessiert sein. Daher versuchen lokationsbasierte Verfahren durch Adaption der Anfragen (Hinzufügen von Lokationsprädikaten), die Anfragen auf den Aufenthaltsort des Nutzers zuzuschneiden. Vielfach werden hierbei auch temporale Aspekte berücksichtigt. Will beispielsweise der oben erwähnte Nutzer nach dem Essen ins Kino gehen, interessieren ihn Informationen zu Filmen, die er sehen könnte und nicht zu Filmen, die vorgestern gelaufen sind. Der Schwachpunkt der bisher publizierten Ansätze ist, dass sie zwar diese beiden Elemente des Kontextes, unter dem eine Anfrage gestellt wurde, reflektieren, aber alle anderen Elemente des Kontextes ignorieren. Muss unser Nutzer beispielsweise eine Vorlesung vorbereiten, spielen der Ort und die Zeit eine untergeordnete Rolle. Vielmehr ist die Aufgabe, die zu bewältigen ist, das entscheidende Auswahlkriterium. Daher wurde im Rahmen der ersten Projektphase ein generisches Modell entwickelt, mit dem Daten in einer Datenbank derart strukturiert werden können, dass sie beliebige Kontextelemente reflektieren können. Im Rahmen dieser Arbeiten war es auch notwendig, die Datenhaltungs- und -verarbeitungskomponente auf den Mobilgeräten zu untersuchen. Diese muss die Eigenschaften des eingesetzten Endgerätes reflektieren. Wird beispielsweise ein PDA ohne Festplatte eingesetzt, kann auf eine aufwendige Pufferstrategie beim Verarbeiten der Daten verzichtet werden. Bei der Untersuchung von existierenden Lösungen stellte sich heraus, dass diese unzureichend sind, da sie zu wenig Flexibilität bieten, die aber bei der Heterogenität und der Vielzahl an verfügbaren mobilen Endgeräten notwendig ist. Entsprechende Alternativsysteme wurden entwickelt und publiziert. Wie bereits erwähnt, ist Replikation nur ein Ansatz, um Daten auf dem Mobilgerät zwischenspeichern zu können. Daneben existieren noch Caching-Verfahren, die ähnliche Ziele verfolgen. Um Korrelationen zwischen der Replikation und dem Caching nutzen zu können, wurden zu Beginn der zweiten Projektphase auch Caching-Ansätze untersucht. Wie sich herausstellte, sind die grundsätzlichen Ideen durchaus vergleichbar. Der wesentliche Unterschied zwischen Caching und Replikation ist, dass beim Caching i.A. keine lokalen Änderungen am Datenbestand vorgenommen werden dürfen und aufgrund der so genannten Cache-Ersetzungsstrategie nicht garantiert werden kann, welche Daten auch tatsächlich 1lokal vorhanden sind. Beide Ansätze haben aber ein wesentliches gemeinsames Problem. Ändern sich die Daten auf Seite des Diensterbringers (im obigen Beispiel könnte dies die Datenbank der Kinokette sein), müssen die mobilen Clients zumindest informiert werden. Ein naives Vorgehen hierfür könnte alle serverseitigen Änderungen an alle mobilen Clients propagieren. Leider kann gezeigt werden, dass es in diesem Fall notwendig ist, die unterstützte Anfragesprache einzuschränken. Anderenfalls könnten lokale Entscheidungen über eine Relevanz u.U. nicht getroffen werden. Demzufolge muss eine entsprechende Relevanzprüfung serverseitig erfolgen. Hierzu muss der Server aber protokollieren, welcher Client, welche Teile seiner Datenbank lokal hält. Mithilfe dieser neuen Art der Indexierung mobiler Clients und der durch diese gestellten Anfragen konnte eine effiziente Bestimmung der zu benachrichtigenden Clients realisiert und publiziert werden. Als Nebeneffekt dieses statusbehafteten Server-Konzeptes konnte nachgewiesen werden, dass die Anfrageverarbeitung auf dem mobilen Gerät bei einer bestehenden Verbindung durchaus die Kapazitäten des Servers benutzen sollte. Die detaillierte Aufarbeitung der Literatur zur Bestimmung der Relevanz von Änderungen im relationalen Datenmodell ergab, dass die existierenden Ansätze zwei wesentliche Nachteile haben. Zum einen bedürfen sie einer sehr starken Beschränkung der Anfragesprache und zum anderen sind sie nicht absolut genau. Diese Problem konnten durch ein datenbasiertes Vorgehen unter Zuhilfenahme einer speziellen Anfragesyntax behoben werden. Die Ergebnisse dieser Überlegungen mündeten in der Dissertationsschrift von Hagen Höpfner. Aufbauend darauf wurde und wird weiterhin geforscht.
Projektbezogene Publikationen (Auswahl)
- Semantic Replication in Mobile Federated Information Systems. In Anne James, Stefan Conrad, and Wilhelm Hasselbring, editors, Proceedings of the Fifth International Workshop on Engineering Federated Information Systems (EFIS2003), Coventry, UK 17th - 18th July, 2003, pages 36–41, Amsterdam, Netherlands, August 2003. Ios Press Inc.
Hagen Höpfner and Kai-Uwe Sattler
- An Indexing Scheme for Update Notification in Large Mobile Information Systems. In W. Lindner, M. Mesiti, C. Türker, Y. Tzikzikas, and A. Vakali, editors, Current Trends in Database Technology - EDBT 2004, Revised Papers, volume 3268 of Lecture Notes in Computer Science (LNCS), pages 345–354, Berlin, Germany, November 2004. Springer-Verlag.
Hagen Höpfner, Stephan Schosser, and Kai-Uwe Sattler
- Toward Trie-based Indexing of Mobile Clients in Large Mobile Information Systems. Preprint 02, Otto-von-Guericke-Universität Magdeburg, Fakultät für Informatik, Institut für Technische und Betriebliche Informationssysteme, Magdeburg, Germany, January 2004
Hagen Höpfner, Stephan Schosser, and Kai-Uwe Sattler
- Mobile Datenbanken und Informationssysteme - Konzepte und Techniken. dpunkt.verlag, Heidelberg, Germany, July 2005
Hagen Höpfner, Can Türker, and Birgitta König-Ries
- Relevanz von Änderungen für Datenbestände mobiler Clients. Dissertation, angenommen durch die Fakultät für Informatik der Otto-von-Guericke Universität Magdeburg, January 2005
Hagen Höpfner
- Anfragebasierte Client-Indexierung in Client-Server-Informationssystemen. Informatik - Forschung und Entwicklung, 20(4):209–221, May 2006
Hagen Höpfner