Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

În acest tutorial, veți învăța cum să optimizați o măsură în LuckyTemplates. Optimizarea măsurilor din raportul dvs. îmbunătățește performanța codurilor dvs. în producerea de informații și date valoroase. De asemenea, veți afla despre diferitele metode de evaluare și despre cum să le aplicați pentru a vă optimiza raportul. Puteți viziona videoclipul complet al acestui tutorial în partea de jos a acestui blog.

Cuprins

1. Analizați Performanța Codului

În acest exemplu, trebuie să optimizați acest raport:

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Acesta este modelul de date pe care îl veți utiliza:

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Tabelul Jobs conține toate informațiile referitoare la orice lucrare care a fost efectuată într-o anumită perioadă de timp.

Acest tabel este baza tuturor măsurilor pe care urmează să le optimizați:

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

În primul rând, trebuie să testați performanța raportului.

Accesați fila Vizualizare și alegeți Analizor de performanță . Apoi, faceți clic pe Start Recording and Refresh Visuals . Așteptați ca analizorul să redă imaginea.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

După ce ați făcut acest lucru, derulați lista de defalcare a stimulentelor și faceți clic pe Copiați interogarea .

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Apoi, selectați Instrumente externe pentru a accesa DAX Studio și priviți codul generat de LuckyTemplates.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Apoi, lipiți interogarea copiată în spațiul de lucru.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Variabile în măsură

Prima variabilă este DateClosed , care este slicer-ul de pe tabloul de bord. Utilizează o coloană din tabelul Fact pentru a obține valorile anumitor perioade în slicer.

Următoarea variabilă este JobLost , care verifică dacă există false sau necompletate ale datelor Job Lost.

Ultima variabilă este MatrixVisual . Acesta este inima codului. Afișează coloana rezumată generată de LuckyTemplates pentru a popula imaginile matriceale. Acesta grupează tipul de pierdere a locurilor de muncă în această matrice și injectează filtrele care provin de la slicere. Apoi, adaugă coloane extinse.

Odată ce coloana de rezumat finalizează execuția, veți vedea rezultatele în panoul de sub cod.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

LuckyTemplates folosește rezultatul pentru a popula imaginile matriceale.

Cache rece pentru DAX Studio

Apoi, trebuie să verificați timpul necesar executării întregului cod. Pentru a face acest lucru, porniți Timingurile serverului și apoi alegeți Clear Cache Then Run .

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Când încercați să optimizați o măsură în LuckyTemplates folosind DAX Studio , este mai bine să operați în scenariul cache rece, astfel încât timpul pe care îl veți obține să fie corect. După aceea, apăsați F5 și așteptați finalizarea operației în fila Server Timings .

Odată ce este complet, puteți vedea că timpul total de execuție este de 3,6 secunde. A petrecut cea mai mare parte a timpului în motorul de formulă și a petrecut 57 de milisecunde în motorul de stocare

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

De asemenea, puteți vedea că a găsit 383 de interogări ale motorului de stocare. Din toate aceste interogări, există 327 care sunt turnate în memorie pentru a putea fi reutilizate.

2. Analizați o măsură în LuckyTemplates

În continuare, trebuie să optimizați aceste 3 măsuri identice.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Trebuie să extrageți aceste măsuri într-un fișier diferit și să îl conectați la modelul de date pe care îl utilizați.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

După aceea, porniți Timingurile serverului pentru a vedea timpul luat de cele 3 măsuri în popularea imaginilor.

Rezultatele rulării arată că măsurile consumă 1,85 secunde pentru a prelua un rezultat.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Rezultatul arată un tabel format din 10 rânduri și 3 coloane extinse care aparțin coloanelor rezumate.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Coloana Tip pierdere conține 10 valori unice pe care codul le calculează pentru a obține procentele de stimulare.

Timpul necesar codului este exponențial de mare. Aici și când trebuie să le optimizați.

Măsura RB Incentive% în LuckyTemplates

Aceasta este o măsură RB Incentive% în LuckyTemplates. Este una dintre cele 3 măsuri principale utilizate în acest exemplu.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Puteți vedea că încearcă să calculeze procentul de stimulare.

Are o variabilă, JobType, care preia valoarea Lost Type în contextul curent al filtrului. De asemenea, verifică dacă există doar o singură valoare vizibilă în contextul curent al filtrului. Trebuie să utilizați o funcție  , astfel încât de fiecare dată când este îndeplinită o condiție, aceasta să dea rezultatul corespunzător.

Acest cod de măsurare generează multă grăsime de stocare a motorului, ceea ce mărește timpul în durata totală a codului.

Acum, reveniți la DAX Studio pentru a verifica cantitatea de interogări ale motorului de stocare pe care le generează măsura.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Puteți vedea că a fost nevoie de 600 de milisecunde pentru a executa și 43 de interogări ale motorului de stocare pentru a prelua pur și simplu datele pentru cele 10 rânduri.

Date din motorul de stocare

Acum, verificați datele care sunt solicitate de la motorul de stocare. În prima interogare, există un tip de pierdere de locuri de muncă și DCOUNT  de tipul de pierdere de locuri de muncă.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Următoarea interogare are Jobs Data Closed, care provine din slicer-ul din raport.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

În cel de-al treilea cod, veți vedea un alt tip de pierdere de locuri de muncă cu ID-ul de date de apel invers.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Într-o altă linie, veți vedea cele mai importante linii de cod.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Primul lucru pe care îl vedeți este plăților de locuri de muncă primite, facturate și cheltuielilor reale.

Urmează funcția WHERE  care afirmă o condiție și rezultatul ei corespunzător. Rezultatul va varia în funcție de selecția slicer-ului și de declarația de comutare din măsura RB Incentive%.

Veți observa, de asemenea, că codul de pe liniile 12 și 14 este același.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Dacă derulați la dreapta, puteți vedea că există linii cu aceleași interogări. Interogările de pe linii sunt direcționate de declarația switch din măsura RB Incentive%.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Dacă reveniți la măsura RB Incentive% din LuckyTemplates, puteți vedea de câte ori se repetă o interogare și cum se reflectă în interogările motorului de stocare.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Logica din spatele IF și Switch

Acum, pentru a înțelege de ce interogările sunt executate de mai multe ori, trebuie să înțelegeți logica funcțiilor  și SWITCH .

Trebuie să le executați separat într-un plan de interogare. Dar înainte de a face asta, asigurați-vă că vă conectați la baza de date și activați Planul de interogare.

Executați instrucțiunea SWITCH  în planul de interogare. Apoi, evidențiați  declarația și apoi apăsați Enter.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Aceasta va genera un plan de interogare logic cu diferite operații.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Apoi, executați instrucțiunea IF evidențiind instrucțiunea și apăsând enter.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Puteți vedea că generează același Plan de interogare logic.

Acest lucru se datorează faptului că ori de câte ori utilizați o funcție SWITCH , motorul convertește intern acea funcție într-o instrucțiune IF . Dar o instrucțiune SWITCH este recomandată deoarece crește lizibilitatea codului dvs.

După aceea, trebuie să înțelegeți cum este executat un cod în cadrul funcției IF sau SWITCH .

Acesta este un exemplu de cod care conține o instrucțiune SWITCH .

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Are măsuri pentru profitul brut, estimarea totală și facturarea totală, care sunt toate SUMA diferitelor coloane. Are, de asemenea, o funcție peste of Jobs Loss Type și o instrucțiune SWITCH și TRUE .

Când executați acest cod, veți vedea logica din spatele funcțiilor.

Prima interogare primește tipul de pierdere de locuri de muncă distinct din tabelul de locuri de muncă.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Pe lângă tipul de pierdere a locurilor de muncă, primește și suma estimării locurilor de muncă.

În interiorul condiției WHERE , puteți vedea și valorile care există în coloana Jobs Loss Type.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

3. Folosiți metode de evaluare a codului

În DAX, există 3 metode de evaluare a codurilor:

  • Evaluare strictă
  • Evaluare dornică
  • IF.Evaluare dornică

Aceste metode vă vor ajuta să optimizați un cod sau o măsură în LuckyTemplates.

Metoda 1: Evaluare strictă

Exemplul prezentat mai jos folosește metoda de evaluare strictă.

Logica din spatele acestuia este că, dacă contextul tipului de pierdere a locurilor de muncă este egal cu A, acesta va oferi profitul brut. În caz contrar, oferă Estimarea Totală. Codul face acest lucru pentru fiecare rând din Tipul pierderii locurilor de muncă.

Acesta este un alt exemplu de măsură în LuckyTemplates care utilizează evaluarea strictă.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Când executați acest cod, va genera 5 interogări de motor de stocare.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Cu Evaluare strictă, codul oferă Estimarea Totală dacă Profitul Brut înmulțit cu 1,4 este mai mare decât Estimarea Medie. În caz contrar, va oferi Profit Brut.

Utilizarea Evaluării stricte produce mai multe interogări ale motorului de stocare, deoarece instrucțiunea IF  verifică concurența Profitului Brut de mai multe ori și în cele din urmă va împiedica performanța întregii operațiuni.

Metoda a 2-a: Evaluare dornică

Acesta este același cod ca exemplul anterior.

Dar, în loc să calculeze măsurile din interiorul  instrucțiunii IF , a calculat totul în înainte de RETURN .

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Înseamnă că, înainte de a verifica declarațiile, primește toate valorile Profitului Brut și Estimarea Totală pentru toate tipurile de Pierdere a locurilor de muncă.

Când executați acest cod, numărul de motoare de stocare se reduce la 3.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Îmbunătățește performanța întregii operațiuni.

În prima interogare de operație, primește tipul de pierdere a locurilor de muncă și suma estimarii locurilor de muncă și a profitului brut.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Următoarea interogare obține suma estimării locurilor de muncă din Stabilul locurilor de muncă. Acesta este utilizat la calcularea estimării medii.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Ultima interogare oferă tipul de pierdere de locuri de muncă distinct pentru valorile scrise pe ADDCOLUMNS .

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Utilizarea Eager Evaluation obține totul într-un singur cache de date. Datele sunt, de asemenea, evaluate și repetate pe motorul de formule. Declarația IF  va returna fie Estimarea Totală, fie Profitul Brut, în funcție de evaluarea Adevărat sau Fals.

Evaluarea dornică nu este întotdeauna cea mai bună metodă de optimizare a codurilor. Evaluarea strictă va avea ca rezultat o performanță mai bună dacă aveți coduri complexe. Totul depinde de funcțiile pe care le utilizați în codul DAX.

Dezavantajul Eager Evaluation este că dacă creați obiecte de valoare înaintea unei instrucțiuni IF  sau  SWITCH  și utilizați acele variabile în interiorul instrucțiunii care nu ar trebui să fie executate niciodată, motorul va calcula în continuare acele variabile.

Dezavantaje ale evaluării dornice

Iată un exemplu de dezavantaj:

În mod ideal, dacă tipul de pierdere a locurilor de muncă este egal cu A, ar trebui să obțină profit brut. În caz contrar, primește Estimare totală.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Deoarece nu există nicio valoare în coloana Tip de pierdere a locurilor de muncă care să fie egală cu A, ar trebui să primească întotdeauna Estimare totală. Cu toate acestea, oferă în continuare profitul brut în memoria cache de date.

Dacă te uiți la prima interogare, primește tipul de pierdere a locurilor de muncă și suma profitului brut și estimarea locurilor de muncă.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

În următoarea interogare, primește un tip de pierdere de locuri de muncă distinct din tabelul de locuri de muncă.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Metoda a 3-a: IF.EAGER Evaluare

Următoarea metodă este  evaluarea funcției IF.EAGER  care reproduce comportamentul Evaluării Eager.

Vă permite să scrieți un cod care reprezintă evaluarea strictă și să-l executați cu Eager Evaluation.

Dacă te uiți la acest exemplu de cod, este exact același cu codul de evaluare strictă. Singura diferență este că aceasta folosește funcția IF.EAGER  în loc de IF .

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Înainte de a executa codul, asigurați-vă că vă conectați la modelul LuckyTemplates și activați Timingul serverului. Odată terminat, apăsați F5.

Puteți vedea că a generat 3 interogări de motor de stocare.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Prima interogare primește tipul de pierdere a locurilor de muncă și suma estimării locurilor de muncă și a profitului brut.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

A doua interogare primește suma Estimării locurilor de muncă.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Ultima interogare primește tipul de pierdere de locuri de muncă distinct din tabelul de locuri de muncă.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Veți observa că a executat același comportament ca Eager Evaluation.

Rezumatul metodelor de evaluare

În încercarea de a îmbunătăți performanța calculelor dvs., trebuie să vă amintiți următoarele:

  • Evaluarea strictă este utilizată pentru coduri complexe. Se aplică și atunci când nu doriți să evaluați toate valorile furnizate de tabel.
  • Evaluarea dornică este mai bine de utilizat dacă codurile dvs. sunt simple.
  • Folosiți IF.EAGER dacă doriți să scrieți coduri folosind Evaluarea strictă și executați-l cu Evaluarea Nerăbdătoare.

Dar rețineți că trebuie să testați aceste trei metode pentru a afla ce este cu adevărat cel mai bine de utilizat în raportul dvs.

4. Optimizați o măsură în LuckyTemplates

Lecția principală din acest tutorial este optimizarea codurilor.

Reveniți și uitați-vă la măsura RB Incentive% care este executată utilizând evaluarea strictă. Apoi, încercați să-l evaluați folosind Eager Evaluation.

Începeți prin a crea variabile și introduceți funcția  RETURN .

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Schimbați referințele de măsură cu variabilele.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

După aceea, confirmați măsura și mergeți la DAX Studio pentru a vedea dacă a îmbunătățit performanța.

Acesta arată că timpul total este de 642 de milisecunde, iar numărul total de interogări ale motorului de stocare a fost redus la 39.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Acum, creați variabilele pentru toate datele și modificați toate referințele de măsură la variabilele corespunzătoare.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Apoi, confirmați măsura și executați codul în studioul DAX.

Timpul total de execuție și cantitatea totală de interogări ale motorului de stocare au fost reduse de la 600 de milisecunde la 170 de milisecunde și, respectiv, de la 43 de interogări la 15 interogări.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

De asemenea, puteți vedea că nu există duplicate. Având variabile în codul dvs., le îmbunătățește lizibilitatea și performanța.

Optimizare avansată pentru o măsură în LuckyTemplates

Apoi, trebuie să optimizați în continuare codurile DAX.

În loc să utilizați , utilizați  funcția

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

HASONEVALUE  numără numărul de valori disponibile în contextul filtrului, care este o operație foarte intensă. Între timp, IINSCOPE verifică dacă coloana care este furnizată este folosită pentru grupare sau nu.

După modificarea funcțiilor, confirmați măsura și executați-o în DAX Studio.

Puteți vedea că numărul de interogări ale motorului de stocare este acum 12. Timpul total de execuție a devenit, de asemenea, 105 milisecunde.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

În a doua interogare, veți observa un ID de date de apel invers.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Acest lucru se întâmplă uneori când utilizați SELECTEDVALUE cu câmpul de text. Când vedeți date de apel invers, motorul de stocare apelează motorul de formule pentru a ajuta la rezolvarea complexității codului. Acest lucru încetinește performanța măsurii dvs.

Eliminați datele de apel invers

Trebuie să eliminați datele de apel invers pentru a avea o performanță mai bună în raportul dvs. Pentru a face acest lucru, trebuie să creați un tabel de configurare în modelul de date.

Accesați opțiunea Introduceți date și inserați datele. Denumiți tabelul LossTypeConfigTable .

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Apoi, faceți clic pe Editați pentru a schimba tipul de date al coloanei pe care urmează să o importați.

Tipul de date al ID-ului tipului de pierdere ar trebui să fie o valoare pentru profesor, astfel încât să poată fi utilizat în cadrul funcției SELECTEDVALUE .

Odată ce a fost încărcat în model, creați o relație între tabelul Jobs și tabelul LossTypeConfigTable pe baza tipului de pierdere.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

După ce ați creat o relație, mergeți la tabelul Jobs și adăugați o nouă coloană. Numiți-l Loss ID și apoi introduceți formula.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Utilizați funcția  pentru tabelul de configurare și apoi extrageți ID-ul tipului de pierdere.

Apoi, reveniți la măsura RB Incentive% și faceți referire la câmpul numeric în loc de câmpul text. În SELECTEDVALUE , înlocuiți tipul pierderii cu ID-ul pierderii.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Apoi, modificați toate măsurile din cod. Utilizați o valoare întreagă în loc de valori de text pentru a verifica tipul de lucrare.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

După ce ați schimbat codul, confirmați măsura și executați-o în DAX Studio.

ID-ul de date Callback este eliminat în interogare, iar timpul de execuție al codului este redus la 93 de milisecunde.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Măsura RB Incentive% este acum complet optimizată.

5. Optimizați alte măsuri în LuckyTemplates

De asemenea, trebuie să optimizați măsurile WR Incentive% și QB Incentive%.

Copiați și inserați codul exact folosit în măsura RB Incentive%. Apoi, executați cele 3 măsuri împreună.

Timpul total de execuție este optimizat și redus de la 1855 milisecunde la 213 milisecunde. Există, de asemenea, doar 12 interogări ale motorului de stocare.

Primele două interogări creează contextul de filtru, iar restul reprezintă numărul exact de valori din coloana Jobs Loss Type.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Deoarece toate măsurile au fost optimizate, rulați codul original și vedeți cum s-a schimbat performanța. Datele arată că acum este calculat în 1,9 secunde.

Măsură în LuckyTemplates: Sfaturi și tehnici de optimizare

Performanța întregului cod este acum optimizată, făcând raportul dvs. mai rapid și mai bun.


Optimizează funcțiile DAX cu acest nou curs
Transformări LuckyTemplates simple pentru date mai optimizate
Optimizează formulele LuckyTemplates folosind DAX avansat

Concluzie

În rapoartele LuckyTemplates, măsurile ar trebui optimizate pentru a se asigura că codurile DAX funcționează fără probleme. Acest lucru îmbunătățește și performanța generală a raportului dvs.

Ați învățat diferitele metode pentru a vă optimiza măsura în LuckyTemplates și ați învățat cum să evaluați pe care să o utilizați în funcție de contextul raportului dvs.


Ce este Sinele în Python: Exemple din lumea reală

Ce este Sinele în Python: Exemple din lumea reală

Ce este Sinele în Python: Exemple din lumea reală

Cum să salvați și să încărcați un fișier RDS în R

Cum să salvați și să încărcați un fișier RDS în R

Veți învăța cum să salvați și să încărcați obiecte dintr-un fișier .rds în R. Acest blog va trata, de asemenea, cum să importați obiecte din R în LuckyTemplates.

Primele N zile lucrătoare revizuite – O soluție de limbaj de codare DAX

Primele N zile lucrătoare revizuite – O soluție de limbaj de codare DAX

În acest tutorial despre limbajul de codare DAX, aflați cum să utilizați funcția GENERATE și cum să schimbați în mod dinamic titlul unei măsuri.

Prezentați perspective utilizând tehnica vizuală dinamică cu mai multe fire în LuckyTemplates

Prezentați perspective utilizând tehnica vizuală dinamică cu mai multe fire în LuckyTemplates

Acest tutorial va acoperi cum să utilizați tehnica Multi Threaded Dynamic Visuals pentru a crea informații din vizualizările dinamice de date din rapoartele dvs.

Introducere la filtrarea contextului în LuckyTemplates

Introducere la filtrarea contextului în LuckyTemplates

În acest articol, voi trece prin contextul filtrului. Contextul de filtrare este unul dintre subiectele majore despre care orice utilizator LuckyTemplates ar trebui să învețe inițial.

Cele mai bune sfaturi pentru utilizarea aplicațiilor din serviciul online LuckyTemplates

Cele mai bune sfaturi pentru utilizarea aplicațiilor din serviciul online LuckyTemplates

Vreau să arăt cum serviciul online LuckyTemplates Apps poate ajuta la gestionarea diferitelor rapoarte și informații generate din diverse surse.

Analizați modificările marjei de profit ore suplimentare – Analytics cu LuckyTemplates și DAX

Analizați modificările marjei de profit ore suplimentare – Analytics cu LuckyTemplates și DAX

Aflați cum să vă calculați modificările marjei de profit folosind tehnici precum măsurarea ramificării și combinarea formulelor DAX în LuckyTemplates.

Idei de materializare pentru cache-urile de date în DAX Studio

Idei de materializare pentru cache-urile de date în DAX Studio

Acest tutorial va discuta despre ideile de materializare a cache-urilor de date și despre modul în care acestea afectează performanța DAX-ului în furnizarea de rezultate.

Raportare de afaceri folosind LuckyTemplates

Raportare de afaceri folosind LuckyTemplates

Dacă încă utilizați Excel până acum, atunci acesta este cel mai bun moment pentru a începe să utilizați LuckyTemplates pentru nevoile dvs. de raportare a afacerii.

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți