Pentru a utiliza cât mai eficient modul Hibrid:
Evitaţi utilizarea calculului în două etape în modul Hibrid. Utilizaţi în schimb ordinea de rezolvare.
Convertiţi membrii stocaţi care nu sunt de nivel 0 la Dynamic Calc ori de câte ori este fezabil.
Dacă conversia la membri cu calcul dinamic afectează ordinea de rezolvare a formulelor dependente, poate fi necesară ajustarea ordinii dimensiunilor structurii pentru a alinia ordinea de rezolvare cu ordinea de calcul în seturi anterioară şi setările de calcul în două etape.
Ordinea de rezolvare prestabilită pentru cuburile mod Hibrid este similară cu ordinea de calcul a cuburilor cu stocare în blocuri, cu unele îmbunătăţiri. Dacă doriţi să utilizaţi o ordine de rezolvare neprestabilită, puteţi să setaţi o ordine de rezolvare personalizată pentru dimensiuni şi membri.
O formulă calculată dinamic procesată în ordinea incorectă de rezolvare poate face ca o interogare să execute prea multe formule, ceea ce degradează performanţa. Atunci când este posibil, o formulă dispersată calculată dinamic ar trebui să aibă o ordine de rezolvare mai mare decât dimensiunile dispersate agregate ierarhic.
Acest lucru nu este posibil în unele aplicaţii, deoarece este necesară o ordine de rezolvare diferită pt. a obţine rezultatele corecte ale formulei. De exemplu, pt. o aplicaţie cu unităţi şi preţuri trebuie să se execute o valoare de vânzări înainte de agregările dispersate, pt. a obţine valoarea de vânzări corectă la nivelurile superioare.
Poate fi necesară ajustarea configuraţiilor dense sau neomogene (se aplică doar utilizării motorului de stocare cu blocuri în cazurile în care motorul hibrid nu poate fi utilizat).
Minimizaţi dimensiunea blocurilor, dacă este posibil.
Administratorii Essbase pot utiliza următoarele instrumente pt. a monitoriza şi optimiza performanţa interogărilor în modul Hibrid:
Pt. a limita cantitatea de memorie care poate fi consumată de orice interogare unică, utilizaţi setarea de configuraţie MAXFORMULACACHESIZE.
În cazul în care cubul dvs. are formule membre complexe cu operatori inter-dimensionali şi declaraţii IF/ELSE multiple, posibilele probleme de performanţă ar putea avea legătură cu execuţia formulei. Dacă se suspectează acest lucru, puteţi activa procesarea ascendentă a interogării pentru calcularea formulei. Astfel, se optimizează timpii de interogare prin identificarea intersecţiilor necesare pentru calcul, iar timpul de interogare devine proporţional cu dimensiunea datelor de intrare.
Pentru realizarea optimizărilor de interogare pentru versiunea 21C, folosiţi setarea configuraţiei QUERYBOTTOMUP şi funcţia de calcul @QUERYBOTTOMUP. Pentru versiunea 19C, folosiţi setarea de configuraţie IGNORECONSTANTS cu sintaxa BOTTOMUP şi funcţia de calcul @NONEMPTYTUPLE.
Utilizaţi urmărirea interogărilor pt. a monitoriza şi depana performanţa interogărilor. Sunt disponibile mai multe setări de configuraţie la nivel de aplicaţie, în funcţie de cazul dvs. de utilizare. Utilizaţi QUERYTRACE pt. depanarea pe termen scurt a unei interogări unice despre care credeţi că ar putea fi problematică. Utilizaţi TRACE_REPORT pt. colectarea de statistici despre interogările care rulează în mod concurent (ideal pt. depanarea într-un mediu de dezvoltare). Utilizaţi LONGQUERYTIMETHRESHOLD în medii de producţie pt. a tipări statistici în fişierul jurnal al aplicaţiei, în legătură cu orice interogări care rulează mai mult decât un timp definit.