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:
Wenn Sie den Wert für "Commit-Blöcke" auf 0 setzen, tritt der Synchronisierungspunkt am Ende der Transaktion auf.
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.