Inhaltsverzeichnis / Einleitung / Oracle TextServer mit ConText

Charakteristika von Volltextdatenbanken

Die jetzt aufgeführten Punkte stellen nur einen Teil der für Volltextdatenbanken relevanten Aspekte dar und erheben nicht den Anspruch auf Vollständigkeit. Diese Auflistung ist nur ein Kompromiß zwischen Verfügbarkeit von Informationen und Relevanz.

1 Konzepte

Der Ausgangspunkt für die Betrachtung von Volltextdatenbanken (VTDB) sollen die von ihnen verfolgten Konzepte sein. Sie bilden die Grundlage für die Funktionsweise und die Funktionalitäten eines Systems.

1.1 Datenmodell

Ein erstes Unterscheidungsmerkmal für VTDB ist die verwendete Basis, auf der die Systeme aufbauen. So könnten die Systeme unterteilt werden in : Durch die Verwendung eines DBMS als Grundlage einer VTDB werden sofort und ohne größeren Aufwand verschiedene Eigenschaften gewonnen. So können einerseits Datenbanken "innewohnende" Techniken, wie z.B. Transaktionskontrolle und andere Maßnahmen zur Integritätssicherung, Recovery, Access-Control, Parallelisierung, Multiuser-Fähigkeiten, verwendet werden. Durch Erweiterungen gewisser Teile der Datenbank (Datentypen, Anfragesprache, Indexierung) kann auf Vorhandenem aufgebaut werden. Ein weiterer Vorteil besteht in der einfachen Anbindung von strukturierten Daten.

Als Nachteil solcher Systeme können die in der Regel vorhandenen hohen Ansprüche an die Hardware, der erhöhte Aufwand bei der Verwaltung der Daten und evtl. vorhandene Schwierigkeiten bei der Integration neuer Datentypen und Operationen angesehen werden.

Für die eigenständigen Maschinen läßt sich unterscheiden, ob sie

Bei den hier betrachteten Systeme sind sowohl Erweiterungen von kommerziellen Datenbanken (Oracle, Illustra) als auch vollständig eigenständige Entwicklungen (Fulcrum, OpenText) vertreten.

1.2 Speicherung der Dokumente

Ein zweites Merkmal ist die Art der Speicherung der Dokumente. Hier lassen sich zwei Methoden unterscheiden: Beide Varianten haben sowohl Vor- als auch Nachteile. Eine Speicherung innerhalb einer Datenbank bietet so z.B. den Vorteil der Integritätssicherung, hat aber den Nachteil, daß das Dokument möglicherweise aus dem gewohnten Arbeitsablauf herausgenommen und somit einer weiteren Bearbeitung entzogen wird. Umgekehrt bedarf es bei der Belassung im File-System einer ständigen Kontrolle (automatisch oder manuell initiiert) über Veränderungen, um die Aktualität der verwendeten Indizes zu gewährleisten. Außerdem müssen für die Indexierung, Retrieval und evtl. die Darstellung der Dokumente diverse Schnittstellen bzw. Gateways (siehe Schnittstellen) zur Verfügung gestellt werden .

1.3 Retrievalmodell

Entscheidenden Einfluß auf Einsatzmöglichkeiten und Qualität im Hinblick auf seine Bestimmung, das Textretrieval, hat die Wahl des Retrievalmodells bzw. der Retrievalmodelle. Den Standard hierbei bildet das Boolesche Retrieval. Desweiteren können weitere Implementierungen existieren, z.B. des vector space models, des probabilistischen Retrievals oder andere, proprietäre Implementationen der verschiedenen Hersteller.

2 Indexierung

2.1 Methode (Indizierung)

Die Grundlage für die Effizienz der Ausführung und die Effektivität von Suchen in großen, unstrukturierten Datenmengen, sowie für den Umfang angebotener Suchfunktionalität bildet die Wahl eines geeigneten Indexes. Als Grundlage für den Index dienen zumeist invertierte Dateien im klassischen Sinn oder mit Abwandlungen bzw. Erweiterungen.

Der Index muß für die unterstützten Suchfunktionalitäten verschiedene Informationen abbilden können. Beispiele dafür sind:

2.2 Updatemodi

Wichtig für eine hohe Verfügbarkeit der Retrievalmaschine ist die Möglichkeit den Index online (vs. offline) und inkrementell (nur für geänderte Daten vs. global) aktualisieren zu können.

3 Retrieval

3.1 Angebotene Suchfunktionalitäten

Auf dem Retrievalmodell aufbauend können dem Anwender bzw. dem Anwendungsprogrammierer verschiedenste logische Operatoren, Textoperatoren und Mittel zur Transformation von Wörtern bzw. Text zur Verfügung gestellt werden. Dies geschieht zumeist mit um einige Funktionen erweiterten proprietären Anfragesprache - einem erweiterten SQL.

Eine Auswahl von häufig angebotenen Operatoren/Operationen sind:

3.2 Ergebnisdarstellung

Ein notwendiges Feature für die Auswertung der Abfrageergebnisse ist die Möglichkeit des Ranking. Dabei können ebenfalls verschiedene Methoden verwendet werden. Die einfachste Art die Suchergebnisse zu ordnen, stellt die 'SORT BY'-Klausel dar, die jedoch bei Volltextsuche kaum für das Ordnen nach Relevanz geeignet ist. So werden von den Herstellern nach eigenem Gutdünken verschiedene Rankingalgorithmen implementiert, die vom einfachen Zählen der Auftretenshäufigkeit bis zu komplizierten Methoden reichen. Unter Umständen kann man aus verschiedenen Algorithmen auswählen oder eigene programmieren.

3.3 Verfeinerung der Suche

Eine Verfeinerung der Suche kann durch die Kombination verschiedener Operationen der Abfragesprache und Ergebnisdarstellung erreicht werden, wie z.B. query refinement durch Zwischenspeicherung und Nachbearbeitung der Abfrage oder durch relevance feedback mittels einer "natürlichsprachlichen" Suche, d.h. Angabe von relevanten Textpassagen oder Dokumenten.

4 Schnittstellen

4.1 Schnittstellen für Retrieval

Neben dem oben erwähnten enhanced SQL sollten noch andere Schnittstellen für den Zugriff auf das System angeboten werden. Diese sind dann vor allem interessant zur Anwendungsentwicklung (z.B. über API, ODBC, Z39.50).

4.2 Schnittstellen für Zugriff auf externe Datenquellen

Neben dem Zugriff auf Dokumente im eigenen Filesystem ist es manchmal erwünscht, andere Datenquellen zu benutzen, für die zusätzliche Schnittstellen zur Verfügung stehen müssen. Man denke dabei z.B. an den Zugriff auf Webserver und andere Datenbanken.

4.3 Unterstützte Dateiformate

Wie schon weiter oben erwähnt, sollte die Volltextsuche auch über allen (gängigen) Dokumentenformaten ermöglicht werden können. Von den Herstellern sind solche Dokumentenfilter standardmäßig oder gegen Aufpreis erhältlich. Falls die Notwendigkeit besteht, sollte auch eine Möglichkeit zur Erstellung eigener Filter gegeben sein.

5 Performance und Retrieval-Qualität

Eigentlich war vorgesehen hier Ergebnisse aus den Projekten der Text Retrieval Conference (TREC) [T1] zu verwenden, doch leider zeigte sich, daß zumeist nur experimentelle Suchmaschinen bei den Tests vorgestellt wurden. Außerdem hat von den Firmen, deren Produkte bei unserer Gegenüberstellung betrachtet werden, nur die Firma Open Text mit der Livelink Search Engine Version 6.1 die Tests vollständig absolviert und veröffentlicht. Die anderen haben entweder die Tests nur teilweise (Oracle) bzw. nicht (Illustra) absolviert oder ihre Ergebnisse später zurückgezogen (Fulcrum).

Damit lägen für einen Vergleich nur die Evaluierungsdaten des MeDoc-Projekts vor. Diese Messungen wurden anhand einer relativ kleinen Testmenge (TIME-Suite) durchgeführt, so daß die Ergebnisse eher nur als grobe Abschätzung in Betracht gezogen werden können. Außerdem liegen diese ebenfalls nicht für alle von uns betrachteten Produkte vor (außer Oracle TextServer 3) [MTP2a].

Aus diesen Gründen findet dieser Punkt in der Gegenüberstellung keine Beachtung.

5.1 Retrieval-Qualität

Die Retrievalqualität wird in der Regel mittels der beiden Größen Recall und Precision abgeschätzt. Sie werden mit Hilfer spezieller Test-Kollektionen, die eine große Anzahl von Texten enthalten, ermittelt. Eine ebensolche Test-Kollektion wird von TREC angeboten.

5.2 Performance der Update- und Einfüge-Operationen

Eine weitere meßbare Eigenschaft für VTDB sind die für Einfüge-/Updateoperationen und Retrieval benötigten Zeiten. Diese sind jedoch stark von verwendeten Rechnern, Netzwerken, Anzahl der Nutzer, dem Datenvolumen usw. abhängig, so daß evtl. vorhandene Werte ebenfalls nur zur Abschätzung dienen können.

6 Weitere Eigenschaften

Für die Einsatz in der Praxis sind noch weitere nicht unwesentliche Bedingungen zu beachten, so z.B.:  
Inhaltsverzeichnis / Einleitung / Oracle TextServer mit ConText