Transaktionssemantik in Essbase

Wenn sich ein Cube im Lese-/Schreibmodus befindet, betrachtet Essbase jede Aktualisierungsanforderung an den Server (z.B. Dataload, Berechnung oder Anweisung in einem Berechnungsskript) als Transaktion.

Jede Transaktion hat einen aktuellen Status: Aktiv, Festgeschrieben oder Abgebrochen. Beim Festschreiben von Daten werden diese aus dem Serverarbeitsspeicher in den Cube auf Datenträger geschrieben.

Die Optionen "Commit-Blöcke" bzw. "Commit-Zeilen" auf der Registerkarte "Transaktionen" in den Einstellungen des Cube-Inspektors geben an, wie häufig Essbase Datenblöcke oder Zeilen festschreibt.

In Essbase können Transaktionen Lese-/Schreibsperren pro Block verhängen. Essbase gibt einen Block nach seiner Aktualisierung frei, schreibt Blöcke jedoch erst fest, nachdem die Transaktion abgeschlossen ist oder ein festgesetzter Grenzwert ("Synchronisierungspunkt") erreicht wurde.

Sie können steuern, wann Essbase einen expliziten Commit-Vorgang ausführt, indem Sie die folgenden Synchronisierungspunktparameter angeben:


Abbildung der Option "Zugriff ohne Commit" unter Cube-Inspektor > Einstellungen > Registerkarte "Transaktionen" in der Essbase-Weboberfläche.

  • Commit-Blöcke (Anzahl der geänderten Blöcke vor dem Auftreten eines Synchronisierungspunkts). Essbase führt einen Commit-Vorgang aus, nachdem die angegebene Anzahl an Blöcken erreicht wurde. Diese Häufigkeit kann während einer Berechnung dynamisch angepasst werden.

    Wenn Sie den Wert für "Commit-Blöcke" auf 0 setzen, tritt der Synchronisierungspunkt am Ende der Transaktion auf.

  • Commit-Zeilen (Anzahl der Zeilen, die vor dem Auftreten eines Synchronisierungspunkts geladen werden sollen). Der Standardwert ist 0. Dies bedeutet, dass der Synchronisierungspunkt am Ende des Dataload-Vorgangs auftritt.

Wenn eine der Optionen "Commit-Blöcke" oder "Commit-Zeilen" einen Wert ungleich 0 hat, tritt der Synchronisierungspunkt beim Erreichen des ersten Schwellenwertes auf. Beispiel: Wenn für "Commit-Blöcke" der Wert 10, für "Commit-Zeilen" jedoch der Wert 0 festgelegt ist, tritt bei einem Dataload ein Synchronisierungspunkt nach dem Aktualisieren von 10 Blöcken auf. Wenn für "Commit-Blöcke" der Wert 5 und für "Commit-Zeilen" ebenfalls der Wert 0 festgelegt ist, tritt bei einem Dataload ein Synchronisierungspunkt auf, nachdem 5 Zeilen geladen oder 5 Blöcke aktualisiert wurden, je nachdem, was zuerst eintritt.

Wenn Essbase-Server auf Oracle Exalytics In-Memory Machine ausgeführt wird, gelten die Einstellungen für den Zugriff ohne Commit nicht. Der Commit-Vorgang erfolgt am Ende des Befehls oder der Anforderung. Änderungen, die Sie an den Einstellungen unter "Commit-Blöcke" oder "Commit-Zeilen" vornehmen, werden ignoriert.

Wenn Essbase-Server auf einem unabhängigen Deployment unter Windows ausgeführt wird, ist unter "Commit-Blöcke" der Standardwert 3000 festgelegt.

Wird während eines Vorgangs ein von einem Benutzer definierter Schwellenwert überschritten, erstellt Essbase einen Synchronisierungspunkt, um die bis zu diesem Punkt verarbeiteten Daten festzuschreiben. Essbase erstellt so viele Synchronisierungspunkte, wie zum Abschließen des Vorgangs erforderlich sind.

Essbase analysiert den Wert unter "Commit-Blöcke" und "Commit-Zeilen" während der Analyse, um herauszufinden, ob eine parallele Berechnung möglich ist. Wenn Essbase feststellt, dass die Werte zu niedrig eingestellt sind, werden diese automatisch erhöht.

Essbase bewahrt redundante Daten auf, um die Transaktionssemantik zu erzwingen. Stellen Sie Datenträgerspeicherplatz für die doppelte Datenbankgröße bereit, um die redundanten Daten aufzunehmen, insbesondere in Fällen, in denen die Werte unter "Commit-Blöcke" und "Commit-Zeilen" auf 0 gesetzt sind.

So legen Sie Commit-Blöcke und Commit-Zeilen fest
  1. Navigieren Sie in der Essbase-Weboberfläche zu Transaktionen.
    Führen Sie in der Redwood-Oberfläche folgende Schritte aus:
    1. Öffnen Sie auf der Seite "Anwendungen" die Anwendung und dann die Datenbank (den Cube).
    2. Klicken Sie auf Anpassung, Einstellungen, Transaktionen.
    Führen Sie in der klassischen Weboberfläche folgende Schritte aus:
    1. Blenden Sie auf der Seite "Anwendungen" die Anwendung ein.
    2. Klicken Sie rechts neben dem Cube-Namen auf das Menü Aktionen, wählen Sie Einstellungen aus, und klicken Sie auf Transaktionen.
  2. Treffen Sie Ihre Auswahl, und klicken Sie auf Speichern.