Kuriant savo langus aplikacijose, neretai prireikia tam tikrų specifinių požymių duomenų suskirstymui pagal tam tikrus kriterijus ar jų sugrupavimui į grupes pagal tam tikrus požymius. Žinoma, tokiais atvejais visuomet įmanoma atsidaryti duomenų pakrovimo redaktoriaus langą ir atlikti reikiamus pakeitimus aplikacijos krovimosi kode. Tačiau tai ne visuomet yra įmanoma: tokios teisės dažnai būna apribotos BI sistemų administratoriaus, o papildomų leidimų gavimas gali užtrukti. Tai suprantama, nes aplikacijos, kurios apima tokias analizės sritis kaip Atsargos, Lojalumas, Kvitai, Finansai, paprastai būna itin didelės ir, jei kiekvienas naudotojas darys pakeitimus aplikacijos pakrovimo kode, gali kilti rimtų greitaveikos problemų. Iš kitos pusės, net ir atlikus pakeitimus aplikacijos pakrovimo kode, gali tekti ilgokai palaukti, kol aplikacija persikraus ir išsisaugos.
Ką gi tuomet daryti naudotojui (duomenų analitikui), jei jis nori turėti funkcionalumą čia ir dabar, nelaukdamas leidimų ar aplikacijos persikrovimų? Išeitis yra ir ji tiesiogiai susijusi su vienu iš Qlik funkcionalumų, kurį vadiname “suskaičiuotomis dimensijomis” (calculated dimensions). Suskaičiuota dimensija – tai dimensija, kurios išraiškoje panaudojami viena arba kelios Qlik funkcijos ar rodikliai.
Įvedus „calculated dimensions“ Qlik‘o pagalbos puslapyje, gauname šio funkcionalumo aprašą su viena labai svarbia pastaba:
Į šia pastabą reikėtų rimtai atsižvelgti, jei norima, kad tolesnis suskaičiuotų dimensijų kūrimas „nenužudytų“ aplikacijos. Taigi, jei suskaičiuota dimensija veikia lėtai ir „laužia“ aplikaciją, ją reikia transformuoti į ETL kodą.
Kaip galima praktiškai panaudoti suskaičiuotų dimensijų funkcionalumą aplikacijoje? Praktinių situacijų nagrinėjimui pasirinksime vieną iš populiariausių analitinių aplikacijų – Lojalumo analizės.
Lojalumo analitikoje verslo klausimai dažniausiai sukasi aplink du rodiklius – apsipirkimo sumą ir apsipirkimo dažnį. Apsipirkimo suma parodo, už kokią vertę klientas įsigijo prekių, o apsipirkimo dažnis, – kaip dažnai jis tai darė. Šiuos rodiklius (kurių duomenys jau yra duomenų modelyje) galima „pjaustyti“ ir nagrinėti įvariausiais pjūviais: pagal laiką, klientus, prekes ir t.t. Tačiau, ką daryti tuomet, jei norime patį rodiklį „pjaustyti“ pagal jį patį ar kitus rodiklius. Štai čia ir gali padėti suskaičiuotų dimensijų funkcionalumas.
Padalinkime apsipirkimo sumos rodiklį pagal apsipirkimo dažnio rodiklį. Pirmiausiai apskaičiuojame abu rodiklius atskirai:
Apsipirkimo suma
Apsipirkimo dažnis
Perkėlus šias formules į aplikaciją ir sukūrus lentelės objektą gauname tokį rezultatą:
Išskaidome rodiklius pagal apsipirkimo dažnio rėžius kas 10 dienų, sukurdami suskaičiuotą dimensiją:
Šią dimensiją pavadinę apsipirkimo dažnio segmentu, ataskaitoje matome štai tokį vaizdą:
Remiantis ta pačia metodika, galima apskaičiuoti Apsipirkimo sumos segmento dimensiją:
Lojalumo analitikoje neretai kyla poreikis suskaidyti klientus į keletą pagrindinių segmentų, juos nustatant pagal apsipirkimo dažnio ir apsipirkimo sumos rodiklius. Tokio segmentavimo pavyzdys gali būti klientų suskirstymas į Auksinius, Sidabrinius ir Bronzinius. Tarkime, kad segmentai turėtų būti padalinti pagal šiuos kriterijus:
- Auksiniai – perka <=3 d., apsipirkimo suma >= 200 EUR
- Sidabriniai – perka >3 d. <= 20 d., apsipirkimo suma >=50 EUR ir < 200 EUR
- Bronziniai – visi likę.
Suskaičiuota kliento segmento dimensija gali būti aprašyta tokia formule:
Aplikacijoje suskaičiuotas rezultatas atrodo taip:
Apie suskaičiuotas dimensijas daugiau galite paskaityti Qlik puslapyje.
Turite klausimų, rašykite info@dayq.eu.
Informaciją parengė Jonas Čepinskis, Qlik architektas | Day Q, Qlik Master Reseller partneris