ABONAMENTE VIDEO REDACȚIA
RO
EN
NOU
Numărul 150
Numărul 149 Numărul 148 Numărul 147 Numărul 146 Numărul 145 Numărul 144 Numărul 143 Numărul 142 Numărul 141 Numărul 140 Numărul 139 Numărul 138 Numărul 137 Numărul 136 Numărul 135 Numărul 134 Numărul 133 Numărul 132 Numărul 131 Numărul 130 Numărul 129 Numărul 128 Numărul 127 Numărul 126 Numărul 125 Numărul 124 Numărul 123 Numărul 122 Numărul 121 Numărul 120 Numărul 119 Numărul 118 Numărul 117 Numărul 116 Numărul 115 Numărul 114 Numărul 113 Numărul 112 Numărul 111 Numărul 110 Numărul 109 Numărul 108 Numărul 107 Numărul 106 Numărul 105 Numărul 104 Numărul 103 Numărul 102 Numărul 101 Numărul 100 Numărul 99 Numărul 98 Numărul 97 Numărul 96 Numărul 95 Numărul 94 Numărul 93 Numărul 92 Numărul 91 Numărul 90 Numărul 89 Numărul 88 Numărul 87 Numărul 86 Numărul 85 Numărul 84 Numărul 83 Numărul 82 Numărul 81 Numărul 80 Numărul 79 Numărul 78 Numărul 77 Numărul 76 Numărul 75 Numărul 74 Numărul 73 Numărul 72 Numărul 71 Numărul 70 Numărul 69 Numărul 68 Numărul 67 Numărul 66 Numărul 65 Numărul 64 Numărul 63 Numărul 62 Numărul 61 Numărul 60 Numărul 59 Numărul 58 Numărul 57 Numărul 56 Numărul 55 Numărul 54 Numărul 53 Numărul 52 Numărul 51 Numărul 50 Numărul 49 Numărul 48 Numărul 47 Numărul 46 Numărul 45 Numărul 44 Numărul 43 Numărul 42 Numărul 41 Numărul 40 Numărul 39 Numărul 38 Numărul 37 Numărul 36 Numărul 35 Numărul 34 Numărul 33 Numărul 32 Numărul 31 Numărul 30 Numărul 29 Numărul 28 Numărul 27 Numărul 26 Numărul 25 Numărul 24 Numărul 23 Numărul 22 Numărul 21 Numărul 20 Numărul 19 Numărul 18 Numărul 17 Numărul 16 Numărul 15 Numărul 14 Numărul 13 Numărul 12 Numărul 11 Numărul 10 Numărul 9 Numărul 8 Numărul 7 Numărul 6 Numărul 5 Numărul 4 Numărul 3 Numărul 2 Numărul 1
×
▼ LISTĂ EDIȚII ▼
Numărul 66
Abonament PDF

Raportare în timp real sau consolidare?

Radu Vunvulea
Solution Architect
@iQuest



PROGRAMARE

În acest articol vom supune analizei modul cum putem grupa rapoartele și dashboardurile în categorii diferite, în funcţie de viteza cu care putem aduce și actualiza datele din cadrul acestora.Timpul este un termen relativ mai ales atunci când are impact direct asupra businessului pe care îl avem. Din această cauză capacităţile de raportare ale sistemelor interne pot să aibă un impact direct asupra succesului nostru ca business.  

Sunt mai multe elemente care sunt importante când vorbim despre rapoarte și  timp de răspuns scurt, dar două din ele sunt relevante în această discuție.

1.Granularitatea datelor

Primul aspect este granularitatea timpului. La început, majoritatea decidenţilor unei afaceri doresc ca granularitatea să fie cât mai mică posibil, până când realizează că nu pot obţine ceva relevant la acest nivel. De multe ori ca să ajungi la o înţelegere profundă a ceea ce se întâmplă, ai nevoie și de un overview la un nivel mai ridicat care se traduce printr-o granularitate mai mare.Majoritatea sistemelor disponibile azi pe piaţă, ne permit să schimbăm granularitatea internă pe loc, făcând posibilă explorarea datelor noastre din diferite perspective temporale. Efectul este pozitiv pentru că generează flexibilitate și dinamicitate.

2.Intervalul de timp

Al doilea aspect este intervalul de timp măsurat din momentul în care datele ajung în sistemul nostru de stocare până în momentul în care pot fi afișate în cadrul unui raport specific. Nu afirm că ar fi imposibil să avem toate datele disponibile în cadrul unui raport la momentul 0, dar acest scenariu poate fi unul foarte costisitor și s-ar putea să nu avem nevoie de date într-un timp atât de scurt.Din proprie experienţă, vă confirm că am întâlnit clienți care spun că datele trebuie afișate într-un raport imediat ce sunt disponibile în sistem. După două sau trei întâlniri, aceștia realizează că rapoartele se generează pentru săptămâna precedentă, neexistând valoare adăugată dacă datele din raport sunt gata imediat sau după o zi.  

Evident, acest fapt are consecinţe directe asupra costului și asupra modului de implementare a soluţiei. Termenii "imediat" sau "în timp real" sunt relativi. Fiecare stakeholder înţelege termenii diferit chiar și atunci când face parte din aceeași echipă. Din acest motiv, este important să clarificăm acești termeni de la bun început.

Luând aceste aspecte în considerare, am început să grupez rapoartele și dashboardurile în patru categorii principale din punct de vedere al timpului:

Aceste categorii sunt definite pe baza intervalului de timp dintre momentul în care datele ajung în sistem și până în momentul în care pot fi afișate pe o interfață grafică sau sunt disponibile pentru a fi consumate.

Este important de știut că un grafic poate aparţine mai multor categorii (ex. Near-real time și Reporting). Chiar și așa, va exista un grafic pentru fiecare categorie. Soluţiile pe care ar trebui să le folosim, ar putea să difere de la o categorie la alta.

Real Time

În general, în această categorie intră datele ce trebuie să fie afișate într-un raport sau dashboard cu întârziere de maxim 2-3 secunde. Acestea sunt diferite view-uri ale sistemului curent folosite în special de echipele de mentenanţă și suport pentru a obţine date despre sistem în timp real.În mod frecvent, când aveţi un astfel de sistem, veţi dori să vizualizați și modificați datele de intrare în diferite feluri. Orice proces ETL crește latenţa dintre momentul primirii datelor și momentul afișării acestora. Momentan, se observă o tendinţă a companiilor de a solicita astfel de dashboarduri, dar realitatea este că nu prea multe dintre ele au nevoie de un astfel de sistem. De exemplu, dacă nu aveţi o echipă ce monitorizează sistemul 24/7, s-ar putea va valoarea adăugată să aveți un sistem de monitorizare în timp real să nu fie atât de mare. 

Mai mult, nu toate datele produse de sistem trebuie să fie parte componentă a unui sistem de raportare în real time. Un exemplu bun este monitorizarea unui grup de servere pentru că doriţi să știţi care este starea acestora și care sunt aplicaţiile care rulează în cadrul lor. Nu veţi obţine în plus nicio valoare dacă veţi putea vedea în timp real că numărul proceselor ce rulează pe servere se modifică la fiecare două secunde. O excepţie ar fi atunci când faceţi debugging, dar pentru acest lucru există Performance Counters și alte metode de a colecta și vizualiza metrici de acest gen.

Graficele real time se folosesc cu precădere în liniile de producţie din cadrul unei fabrici. În majoritatea cazurilor, chiar dacă specificaţiile iniţiale au la bază real time, odată business requirments, observăm că de fapt este vorba de un grafic near-real time, cu o latență ușor mai mare.

Near-real Time 

Acesta este un tip de grafic unde datele sunt actualizate la interval de câteva secunde. Latenţa de afișare a datelor din momentul când datele ajung în sistem și până în momentul când datele sunt afișate este de mai puţin de 30-60 secunde. Majoritatea sistemelor de timp real time sunt de fapt near-real time, neexistând un impact puternic asupra afacerii, dacă datele sunt afișate cu o latenţă de 30-60 secunde.Din perspectiva latenţei, aș afirma că până și o latenţă mai mare (2-5 minute) este tot near-real time. Pentru un astfel de sistem, cel mai important element nu este intervalul de timp actualizat, ci abilitatea de a explora datele și de a obţine perspective diferite pentru același set de date. În acest mod, echipa de suport va putea identifica problemele înainte ca acestea să apară.Majoritatea instrumentelor de raportare și monitorizare disponibile azi fac parte din această categorie. Din perspectiva costurilor, diferenţa dintre sistemele real-time și near-real time se poate ridica la valori de 3 sau 5 ori mai mari.Un instrument destul de nou, dar foarte puternic, ce poate fi folosit pentru orice tip de raportare near-real time este Azure Time Series Insights care ne permite să schimbăm perspectiva și granularitatea datelor în timp real, fără să fim nevoiți să așteptăm reprocesarea lor.

Reporting

Aceasta este categoria de grafice și rapoarte pe care obișnuiesc să o numesc "clasică". Aceste view-uri asupra datelor pot fi generate la fiecare oră, zilnic sau la interval de câteva zile. Sunt rapoartele clasice cu care suntem obișnuiți de zeci de ani.Noile versiuni de sisteme disponibile pentru această categorie oferă posibilitatea creării de rapoarte dinamice unde utilizatorul poate explora datele în funcţie de nevoi.

Consolidare

De multe ori, această categorie se suprapune categoriei precedente, datorită faptului că instrumentele folosite pentru crearea rapoartelor și view-urilor de consolidation sunt aceleași ca cele pentru reporting. Există doar un număr limitat de cazuri unde, datorită volumului și complexităţii datelor, Hadoop sau alte instrumente similare sunt utilizate pentru pre-procesarea datelor înainte de a le expune sistemelor de raportare.Graficele care sunt parte din consolidation se generează mult mai rar (o dată pe săptămână, pe lună sau pe trimestru), fiind utilizate pentru o privire de ansamblu asupra afacerii și pentru consultarea progresului. 

Categorii mixte

Categoriile reporting și consolidation se utilizează în general împreună cu succes în cadrul aceluiași intrument de analiză, permiţând utilizatorilor să aibă o privire de ansamblu și să exploreze datele.În unele cazuri,   categoriile _near-real tim_e și reporting pot fi combinate, dar nu recomand acest lucru. Cea mai mare problemă o reprezintă perspectivele diferite ce pot exista. Dacă pentru near-real time, majoritatea graficelor se axează asupra perspectivei timpului, pentru raportare, graficele nu trebuie să se axeze obligatoriu pe timp.Categoriile real time și near-real time permit perspective asemănătoare, acestea mergând mână în mână.

Concluzie

În funcţie de timpul de actualizare și de cât de repede putem procesa datele noi, putem genera o perspectivă diferită a aceluiași grafic. Deși este la modă să afișăm date în real/near-real time, întrebaţi-vă dacă este absolut necesar și care sunt compromisurile și costurile. Nu este nevoie să se ofere astfel de soluţii dacă nu există o nevoie explicită sau dacă nu aduce plus valoare.

Mai mult, nu este același lucru să stochezi date în real time, dacă acestea sunt trimise cu o frecvenţă de 10 milisecunde vs. 5 minute. Costurile de procesare și stocare sunt diferite. Instrumentele și mecanismele folosite vor fi de asemenea diferite.Da! O soluţie poate obţine date semnificative ( insight) din toate cele patru categorii. Da, puteţi găsi o metodă de a le depozita în aceleași sisteme de stocare. Da, va trebui să puteţi crea puncte statice de date pentru categoriile reporting și consolidation. S-ar putea să nu doriţi să procesaţi  100GB de date acolo unde frecvenţa datelor este de 10 milisecunde pentru a genera un raport pentru ultimele trei luni, cu o perspectivă a datelor de o zi.

NUMĂRUL 149 - Development with AI

Sponsori

  • Accenture
  • BT Code Crafters
  • Accesa
  • Bosch
  • Betfair
  • MHP
  • BoatyardX
  • .msg systems
  • P3 group
  • Ing Hubs
  • Cognizant Softvision
  • Colors in projects