Ce este Sinele în Python: Exemple din lumea reală
Ce este Sinele în Python: Exemple din lumea reală
Aș dori să vă prezint cele mai bune practici pe care le-am adoptat în timpul pregătirii rapoartelor LuckyTemplates. În ultimii ani, am consumat multe resurse online despre încărcarea și transformarea datelor, care au fost esențiale în călătoria mea, dar am devenit rapid copleșit de conținut, așa că am ajuns să-mi fac propriile note. Puteți viziona videoclipul complet al acestui tutorial în partea de jos a acestui blog.
Aceasta nu este nicidecum o listă exhaustivă și nici cele mai bune practici – acestea sunt doar câteva dintre cele pe care le-am încorporat în propria mea dezvoltare. De asemenea, cele mai bune practici evoluează întotdeauna în timp pe măsură ce capabilități noi și îmbunătățite sunt introduse în aplicația LuckyTemplates și sunt prezentate de comunitatea LuckyTemplates.
Aș dori să vă prezint primul dintre cei patru piloni ai dezvoltării LuckyTemplates. Cei patru piloni sunt încărcarea și transformarea datelor , modelarea datelor , calculele DAX și rapoartele și vizualizările . Ne vom ocupa de configurația pre-dezvoltare și de primul pilon în această postare pe blog.
Cuprins
Dezactivarea datei/ora automate
Este foarte recomandat să dezactivați funcția automată de dată și oră în . Puteți face acest lucru în două moduri.
Puteți face acest lucru la nivel global pentru toate fișierele, cu acești pași:
De asemenea, îl puteți dezactiva pentru fișierul curent modificându-i setarea.
Dezactivarea detectării automate a relațiilor
De asemenea, este foarte recomandat să dezactivați relațiile de detectare automată. Puteți accesa Fișier și puteți vizualiza Opțiuni și setări pentru a dezactiva auto-detecția noilor relații după ce datele au fost încărcate.
Interacțiunea cu elementele vizuale din rapoartele LuckyTemplates
Următorul lucru despre care vreau să vorbesc sunt cele două moduri prin care puteți interacționa cu elementele vizuale din rapoartele LuckyTemplates. Aceste interacțiuni pot fi fie filtrate încrucișat , fie evidențiate încrucișat .
Evidențierea încrucișată este activată în mod implicit în LuckyTemplates. Puteți modifica acest lucru accesând Fișier, apoi Opțiuni și setări. Pentru fișierul curent din secțiunea de setări ale raportului, puteți modifica interacțiunea vizuală de la evidențierea încrucișată la filtrarea încrucișată.
Să aruncăm o privire la raportul nostru. Puteți vedea că în mod implicit, LuckyTemplates utilizează evidențierea încrucișată pe elementele vizuale asociate. Dacă dau clic pe un canal din diagrama cu bare din stânga, veți vedea că porțiunea selectată este evidențiată în culoare închisă, în timp ce porțiunea neselectată rămâne în culoare deschisă în a doua diagramă cu bare.
Puteți vedea că forma completă nu se schimbă în grafic și vedeți doar porțiunile evidențiate. Puteți modifica acest lucru din setările raportului și puteți modifica interacțiunea vizuală implicită de la evidențierea încrucișată la filtrarea încrucișată.
După ce ați făcut asta, veți vedea că forma diagramei cu bare aferente se va schimba de fiecare dată când faceți o selecție sau un grup de selecții. Aceasta este o practică bună pentru a intra.
Separarea setului de date de raport
Următorul lucru despre care vreau să vorbesc este separarea dezvoltării setului de date de dezvoltarea raportului. Aici puteți avea un fișier de set de date gros publicat ca un set de date de sine stătător care nu are elemente vizuale și un fișier de raport subțire de dezvoltare care va folosi aceste seturi de date publicate.
Unul dintre avantajele publicării seturi de date separat este că puteți utiliza procesul de aprobare în serviciul LuckyTemplates pentru a promova și a certifica seturile de date. Este o practică ideală să selectați un set de date aprobat, de preferință unul certificat, atunci când dezvoltați un nou raport.
Crearea unui tabel de date dedicat
Asigurați-vă că raportul dvs. are un tabel dedicat Datelor în raport. Puteți utiliza care este disponibil pe forumul LuckyTemplates. Puteți copia și lipi codul M într-o interogare goală.
Al doilea lucru de făcut odată ce aveți un tabel dedicat Datelor este să îl marcați ca atare. Acest lucru îi va permite să fie utilizat de LuckyTemplates pentru calcule de informații despre timp.
Alte memento-uri pentru tabelul de date
Asigurați-vă întotdeauna că tabelul de date este învecinat și că există un rând pe zi. De asemenea, verificați dacă acoperă în întregime marginile tabelului de fapte.
De asemenea, adăugați ani întregi la tabelul Date. De asemenea, este o idee bună să adăugați un an viitor suplimentar la tabelul Date pentru a activa orice calcule de informații privind timpul viitor sau prognozat.
Dacă aveți mai multe zile în tabelul Date decât doriți să afișați în raport, puteți controla ceea ce este afișat în sectoare folosind coloana IsAfterToday sau coloanele de compensare care sunt disponibile în panoul de filtrare.
Pune întrebări despre raport
Următorul lucru despre care vreau să vorbesc este dacă ar trebui să faci un raport. În timp ce o faceți, verificați dacă există un raport existent pe care îl puteți utiliza pentru a vă îndeplini nevoia. Dacă nu există niciun raport, există un model de date pe care îl puteți utiliza pentru a îndeplini nevoia? Există un set de date pe care îl puteți utiliza sau chiar trebuie să începeți de la zero?
Date de punere în scenă și de referință
Următorul lucru despre care trebuie să vorbim la încărcarea datelor este datele de punere în scenă și de referință. Când încărcați un tabel de date plat, este posibil să aveți fapte și dimensiuni în același tabel ca un fișier Excel. Când efectuați o încărcare și o mutați într-o secțiune de interogări provizorii și o redenumiți, puteți debifa Activați încărcarea .
Următorul pas este să creați o referință a acelui tabel pentru fiecare fapt și dimensiune de căutare și să redenumiți tabelele în mod corespunzător. Editați fiecare referință, păstrați numai coloanele necesare și eliminați duplicatele.
Organizați-vă modelul de date și puneți-l în propriul grup. Întotdeauna am un grup în modelele mele de date numit Data Model care are toate tabelele pe care le voi folosi în imaginile mele.
Reducerea încărcăturii de date
Următorul lucru despre care trebuie să vorbim este performanța instrumentului la încărcarea datelor. Unul dintre cele mai mari lucruri care afectează performanța este volumul de date, așa că străduiți-vă să reduceți cât mai mult posibil cantitatea de date de încărcat .
Urmați această axiomă:
Dacă nu aveți nevoie de el, nu îl recuperați.
Este mult mai ușor să adăugați lucruri noi într-un raport decât să eliminați lucruri din raportul nostru. De asemenea, atunci când puneți prea multe lucruri într-un raport, veți plăti o penalizare pentru performanța pe care nu trebuie să o experimentați.
De preferință, filtrați în sursă. Dacă nu o puteți face în sursă, utilizați săgeata derulantă a filtrului automat din interogarea de putere pentru a filtra câmpurile care vă interesează.
De asemenea, în sursă, puteți reduce numărul de coloane care sunt afișate utilizând meniul derulant Alegeți coloane și selectând numai coloanele care vă interesează.
Puteți utiliza fie Alegeți coloane , fie Eliminați coloanele . Recomand să utilizați Alegeți coloanele ca cea mai bună practică, deoarece este ușor să reveniți la.
Dacă vă răzgândiți la o dată ulterioară, vă permite o modalitate rapidă de a face acest lucru prin interfața de utilizare în loc să intrați în editorul avansat și să editați direct codul M.
Folding interogare
Plierea interogărilor este o altă încercare de încărcare a datelor de către LuckyTemplates de a combina mai mulți pași de selecție și transformare a datelor într-o singură interogare de sursă de date.
Pentru a determina dacă o interogare este pliată, faceți clic dreapta pe pașii aplicați unei interogări. Puteți vedea dacă o interogare nativă este inactivă.
Dacă este gri, atunci interogarea nu este pliată. Dacă nu este gri, atunci interogarea poate fi pliată.
Să mergem la Transformare date , apoi la interogare de alimentare . În acest tabel, dacă dau clic dreapta pe pasul de navigare, pot vedea că Vizualizare interogare nativă nu este gri, așa că o pot selecta.
Vom vedea aici o instrucțiune simplă de selectare SQL.
Dacă trecem la pasul următor după ce filtrarea a fost efectuată și vedem interogarea nativă, putem vedea că interogarea a fost ușor modificată și există o clauză „unde” în partea de jos a acelei interogări.
Dacă trecem la pasul al treilea și facem clic dreapta pe el, putem vedea că interogarea nativă nu este gri, așa că o putem selecta încă o dată.
Odată ce selectăm, putem vedea că există o prăbușire și mai mare a celor trei interogări într-una singură. Acesta este LuckyTemplates care spune că cel mai bun mod de a introduce datele în model este ca sursa să facă treaba, mai degrabă decât eu.
Utilizarea surselor de date pentru plierea interogărilor
Sursele de date care pot fi utilizate de obicei cu plierea interogărilor sunt obiecte standard din bazele de date relaționale, cum ar fi tabelele și vizualizările.
Interogările SQL personalizate către bazele de date relaționale nu pot utiliza plierea interogărilor. De asemenea, fișierele plate și datele web nu pot fi pliate.
Unele dintre transformările care pot fi utilizate cu plierea interogărilor sunt filtrarea rândurilor , eliminarea coloanelor , redenumirea coloanelor și alăturarea la alte interogări din aceeași sursă de date.
Unele dintre transformările care nu pot fi utilizate cu plierea interogărilor includ adăugarea de coloane index , modificarea tipurilor de date de coloane și îmbinarea sau adăugarea de interogări din diferite surse de date .
Alegerea modului de conectivitate corect
Următorul lucru de făcut pentru a îmbunătăți performanța este alegerea modului de conectivitate corect. Modul de import este implicit și ar trebui utilizat ori de câte ori este posibil, deoarece oferă cea mai bună performanță a raportului.
Modul de interogare directă poate fi utilizat dacă se dorește date de ultimă oră, dar trebuie doar să rețineți că poate și va avea probabil un impact negativ asupra performanței.
În cele din urmă, un mod de conexiune live este disponibil atunci când accesați depozite de date, cum ar fi cuburi multidimensionale SSAS.
Localizarea Transformărilor
Următorul lucru despre care vreau să vorbesc este locul unde urmează să fie făcute aceste transformări. Cel mai bun loc pentru a le face este în sursă . Dacă nu le puteți face în sursă, faceți-le în interogare de putere . Dacă nu le puteți face în interogare de putere, atunci faceți-le în DAX .
Efectuați transformările datelor cât mai departe posibil în amonte și cât este necesar.
Dacă puteți face ceva în interogare de putere, atunci probabil că ar trebui.
Din nou, dacă nu este ceva care este dinamic în contextul sesiunii de raport, vă rugăm să luați în considerare să faceți acest lucru în interogare de putere pentru a simplifica DAX și a crește performanța raportului.
În ceea ce privește forma meselor dvs., străduiți-vă să faceți mese reale lungi și subțiri și străduiți-vă să faceți mesele de dimensiuni scurte și late .
Cele mai bune practici privind denumirea și tipurile de date
Utilizați o schemă consecventă de denumire și majuscule , ușor de înțeles pentru utilizatorii de rapoarte. Redenumiți tabelele și interogările după cum este necesar pentru a se conforma cu standardele de denumire și majuscule pentru raportul dvs.
Redenumiți-vă coloanele după cum este necesar pentru a se conforma acelor standarde de denumire și majuscule și, de asemenea, redenumiți pașii de interogare de putere, după cum este necesar, pentru ca pașii să se autodescriere, deoarece este posibil să nu fiți persoana care menține raportul.
LuckyTemplates face o treabă excelentă în alocarea tipurilor corecte de date atunci când importă date, dar uneori sunt necesare și unele ajustări. Trebuie să vă asigurați că coloanele din tabele diferite vor fi folosite ca coloane de legătură între două tabele care sunt de același tip de date.
Asigurați-vă că toate coloanele de date sunt Data și nu Text. Împărțiți-vă coloanele de dată/oră în coloane separate Date și separate Time.
Ca pas final, verificați din nou tipurile de date . Faceți o practică înainte de a apăsa Închidere și Aplicare în interogare de putere pentru a verifica întotdeauna din nou tipurile de date, deoarece anumite transformări pot comuta în mod silențios tipurile de date în text.
Aprovizionarea datelor la o granularitate constantă
Ultimul lucru de discutat este granularitatea. În timpul procesului de încărcare și transformare a datelor, ar trebui să vă străduiți să vă proveniți datele la o granularitate consecventă. Când combinați diferite granularități în soluția dvs., utilizați interogare de putere (de preferință) sau DAX pentru a aloca datele de referință în mod corespunzător.
De exemplu, dacă datele dvs. principale de vânzări sunt la nivel zilnic, granularitatea este zilnică. Dacă datele de referință ale bugetului dvs. sunt la nivel lunar, granularitatea acestuia este lunară. Iată un exemplu de formulă DAX de alocare bugetară pe care o puteți examina pentru efectuarea ajustărilor de granularitate.
Concluzie
Sper că ați găsit util acest tutorial despre încărcarea și transformarea datelor. Dacă ați făcut-o, nu uitați să vă abonați la canalul YouTube LuckyTemplates pentru a vă asigura că sunteți notificat cu privire la orice conținut nou.
Greg
Ce este Sinele în Python: Exemple din lumea reală
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.
Î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.
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.
Î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.
Vreau să arăt cum serviciul online LuckyTemplates Apps poate ajuta la gestionarea diferitelor rapoarte și informații generate din diverse surse.
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.
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.
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