Anfang des Inhaltsbereichs

Funktionsdokumentation Persistente Rollen  Dokument im Navigationsbaum lokalisieren

Verwendung

Bei einer persistenten Rolle werden deren Instanzen in eine eigene Tabelle geschrieben. Sie können persistente Rollen verwenden, um Performance-Probleme beim generischen Zugriff auf Verknüpfungen zu vermeiden.

Wenn beim Lesen von Verknüpfungen der Verknüpfungstyp nicht angegeben wird, können Performance-Probleme auftreten, weil die Verknüpfungssätze auf mehrere Tabelllen verteilt sind. Wenn ein Objekt in mehreren Verknüpfungen und mehreren Rollen auftreten kann, muß möglicherweise in einer großen Zahl von Verknüpfungstabellen in allen diesen Rollen nach Einträgen gesucht werden, selbst wenn das Objekt in gar keiner Verknüpfung auftritt.

Dieses Problem können Sie umgehen, indem Sie persistente Rollen verwenden. Es genügt dann ein Zugriff um alle Rollen zu finden, in denen das Objekt auftritt. Anschließend kann der Verknüpfungssatz gezielt in den Verknüpfungstabellen gesucht werden, die die entsprechende Rolle verwenden.

Durch die persistenten Rollen entsteht jedoch eine möglicherweise sehr große Tabelle mit redundanten Informationen. Vermeiden Sie deshalb persistente Rollen, wenn auf Verknüpfungen, in denen ein Rollentyp auftritt, nicht generisch, sondern nur mit Angabe des Verknüpfungstyps, zugegriffen wird.

Beispiel

Beim Lesen von Belegflüssen und bei der Anzeige von Verknüpfungen über die generischen Objektdienste wird die Existenz von Rollensätzen vorausgesetzt.

Verknüpfungen, die technisch (d.h. immer mit einem bestimmten Verknüpfungstyp - oder mehreren aus der gleichen Tabelle) genutzt werden, wie z.B. Notizen oder Anlagen, benötigen keine persistenten Rollen, weil beim Lesen der Verknüpfungen der Verknüpfungstyp angegeben wird.

Einen Überblick zu den Zugriffen beim Lesen von verknüpften Objekten mit und ohne persistente Rollen erhalten Sie in der folgenden Tabelle. Dabei wurde von dem Idealfall ausgegangen, dass keine Zugriffe auf Tabellen des Vorgängerdiestes notwendig sind. Zum Vergleich sind zustätzlich die Zugriffe bei dem vor Release 6.10 verwendeten Verknüpfungsdienst angegeben.

Problem

Datenbankzugriffe ohne persistente Rolle

Datenbankzugriffe bei persistenter Rolle

Verknüpfungen zu Objekt lesen

n Verknüpfungstabellen in denen der Objekttyp potentiell auftauchen kann

Wenn keine Verknüpfung existiert 1 Zugriff,

sonst: 1 + n Verknüpfungstabellen, in denen die gefundenen Rollen auftreten.

Verknüpfungen zu Objekt lesen, Rolle angegeben

n Verknüpfungstabellen in denen der Rollentyp potentiell auftauchen kann

Wenn keine Verknüpfung existiert 1 Zugriff,

sonst: 1 + n Verknüpfungstabellen, in denen die angegebenen Rollen auftreten.

Verknüpfungen zu Objekt lesen, Beziehungstyp angegeben

1 Zugriff, wenn alle Beziehungstypen in der gleichen Verknüpfungstabelle gespeichert werden.

1 Zugriff, wenn alle Beziehungstypen in der gleichen Verknüpfungstabelle gespeichert werden.

Existenz von Verknüpfungen prüfen

Entspricht dem Lesen der Verknüpfung

1 Zugriff

 

 

Ende des Inhaltsbereichs