Sémantika transakcí v Essbase

Když je krychle v režimu čtení/zápisu, Essbase považuje každý požadavek na aktualizaci na server (jako je načtení dat, výpočet nebo příkaz ve skriptu výpočtu) za transakci.

Každá transakce má aktuální stav: aktivní, potvrzená nebo přerušená. Když jsou data potvrzena, jsou převzata z paměti serveru a zapsána do krychle na disku.

Možnosti Potvrdit bloky/Potvrdit řádky na kartě Transakce v nastavení inspektoru krychle udávají frekvenci, s jakou Essbase potvrzuje datové bloky nebo řádky.

Essbase umožňuje transakcím držet zámky čtení/zápisu blok po bloku; Essbase uvolní blok po jeho aktualizaci, ale nepotvrdí bloky, dokud není transakce dokončena nebo dokud není dosaženo nastaveného limitu („bod synchronizace“).

Určete, kdy Essbase provede explicitní operaci potvrzení, zadáním následujících parametrů synchronizačního bodu:


Obrázek volby nepotvrzeného přístupu v Inspektoru krychle > Nastavení > karta Transakce ve webovém rozhraní Essbase.

  • Potvrdit bloky (počet bloků upravených předtím, než dojde k synchronizačnímu bodu). Essbase provede potvrzení po dosažení zadaného počtu bloků. Tato frekvence se může během výpočtu dynamicky upravovat.

    Pokud nastavíte volbu Potvrdit bloky na 0, dojde k synchronizačnímu bodu na konci transakce.

  • Potvrdit řádky (počet řádků k načtení, než dojde k synchronizačnímu bodu). Výchozí hodnota je 0, což znamená, že bod synchronizace nastane na konci načítání dat.

Pokud má buď volba Potvrdit bloky, nebo volba Potvrdit řádky nenulovou hodnotu, dojde k synchronizačnímu bodu, když je dosaženo prvního prahu. Pokud například Potvrdit bloky = 10, ale Potvrdit řádky = 0 a načtete data, dojde k synchronizačnímu bodu po aktualizaci 10 bloků. Pokud Potvrdit bloky = 5 a Potvrdit řádky = 5 a načtete data, dojde k synchronizačnímu bodu po načtení 5 řádků nebo po aktualizaci 5 bloků, podle toho, co nastane dříve.

Pokud Essbase Server běží na počítači Oracle Exalytics In-Memory Machine, nastavení nepotvrzeného přístupu nelze použít. K potvrzení dojde na konci příkazu nebo požadavku. Jakékoli změny, které provedete ve volbě Potvrdit bloky nebo Potvrdit řádky, budou ignorovány.

Pokud je Essbase Server spuštěn na nezávislém nasazení Windows, volba Potvrdit bloky je standardně nastavena na 3000.

Pokud během operace dojde k překročení uživatelem definovaného prahu, Essbase vytvoří synchronizační bod, aby do tohoto bodu odevzdal zpracovaná data. Essbase vytvoří tolik synchronizačních bodů, kolik je k dokončení operace potřeba.

Essbase analyzuje hodnotu voleb Potvrdit bloky a Potvrdit řádky během analýzy proveditelnosti pro paralelní výpočty. Pokud Essbase zjistí, že hodnoty jsou příliš nízké, automaticky je zvýší.

Essbase uchovává redundantní data k vynucení transakční sémantiky. Povolte místo na disku pro dvojnásobnou velikost databáze, aby bylo možné pojmout redundantní data, zejména pokud jsou bloky potvrzení i řádky potvrzení nastaveny na 0.

Nastavení bloků potvrzení a řádků potvrzení
  1. Ve webovém rozhraní Essbase přejděte na položku Transakce.
    rozhraní Redwood:
    1. Na stránce Aplikace otevřete aplikaci a poté otevřete databázi (krychli).
    2. Klikněte postupně na položky Přizpůsobení, NastaveníTransakce.
    klasickém webovém rozhraní:
    1. Na stránce Aplikace rozbalte aplikaci.
    2. V nabídce Akce vpravo od názvu krychle klikněte na položku Nastavení a poté na volbu Transakce.
  2. Proveďte výběr a klikněte na tlačítko Uložit.