Om transaktionssemantik i Essbase

Når en kube er i læse-/skrivetilstand, regner Essbase enhver opdateringsanmodning til serveren (for eksempel en dataindlæsning, en beregning eller en sætning i et beregningsscript) for at være en transaktion.

Hver transaktion har en aktuel tilstand: aktiv, bekræftet eller afbrudt. Når data bekræftes, tages de fra serverhukommelsen og skrives til kuben på disken.

Valgene Bekræftelse af blokke og Bekræftelse af rækker på fanen Transaktioner i kubefremviserens indstillinger angiver hyppigheden af bekræftelse af datablokke eller -rækker i Essbase.

Essbase tillader, at transaktioner holder læse-/skrivelåse på blokniveau – Essbase frigiver en blok, når den opdateres, men bekræfter først blokke, når transaktionen fuldføres, eller når en angivet grænse (et "synkroniseringspunkt") er nået.

Du styrer, hvornår Essbase udfører en eksplicit bekræftelsesoperation, ved at angive følgende parametre for synkroniseringspunkt:


Billede af valget for ikke-bekræftet adgang i kubefremviseren > Indstillinger > fanen Transaktioner i Essbase-webinterfacet.

  • Bekræftelse af blokke (antal modificerede blokke, før der oprettes et synkroniseringspunkt). Essbase udfører en bekræftelse, når det angivne antal blokke er nået. Denne frekvens kan blive justeret dynamisk under en beregning.

    Hvis du angiver Bekræftelse af blokke til 0, oprettes synkroniseringspunktet til sidst i transaktionen.

  • Bekræftelse af rækker (antal rækker, der skal indlæses, før der oprettes et synkroniseringspunkt). Standarden er 0, og det angiver, at synkroniseringspunktet oprettes til sidst, når dataindlæsningen er fuldført.

Hvis enten Bekræftelse af blokke eller Bekræftelse af rækker har en værdi, der ikke er nul, oprettes der et synkroniseringspunkt, når den første tærskel er nået. Hvis Bekræftelse af blokke for eksempel er 10, men Bekræftelse af rækker er 0, og du indlæser data, oprettes der et synkroniseringspunkt, når 10 blokke er opdateret. Hvis Bekræftelse af blokke er 5, og Bekræftelse af rækker er 5, og du indlæser data, oprettes der et synkroniseringspunkt, når 5 rækker er indlæst, eller når 5 blokke er opdateret, afhængigt af hvilken situation der opstår først.

Hvis Essbase Server kører på Oracle Exalytics In-Memory Machine, er indstillinger for ikke-bekræftet adgang ikke relevante. Bekræftelsen forekommer til sidst i kommandoen eller anmodningen. Eventuelle ændringer, som du foretager af indstillingerne for Bekræftelse af blokke eller Bekræftelse af rækker, ignoreres.

Hvis Essbase Server kører på en uafhængig ibrugtagning på Windows, er Bekræftelse af blokke som standard angivet til 3000.

Hvis en brugerdefineret tærskel overskrides under en operation, opretter Essbase et synkroniseringspunkt til bekræftelse af data, der er behandlet indtil det pågældende punkt. Essbase opretter så mange synkroniseringspunkter, som det kræves for at fuldføre operationen.

Essbase analyserer værdien af Bekræftelse af blokke og Bekræftelse af rækker under sin analyse af gennemførlighed til parallel beregning. Hvis Essbase vurderer, at værdierne er angivet for lavt, forøges de automatisk.

Essbase bevarer overflødige data for at gennemtvinge transaktionel semantik. Tillad dobbelt så meget diskplads som størrelsen på databasen for at have plads til overflødige data, særligt hvis både Bekræftelse af blokke og Bekræftelse af rækker er angivet til 0.

Sådan angiver du bekræftelsesblokke og bekræftelsesrækker
  1. Naviger til Transaktioner i Essbase-webinterfacet.
    I Redwood-interfacet:
    1. Åbn applikationen på siden Applikationer, og åbn derefter databasen (kuben).
    2. Klik på Tilpasning, klik på Indstillinger, og klik på Transaktioner.
    I det klassiske webinterface:
    1. Udvid applikationen på siden Applikationer.
    2. Klik på Indstillinger til højre for kubenavnet i menuen Handlinger, og klik derefter på Transaktioner.
  2. Foretag dine valg, og klik på Gem.