| |
5
natenraum abhängig. Die Indexwerte befinden sich in einer anderen Domain. Indexzugänge nehmen
Werte von einer linear angeforderten Ganzzahldomain an, während Koordinaten für eine Geometrie
Paare von Ganzzahlen, floating oder Zahlen mit doppelter Genauigkeit sein können.
2.4 Oracle 8i interMedia Text Data Cartridge (OiMTDC)
OiMTDC unterstützt eine Voll-Text-Indizierung von Textdokumentationen. Der Textindex ist ein
umgewandelter Index, der eine Ereignisliste für jeden Petrinetzknoten in jedem der Textdokumente
speichert. Der umgewandelte Index wird in einer indexorganisierten Tabelle gespeichert. Er wird in der
Tabelle bearbeitet (Einsetzen, Aktualisieren und Löschen) in der definierte Textindex modifiziert wird.
Die Textcartdridge definiert einen Operator CONTAINS der als Input eine Textspalte und ein
Schlüsselwort nimmt. Dies kehrt als richtig oder falsch zurück, je nachdem ob das Schlüsselwort in der
Textspalte enthalten ist. Die Vorteile dieses ausgedehnten Indizierungsbearbeitungsrahmens sind
nach einer Auswertung von gleichen Anfragen vor und nach Oracle8i erkennbar.
Beispiel 1. Nehmen wir folgende Anfrage an:
SELECT * FROM docs WHERE Contains (resume, Oracle);
Im Vergleich zum Zustand von Oracle8i war der Textindizierungscode (obwohl er logisch betrachtet
ein Teil vom Oracle Server war) dem Anfrageoptimierer nicht als ein gültiger Zugangspfad bekannt. In
Folge dessen wurden Textanfragen immer als zweistufige Prozesse angesehen.
1. Reihen, die die Aussage erfüllen, werden identifiziert. Die Feldnamen der Reihen von allen
relevanten
Reihen
werden
in
einer
temporären
Ergebnistabelle
(genannt
Ergebnis)
geschrieben.
2. Die Originalanfrage wird als Resultat aus der Originalanfrage (minus den Textoperator) und
der temporären Ergebnistabelle, bestehend aus allen Feldnamen der Reihen die den
Textoperator erfüllen wie folgt gebildet:
SELECT d.* FROM docs d, results r WHERE d.rowid = r.rid;
In Oracle 8i bei dem man die ausgedehnte Indizierungsmethode nutzt, wird die Anfrage in einem
Schritt (in Fließbandform- Einrichtung zur überlappten Befehlsausführung) durchgeführt. Der
Textindizierungsblock wird zur vorherbestimmten Zeit bei dem Kern des Programmes aufgerufen. Es
gibt keinen Bedarf für eine temporäre Ereignistabelle, weil die Feldnamen der relevanten Reihen
durch das ODCI Interface zum Server zurückströmen. Das beinhaltet gleichzeitig, dass es keine
zusätzlichen Verbindungen gibt, die in diesem Durchführungsmodell dargestellt werden müssen.
Ausserdem müssen nicht alle Reihen, welche die Textaussage erfüllen identifiziert werden, bevor die
erste Ergebnisreihe zu ihrem Benutzer zurückgekehren kann. Die Textanfrage wurde so erweitert,
dass sie I/O reduziert, weil keine temporäre Ergebnistabelle notwendig ist. Sie reduziert die benötigte
Zeit, weil die Reihen, welche die Textanfrage erfüllen nach Anforderung identifiziert werden. Die
Textanfrage wurde verbessert, weil die Zahl der Verbindungen dadurch reduziert wurde, dass es keine
|  |
|
| |
|
|