Lade...
 

Index-Manager

Index-Manager

Beschreibung

Zeigt jeden in der Datenbank vorhandenen Index, mit all seinen Informationen, an. Außerdem bietet er zusätzliche Funktionen, über welche man die Indizes manuell oder automatisch pflegen kann. Auswertungsmöglichkeiten der bestehenden Indizes bietet der Index-Manager durch das Suchen nach "Doppelten Schlüsseln" oder nach "Klassen ohne Index".

Ein Index kann aktiv oder inaktiv sein, d.h. ein Index wird zunächst mit allen benötigten Daten im Indexmanager registriert, er kann aber nicht erstellt/nicht aktiv sein.

Eine Übersicht, welche Indexe erstellt werden sollten, findet man in der Anleitung zu Indexe für Queries.

Funktionalität

Eingabefenster

Dieses Fenster dient der Pflege von Indizes.

Beim Anlegen eines neuen Indexes ist es zwingend erforderlich das Datenfeld/den Zugriffsausdruck anzugeben und eine Klasse im Dropdown-Menü auszuwählen.

Verwendet man eine Retrieve - Anweisung in der Datenfeldangabe, so wird eine Sicherheitsabfrage ausgegeben. (siehe Retrieve)

Felder
Feld Beschreibung
Objekt Ist diese Option gewählt, kann man für ein Liste (collection) innerhalb des hier anzugebenden Objekts einen Index aufbauen
: Collection
(nur bei Option "Objekt")
Name der collection im Objekt
Klasse Angabe des Namens der Klasse, über die ein Index gelegt werden soll
Datenfeld Name des Datenfeldes oder Zugriffsausdrucks, für das/den ein Index gelegt werden soll.

Handelt es sich um ein Datenfeld/Zugriffsausdruck vom Typ POINTER oder REL_1M, muss am Anfang ein "@" eingefügt werden. Außerdem muss dieser Ausdruck mit dem Schlüsselwort Index im System definiert sein.
DB Layer
(nur wenn Option "Objekt" ausgeschaltet)
Datenbank Layer festlegen
Domäne
(nur wenn Option "Objekt" ausgeschaltet)
Domäne festlegen
Schlüssel Die Auswahl ist standardmäßig voreingestellt und gesperrt
: COPY_KEY Kopiert die Datenfelder, der in der Collection enthaltenen Objekte
: POINT_TO_KEY Enthält einen Pointer auf die Datenfelder, der in der Collection enthaltenen Objekte
Sortierung Die Auswahl ist standardmäßig voreingestellt und gesperrt
: Geordnet Ordnet die Collection
: Unsortiert Ordnet die Collection nicht
Duplikate -
: Duplikate erlaubt Lässt Duplikate im Index zu
: Keine Duplikate Lässt keine Duplikate im Index zu
Index aktivieren Der Index wird nicht nur im Indexmanager registriert, sondern er wird sofort erstellt
Indexoperationen aufteilen
(nur auswählbar, wenn "Index aktivieren" angewählt wurde)
Wird diese Option gewählt, kann man die Erstellung des Indexes auf mehrere Transaktionen aufteilen.

Dieses ist dann notwendig, wenn bei Aufbau eines Indexes eine "adress space overflow" exception auftritt (z.B. bei einer sehr großen collection von Objekten). In diesem Fall muss der Indexaufbau auf mehrere Transaktionen aufgeteilt werden.

Achtung: Wird der Abbau des Index auf mehrere Transaktionen aufgeteilt wird die aktuelle Transaktion, in dem der Aufruf stattfindet, automatisch beendet (commit). Sollte der Indexabbau dann nicht erfolgreich sein, oder nach dem erfolgreichen Abbau tritt ein Fehler auf, so sind trotzdem alle vor dem Aufruf durchgeführten Änderungen in der Datenbank durchgeführt worden.

 

Knöpfe
Knopf Beschreibung
OK Änderungen am Index werden gespeichert.
Schließen Das Fenster wird geschlossen, ohne Änderungen zu speichern. Wenn Sie die Änderungen sichern wollen, so müssen Sie den Knopf "OK" drücken.

 

Listenfenster

Dieses Fenster dient der Auflistung von Indizes.

Der Index Manager dient sowohl als Informationsfenster, als auch als Tool zum Bearbeiten von Indizes. So findet man zum Beispiel unter dem Menüpunkt 'Bearbeiten' Funktionen zum Löschen, Bearbeiten und Anlegen eines Indexes. Das Anlegen eines neuen Indexes, funktioniert über den Menüeintrag 'Index neu anlegen'. Über die sich nun öffnenden Eingabemaske, kann man einen neuen Index anlegen. Durch den Menüpunkt 'Index bearbeiten' gelangt man zur gleichen Eingabemaske, mit der man den zuvor selektierten Index in seinen Optionen bearbeiten kann.

Zum Löschen gelangt man über 'Bearbeiten' -> 'Index löschen'. Hier hat man noch die Wahl, den Index über die Funktion DropIndex (empfohlen) oder über RemoveEntry zu löschen. DropIndex nutzt man, um den Index vollständige aus der Datenbank und dem IndexManager zu löschen, während RemoveEntry den Index ausschließlich aus dem IndexManger entfernt (Dieser Index kann nun nicht mehr mit veränderten Optionen angelegt werden).

Suchen von Klassen ohne Indizes

Über den Menüpunkt "Klassen ohne Indizes" gelangt man zu einem Informationsfenster. Hier wählt man aus der Enumeration eine Klasse aus, von der alle abgeleiteten Klassen auf Indizes über ihre REP überprüft werden.  

Menü
Menüpunkt Beschreibung
Bearbeiten -
: Aktivieren  
: Deaktivieren  
: Index neu anlegen Neuen Index anlegen
: Index bearbeiten Selektierten Index bearbeiten
: Index löschen Selektierten Index löschen
: Schließen Fenster schließen
Dienste -
: REP collections (FindAll) -
: : Doppelte Schlüssel in REP collection suchen  
: : REP collections ohne Index suchen Informationsfenster aufrufen
: Fehlerprotokoll -
: : an Fehlerprotokoll aktivieren
: : aus Fehlerprotokoll deaktivieren
: Index(e) prüfen mit -
: : AllQuery()  
: : ExistenceQuery()  

 

Felder
Feld Beschreibung
Liste -
: Status light_small_green.png  =  Index ist aktiv
light_green_yellow.png  =  Index ist aktiv und inkonsistent
light_red_yellow.png  =  Index ist nicht aktiv und inkonsistent
light_small_red.png  =  Index ist nicht aktiv

Durch einen Fehler oder einen Absturz während der Aktivierung oder Deaktivierung eines Index mit mehreren Transaktionen bleibt der Index in einem inkonsistenten Zustand.

: Index Klasse, Layer und Domain der indizierten Collection
: Indexpfad Zugriffsausdruck
: Typ Zeigt seine Konstanten
: Erzeugt am Erzeugungsdatum

 

REP collections ohne Index suchen

Hier wählt man aus der Enumeration eine Klasse aus, von der alle abgeleiteten Klassen auf Indizes über ihre REP überprüft werden.

Felder
Feld Beschreibung
Alle Klassen abgeleitet von Auswahl der Klasse
Liste Auflistung der abgeleiteten Klassen

 

Eingabe

Felder
Feld Beschreibung
Aufteilen  
Anzahl Objekte pro Transaktion  

 

Knöpfe
Knopf Beschreibung
OK  
Abbrechen  

 

Verwandte Themen

 


Technische Dokumentation

Index Manager

Modulname

indexmgr.mod

Klassen

CX_INDEX_MANAGER

Security

Neben der Beschränkung der Zugriffsrechte über die Klasse und deren Datenfelder kann das Modul über einige der empfangenen Messages in seiner Nutzung beschränkt werden.

Empfangene Messages
Message Parameter Funktion Security
SHOW_INDEX_MANAGER keine Indexmanager aufrufen  

 

Gesendete Messages
Message Parameter Funktion Empfangs-Modul

Operativer Betrieb