Die Entwicklung eines Konzepts und die Realisierung eines Prototyps eines Dokumentenspeichersystems für digitale Bibliotheken wurden in dieser Arbeit beschrieben.
Ziel dieser Arbeit war es, ein Dokumentenspeichersystem für verteilte digitale Bibliotheken zu entwickeln, das skalierbar ist und mit wenig Aufwand in vorhandene und zukünftige Gesamtsysteme digitale Bibliotheken eingebunden werden kann. Weiterhin sollten Funktionalitäten bereitgesellt werden, die es ermöglichen multimediale Dokumente im Speichersystem zu verwalten. Besondere Aufmerksamkeit sollte dabei der Verarbeitung von SGML-Dokumenten gewidmet werden.
Aus [MD98] wurden Konzepte zur typgerechten Verarbeitung von Dokumenten in einer verteilten digitalen Bibliothek übernommen. Die Grundidee wurde aus den in [DK95] vorgestellten wünschenswerten Eigenschaften eines Speichersystems zur Verwendung in digitalen Bibliotheken entwickelt.
Diese Eigenschaften wurden in die Ziele, die mit einem solchen Speichersystem verfolgt werden, umgesetzt. Nach Einführung einiger Grundlagen über digitale Bibliotheken, SGML und mobilen Code wurde das Projekt „Digitale Bibliothek Frankfurt“ detailiert besprochen.
Im nächsten Schritt wurde die Architektur des Speichersystems entwickelt. Dabei wurden zunächst die Anforderungen an ein solches verteiltes System aus den verfolgten Zielen abgeleitet. Die Auswahl einer geeigneten Architektur schloß sich an. Das entwickelte Speichersystem basiert auf einer Three-Tier-Architektur mit Broker und besteht aus unterschiedlichen Komponenten, die über ein definiertes Kommunikationsprotokoll interagieren. Die Schnittstellenkomponente sieht Mechanismen zur einfachen Anbindung an Gesamtsysteme digitaler Bibliotheken vor und steuert die Kommunikation mit auftraggebenden Instanzen. Der Broker übernimmt die vollständige Vermittlung der an das Speichersystem gerichteten Aufträge und der internen Steuerbefehle. Das Monitor-/Steuerungswerkzeug dient der Beobachtung und Konfiguration des Systems. Den Speicherkomponenten kommt die eigentliche Auftragsverarbeitung zu.
Dabei ist die Anzahl der Schnittstellenkomponenten und der Speicher frei skalierbar, so daß das Speichersystem an die Anzahl der zu verarbeitenden Aufträge angepaßt werden kann. Die Menge der Speicher fungiert dabei als Lastverbund auf einem Datenbestand. Durch die Bündelung der Vermittlungsfunktionalitäten im Broker, wird die Anpassung von Speichern und Schnittstellenkomponenten an Basisprodukte bzw. andere Gesamtsysteme zusätzlich vereinfacht.
Das entwickelte verteilte System kann als Grundlage für die Entwicklung anderer Elemente (Katalog-, Erfassungselemente) verwendet werden, da die Konzeption von Schnittstellenkomponenten, Broker und Managementkomponenten unabhängig von der Funktionalität der Speicher erfolgte.
Es schloß sich die Entwicklung der Funktionalitäten der Speicher an. Auch hier galt es zunächst aus den gesteckten Zielen die Anforderungen abzuleiten. Der entworfene aktive Speicher verarbeitet Metadokumente und erlaubt die Ausführung von Dokumentenmethoden auf den Dokumenten. Zur Ausführung von Dokumentenmethoden stellt der Speicher eine oder mehrere Ablaufumgebungen bereit. Die Funktionalitäten und Ressourcen des Speichers werden den Dokumentenmethoden durch die Programmbibliotheken zur Verfügung gestellt. Zur Organisation der Programmbibliotheken wurde das Paket-Klassen-Konzept entwickelt. Die von der Programmbibliothek bereitgestellten Operationen bilden die Schnittstelle zwischen Dokumenten und Speicher. Durch den gänzlich modularen Aufbau des Speichers wurde dafür Sorge getragen, daß der Speicher leicht modifiziert und erweitert werden kann.
Besondere Berücksichtigung fand die Entwicklung SGML-spezifischer Funktionalitäten. Zu diesem Zweck wurde ein spezielles Datenmodell, sowie entsprechende Pakete hergeleitet. Der Speicher wurde derart konzipiert, daß die Basisprodukte (DBMS, Volltextindizierer) mit geringem Aufwand eingebunden werden können. Daraus resultierend stehen viele gängige Datenbanksysteme und Indizierer für den Einsatz im Speichersystem zur Auswahl.
Unabhängig voneinander wurden zum einen eine Architektur für das Dokumentenspeichersystem und zum anderen der Aufbau, der im Speichersystem verwendeten Speicher entworfen.
In beiden Fällen geschah dies unter Berücksichtigung verschiedener vorhandener Ansätze und bekannter Verfahren.
Schließlich wurde ein Prototyp zur Evaluierung der getroffenen Entwurfsentscheidungen realisiert. Der Prototyp zeichnete sich neben den entwurfsbedingten Eigenschaften, durch den Einsatz von frei verfügbaren Basisprodukten, eine integrierte Datenbankanbindung und eine graphische Benutzeroberfläche aus.