Održavanje blokova za inicijalizaciju

Ako odlučite upotrijebiti Data Gateway ili Remote Data Connector sa servisom Oracle Analytics Cloud, postoji mala odgoda trajanja izvođenja svakog od upita.

Dodatno vrijeme pri izvođenju izvješća nećete primijetiti jer je kraće od 0,3 s. Međutim, mogli biste imati problema u izvedbi u slučaju pokretanja velikog broja (broj ovisi o vašim zahtjevima za izvedbom) blokova za inicijalizaciju kad se netko prijavljuje, budući da se upiti blokova za inicijalizaciju izvršavaju serijski. Ova tema predlaže načine za smanjenje broja blokova za inicijalizaciju sesije.

Upotrebom opcije odgode blokova za inicijalizaciju taj se problem neće riješiti, budući da se blokovi za inicijalizaciju izvršavaju nakon otvaranja prve stranice dashboarda.

To je problem ako upotrebljavate Oracle BI aplikacije, budući da se unutar njih izvodi više od 200 blokova za inicijalizaciju. Za Oracle Analytics Cloud, te probleme u izvedbi najučinkovitije je izbjeći smanjivanjem broja blokova za inicijalizaciju.

Oracle preporučuje sljedeće načine za smanjivanje broja blokova za inicijalizaciju u sesiji:

  • Onemogućite sve blokove za inicijalizaciju koji vam nisu prijeko potrebni.

    Npr., u Oracle BI aplikacijama onemogućite blokove za inicijalizaciju koji se odnose na module Oracle BI aplikacija koje više ne upotrebljavate.

  • Ako postoji pravilo prednosti, spojite sve row_wise blokove za inicijalizaciju koji upotrebljavaju isti skup veza i vraćaju istu vrstu podataka tako što ćete upotrijebiti UNION ALL između upita.

    Na primjer:

    Init block 1: query1
    
    Init block 2: query2
    
    Merged init block: query1 union all query2
  • Onemogućite sve blokove za inicijalizaciju koji odabiru vrijednost upisanu uz dual ili W_DUAL_G te upisanu vrijednost postavite u zadani incijalizator odgovarajuće varijable.
  • Preostale blokove za inicijalizaciju koji biraju podatke spojite iz dvostruke u jednostruku naredbu select.
  • Za korisnike Oracle BI aplikacija onemogućite sve blokove za inicijalizaciju koji se upotrebljavaju za dohvaćanje naziva i vrijednosti prilagođenih atributa Oracle Human Capital Management ako ne upotrebljavate pripadajući atribut (ako je standardna zadana vrijednost HIDE trenutačna vrijednost za te varijable) ili ako ne upotrebljavate Oracle Human Capital Management kao izvor podataka za Oracle BI aplikacije (postoji 100 takvih blokova za inicijalizaciju u Oracle BI aplikacijama):
    HR xxx Attribute yyy
  • Spojite sve preostale blokove za inicijalizaciju koji nisu row_wise i upotrijebite isti skup konekcija. Na primjer:

    Blok za inicijalizaciju 1 temelji se na upitu 1: select colA from tableA where….

    Blok za inicijalizaciju 2 temelji se na upitu 2: select colB from tableB where….

    Možete ih spojiti u jedan blok za inicijalizaciju s pomoću sljedećeg upita:

    Select MAX(colA), MAX(colB) from (
    
    select cola as cola, null as colB from tableA where….
    
    Union all
    
    Select null, colB from tableB where…) tmp

    Možete izvršiti koliko god ujedinjenja je potrebno za dohvaćanje svih varijabli iz istog skupa konekcija u jednom upitu.

    To nije jednostavno implementirati niti održati te riskirate pogreške pri stvaranju upita i dodjeljivanju svih varijabli jednom bloku za inicijalizaciju.

Ako pažljivo implementirate i održavate upite i varijable bloka za inicijalizaciju, možete značajno skratiti vrijeme potrebno za prijavljivanje i prikazivanje prve stranice dashboarda.