Show TOC Anfang des Inhaltsbereichs

Vorgehensweisen Planungssequenz in Prozesskette einplanen  Dokument im Navigationsbaum lokalisieren

Verwendung

Über die Integration in Prozessketten können Sie Planungssequenzen im Hintergrund ausführen.

Sie können eine Planungssequenz in eine Prozesskette aufnehmen, indem Sie in eine bestehende Prozesskette einen Prozess des Prozesstyps Planungssequenz ausführen aufnehmen. In der Detailpflege des Prozesses wählen Sie die gewünschte Planungssequenz aus sowie ggf. eine passende Variablenvariante.

Bei der Ausführung im Hintergrund können Sie einstellen, ob und wie die Planungssequenz in kleinere Pakete aufgeteilt werden soll. Diese Pakete können auch parallel in einzelnen Teiljobs auf mehreren Arbeitsprozessen ausgeführt werden.

Die parallele Ausführung kann über die BI Hintergrundverwaltung (Transaktion RSBATCH) überwacht und analysiert werden. Weitere Informationen finden Sie unter Parallele Verarbeitung von BI-Prozessen einstellen.

Voraussetzungen

      Um eine Planungssequenz innerhalb einer Prozesskette einplanen zu können, müssen Sie die Planungssequenz zunächst im Planning Modeler anlegen. Weitere Informationen finden Sie unter Planungssequenzen.

      Sie haben in der Prozesskettenpflege (Transaktion RSPC) die gewünschte Prozesskette angelegt und ggf. das Verhalten der Prozesskette bei der Ausführung festgelegt. Weitere Informationen finden Sie unter Prozeßkettenpflege sowie Anzeige/Pflege der Prozesskettenattribute.

      Wenn Ihre Planungssequenz Variablen enthält, die nur über Benutzervorgaben gefüllt werden können, oder wenn Sie Variablen über Benutzervorgaben überschreiben möchten, können Sie im Planning Modeler eine Variablenvariante hinterlegen. In der Pflege des Prozesses, mit dem Sie die Planungssequenz einplanen, können Sie auf diese Variablenvariante verweisen.

Hinweis

Sie können Variablenvarianten entweder lokal für einen Benutzer oder als globale Variablenvarianten abspeichern. Wenn Sie eine lokale Variablenvariante verwenden möchten, müssen Sie den Benutzer, für den die Variablenvariante erstellt wurde, auch bei der Definition des Prozesses und als Benutzer für die Hintergrundausführung verwenden. Weitere Informationen finden Sie unter Variablen und Anzeige/Pflege der Prozesskettenattribute (Ausführungsbenutzer).

Hinweis

Beachten Sie, dass Änderungen, die kurz vor der Ausführung auf einem Applikationsserver gemacht werden, nicht unbedingt sofort auf allen Applikationsservern aktiv sind. Dies ist abhängig von den Einstellungen zur Datenbankpufferung in Ihrem System und gilt sowohl für viele BI-Objekte, als auch für Änderungen in verwendeten Kunden-Exits. Im Produktivsystem ist also dringend zu beachten, dass zwischen der letzten Änderung irgendwelcher Objekte und dem Einplanen der Prozesskette mindestens die Zeit vergangen ist, die Sie für die Aktualisierung der Datenbankpufferung gewählt haben.

Vorgehensweise

...

       1.      Legen Sie in der Prozesskettenpflege einen Anwendungsprozess vom Typ Planungssequenz ausführen an.

Hinweis

Beachten Sie, dass manche BI-Objekte bei Lesezugriffen den Tabellenpuffer verwenden. Wenn Sie also Planungssequenzen auf mehreren Servern verteilt einplanen wollen, sollten Sie darauf achten, dass die Default-Zeit, die Sie für den Tabellenpuffer eingestellt haben, zwischen dem eingeplanten Start und ihrer letzten Änderung verstrichen ist (Auslieferungs-Default ist 120s).

       2.      Wählen Sie die gewünschte Planungssequenz und ggf. eine Variablenvariante aus.

       3.      Wählen Sie Übernehmen.

       4.      Legen Sie im Bildbereich Paketierung an oder ausschalten fest, ob die Planungssequenz als Ganzes ausgeführt oder ob sie in Paketen verarbeitet werden soll.

Auswahl zur Paketierung

Auswahlmöglichkeit

Beschreibung

Ohne Paketierung verarbeiten    

Die gesamte Planungssequenz wird als Ganzes ausgeführt. Nur wenn alle enthaltenen Funktionen ohne Fehler ausgeführt werden, sichert das System abschließend alle Daten auf der Datenbank.

Bei dieser Option sind keine weiteren Einstellungen zu treffen.

In Paketen verarbeiten

Die Planungssequenz wird Schritt für Schritt ausgeführt. Das System schreibt nach jedem Schritt die veränderten Daten auf die Datenbank und löscht sie aus dem Puffer.

Sie können für jeden Schritt einstellen, ob und wie paketiert werden soll. Wenn ein Schritt paketiert wird, schreibt das System jedes einzelne Paket, dass für sich fehlerfrei verarbeitet wurde, auf die Datenbank.

Wenn Sie die Planungssequenz in Paketen verarbeiten möchten, liest das System die Schritte der Planungssequenz von der Datenbank und füllt eine Tabelle. Dabei werden nur diejenigen Schritte der Planungssequenz angezeigt, die eine Planungsfunktion ausführen.

Hinweis

Die Schrittnummern werden dabei von der Datenbank übernommen. Da die Schritte für Eingabemasken fehlen ist die Nummerierung nicht durchgängig.

       5.      Wenn Sie die Option In Paketen verarbeiten gewählt haben, können Sie für jeden Schritt wählen, welche der folgenden Paketierungsarten angewendet werden soll.

Art der Paketierung

Auswahlmöglichkeit

Beschreibung

Keine Paketierung

Für einen solchen Schritt wird genau ein Teiljob über die BI Hintergrundverwaltung eingeplant. Dieser führt die Planungsfunktion für den gesamten Filter des Schrittes aus.

Automatische Paketierung

Das Merkmal, über das der Schritt paketiert wird, wird zum Ausführungszeitpunkt automatisch bestimmt. Sie können in der letzten Spalte der Tabelle einstellen, in wie viele Pakete das System den Filter zerlegen soll.

Außerdem können Sie einstellen, ob die Werte über die Stammdatentabelle oder über die Dimensionstabelle ermittelt werden sollen. (Weitere Informationen finden Sie unten im Abschnitt Werte für ein Merkmal ermitteln.)

Konfigurierte Paketierung

Das Merkmal, über das der Schritt paketiert wird, muss ausgewählt werden. Es stehen Ihnen zwei Hilfen zur Auswahl des Merkmals zur Verfügung.

1. Zum InfoObject-Feld steht Ihnen eine Wertehilfe zur Verfügung, die es Ihnen erlaubt, für alle Merkmale, die für die Paketierung in Frage kommen, die Werteanzahlen schätzen zu lassen.

2. Sie können einige Schritte auswählen und sich für diese ein Merkmal vorschlagen lassen. Dabei können Sie zuvor in der letzten Spalte vorgeben, wie viele Pakete gebildet werden sollen.

Außerdem können Sie einstellen, ob die Werte über die Stammdatentabelle oder über die Dimensionstabelle ermittelt werden sollen. (Weitere Informationen finden Sie unten im Abschnitt Werte für ein Merkmal ermitteln.)

Für das gewählte InfoObject können Sie festlegen, wie viele Einzelwerte des Merkmals in ein Paket aufgenommen werden sollen.

Das System berechnet die Paketanzahl aus der Anzahl aller Werte dividiert durch die Wertanzahl pro Paket und rundet dies nach oben, entsprechend der Formel: Paketanzahl = ceil (Anzahl aller Werte / Wertanzahl pro Paket).

Werte für ein Merkmal ermitteln

Zur Ermittlung der Werte, die für ein Merkmal relevant sind, gibt es zwei Ansätze. In beiden Fällen wird die Merkmalseinschränkung aus dem Filter bezüglich des zu untersuchenden Merkmals verwendet.

Mit dieser Merkmalseinschränkung wird dann entweder die Stammdatentabelle oder die Dimensionstabelle gelesen. Die Stammdatentabelle enthält alle Werte, die es für dieses Merkmal gibt. Die Dimensionstabelle enthält alle Werte, die in den beteiligten InfoProvidern bereits gespeichert sind.

Hinweis

In beiden Fällen können sich die Werte in den Tabellen durch den Lauf einer Planungsfunktion ändern:

Bei allen Merkmalen, die bisher nicht im InfoProvider enthalten waren, können Werte in Dimensionstabellen geschrieben werden.

Bei Merkmalen, die keine Stammdatentabelle haben, greift das System bei der Leseart Stammdaten auf die SID-Tabelle zurück. In diesem Fall können durch den Lauf einer Planungsfunktion ebenfalls neue Werte entstehen.

Funktionsweise der Privilegsperre

Um zu vermeiden, dass Teile einer Planungssequenz nicht ausgeführt werden können, weil andere Benutzer Daten sperren, gibt der Master-Prozess eine Privilegsperren-ID an die Teiljobs mit.

Zu Beginn der Ausführung sperrt der Master-Prozess die Vereinigung aller Filter beim BI Sperrserver. Dieser setzt eine Privilegsperre, gibt die normalen Sperren wieder frei und gibt eine ID für die Privilegsperre zurück. Ab jetzt dürfen nur noch solche Arbeitsprozesse die Daten innerhalb der Filter verändern, die sich über diese Privilegsperren-ID ausweisen können. Die Teiljobs weisen sich mit der Privilegsperren-ID aus, sichern die Daten dann auch durch eine normale Sperre. Wenn die Planungssequenz vollständig abgearbeitet ist, gibt der Master-Prozess die Privilegsperre wieder frei.

Sie können die Privilegsperren in der BI-Sperrverwaltung (Transaktion RSPLSE) überwachen. (Weitere Informationen finden Sie unter Sperrkonzept und Sperrverwaltung.)

Hinweis

In seltenen Fällen (z.B. wenn der Administrator den Master-Prozess absichtlich abbricht) kann es vorkommen, dass die Privilegsperre nicht vom System freigegeben wird. Sie können die Privilegsperre dann manuell in der BI-Sperrverwaltung löschen. Dies setzt allerdings voraus, dass Sie die Berechtigung zum Ausführen der Planungssequenz haben. Wenn Teiljobs noch offen sind, kann das System diese dann nicht mehr erfolgreich ausführen.

Bestimmung der Merkmale, die für die Paketierung in Frage kommen

Nicht alle Merkmale einer Aggregationsebene, auf der eine Planungsfunktion angelegt ist, kommen für die Paketierung in Frage.

       Im Hinblick auf die Funktion kommen nur diejenigen Merkmale in Frage, die nicht zu verändernde Merkmale sind.

Wie oben im Abschnitt über die Funktionsweise der Privilegsperre beschrieben, erfragen die Teiljobs für ihre Filterpakete echte Sperren bei der BI-Sperrverwaltung. Für jeden Realtime-fähigen InfoCube können Sie in der BI-Sperrverwaltung konfigurieren, welche seiner Merkmale für Sperren relevant sein sollen. Um zu vermeiden, dass sich die Teiljobs gegenseitig sperren, weil ihre Filterpakete aus Sicht der Sperrverwaltung nicht zu separieren sind, können nur ausgesuchte Merkmale zur Paketierung verwendet werden.

       Im Hinblick auf die Sperrverwaltung kommen ebenfalls nur bestimmte Merkmale zur Paketierung in Frage. Wie diese bestimmt werden, sehen Sie in der folgenden Tabelle:

Typ der Aggregationsebene

Bestimmung der zur Paketierung erlaubten Merkmale auf dieser Aggregationsebene

Einfache Aggregationsebene (ist direkt auf einem Realtime-fähigen InfoCube angelegt)

Erlaubt sind genau die für Sperren relevanten Merkmale des Realtime-fähigen InfoCubes.

Komplexe Aggregationsebene (ist auf einem MultiProvider angelegt)

Ein Merkmal ist genau dann erlaubt, wenn die folgende Regel für alle beteiligten Realtime-fähigen InfoCubes erfüllt ist: Wenn das Merkmal von einem Realtime-fähigen InfoCube versorgt wird, muss es in diesem relevant für Sperren sein.

Die folgende Grafik veranschaulicht den Fall einer komplexen Aggregationsebene:

Diese Grafik wird im zugehörigen Text erklärt

Die Planungsfunktion F1 ist auf der Aggregationsebene A1 angelegt.

Die Aggregationsebene A1 ist auf dem MultiProvider MP1 angelegt.

Dieser wird aus den InfoCubes C1, RC1 und RC2 versorgt.

Der InfoCube C1 ist kein Realtime-fähiger InfoCube. Aus ihm werden die Merkmale A, B, C, D und E im MultiProvider MP1 versorgt. Auf ihm werden keine Sperren verwaltet. Er ist daher bei den weiteren Betrachtungen nicht relevant.

Der InfoCube RC1 ist ein Realtime-fähiger InfoCube. Aus ihm werden die Merkmale A, B, C, D und F im MultiProvider MP1 versorgt. In der Sperrverwaltung sind davon die Merkmale A, B, D und F als für Sperren relevant eingetragen.

Der InfoCube RC2 ist ein Realtime-fähiger InfoCube. Aus ihm werden die Merkmale A, D, E und F im MultiProvider MP1 versorgt. In der Sperrverwaltung sind davon die Merkmale A, E und F als für Sperren relevant eingetragen.

Nach der oben genannte Regel ergeben sich aus den Merkmalen des MultiProviders die Merkmale A, B, E und F als zur Paketierung erlaubt:

       A und F werden aus RC1 und RC2 versorgt und sind in beiden für Sperren relevant. A und F sind daher erlaubt.

       B wird nur aus RC1 versorgt und ist dort für Sperren relevant. B ist daher erlaubt.

       C wird nur aus RC1 versorgt und ist dort nicht für Sperren relevant. C ist daher nicht erlaubt.

       D wird aus RC1 und RC2 versorgt, ist aber in RC2 nicht für Sperren relevant. D ist daher nicht erlaubt.

       E wird nur aus RC2 versorgt und ist dort für Sperren relevant. E ist daher erlaubt.

Da die Aggregationsebene F nicht enthält, bleiben die Merkmale A, B und E übrig.

In der Planungsfunktion wird E als zu veränderndes Merkmal verwendet. Also kommen nur A und B zur Paketierung in Frage.

Automatische Auswahl eines Merkmals

Wenn die automatische Auswahl eines Merkmals angefordert wird, müssen auch die gewünschte Anzahl der Pakete und die gewünschte Art der Ermittlung der Werte definiert sein.

Das System bestimmt dann die zur Paketierung erlaubten Merkmale. Für diese wird der Reihe nach ermittelt, wie viele Merkmalswerte in der jeweiligen Merkmalseinschränkung enthalten sind. Sobald ein Merkmal gefunden wird, für das das System mehr Merkmalswerte gefunden hat als Pakete angefordert sind, wird dies zur Paketierung vorgeschlagen bzw. verwendet.

Zerlegung des Filters in Pakete

Wenn für einen Schritt ein Filter in Pakete zerlegt werden soll, wird zuvor definiert, welches Merkmal zur Paketierung verwendet wird, welche Art der Ermittlung der Werte verwendet wird, und es wird entweder die Paketanzahl oder die Werteanzahl pro Paket festgelegt.

Die Werte werden nun zufällig (aber reproduzierbar) auf die Menge der Pakete verteilt, so dass jedes Paket mindestens einen Wert enthält aber nicht mehr als die Werteanzahl pro Paket.

Einstellungen zur physischen Parallelität

Über Parallelverarbeitung in der Pflege des Prozesses vom Typ Planungssequenz ausführen haben Sie die Möglichkeit, für diesen Prozess die Standardwerte für den Prozesstyp PLSEQ zu überschreiben.

Die Standardwerte für einen Prozesstyp können Sie in der BI Hintergrundverwaltung hinterlegen. Weitere Informationen finden Sie unter Parallele Verarbeitung von BI-Prozessen einstellen.

Sie können über diese Einstellungen festlegen,  

       in wie vielen parallelen Arbeitsprozessen die Teiljobs ausgeführt werden sollen

       auf welchen Servern diese Arbeitsprozesse ausgeführt werden sollen

       mit welcher Priorität die Teiljobs ausgeführt werden sollen

Abarbeitung der Planungssequenz Schritt für Schritt

Wenn Sie die Option In Paketen verarbeiten gewählt haben, wird die Planungssequenz Schritt für Schritt abgearbeitet.

Jeder Schritt wird in die gewünschte Anzahl von Teiljobs zerlegt; dann werden alle Teiljobs des Schrittes über die BI Hintergrundverwaltung eingeplant. Der Master-Prozess überprüft, ob alle Teiljobs des letzten Schrittes ausgeführt wurden. Sobald dies geschehen ist, wird, falls alle Teiljobs erfolgreich waren, mit dem nächsten Schritt fortgefahren. Wenn einer der Teiljobs mit einem Fehler abgebrochen ist, wird die Planungssequenz nicht weiter ausgeführt. In diesem Fall plant der Master-Prozess noch einen Abschluss-Teiljob ein, der dazu dient, der BI Hintergrundverwaltung mitzuteilen, dass die reservierten physischen Arbeitsprozesse freigegeben werden können. Der Master-Prozess gibt abschließend auch die Privilegsperre frei.

Die schrittweise Abarbeitung einer Planungssequenz veranschaulicht das Beispiel Planungssequenz für Bottom-Up-Planung.

Ende des Inhaltsbereichs