{"id":55144,"date":"2020-01-13T00:00:00","date_gmt":"2020-01-12T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/tableau-v-roznitse-realno"},"modified":"2020-02-18T14:03:13","modified_gmt":"2020-02-18T11:03:13","slug":"tableau-v-roznitse-realno","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/news\/tableau-v-roznitse-realno","title":{"rendered":"Tableau ja jaotuses, kas see on t\u00f5esti v\u00f5imalik?","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><b>Excelis aruandmisaeg on kiiresti m\u00f6\u00f6das \u2014 mugavate info esitamise ja anal\u00fc\u00fcsi t\u00f6\u00f6riistade suundumus on n\u00e4htav k\u00f5igis valdkondades. Oleme juba ammu arutanud digiteerimists\u00fcklit ja valinud visualiseerimise ja iseteeninduse anal\u00fc\u00fcsi s\u00fcsteemiks Tableau. Aleksandr Bezugly, anal\u00fc\u00fctiliste lahenduste ja aruandluse osakonna juht M.Video-Eldorado grupis, r\u00e4\u00e4kis lahinguplaani dashboard'i ehitamise kogemusest ja tulemustest.<\/b><\/p>\n<p>Saan kohe \u00f6elda, et mitte k\u00f5ike, mis oli plaanitud, ei \u00f5nnestunud ellu viia, kuid kogemus oli huvitav, loodan, et see on kasulik ka teile. Kui kellelgi on ideid, kuidas oleks saanud paremini teha \u2013 olen v\u00e4ga t\u00e4nulik n\u00f5uannete ja ideede eest.<\/p>\n<p><img decoding=\"async\" alt=\"Tableau ja jaotuses, kas see on t\u00f5esti v\u00f5imalik?\" src=\"\/wp-content\/uploads\/2020\/01\/81c41899e9b3acf1858a4faa627c121b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAllpool on, millega me silmitsi seisime ja mida \u00f5ppisime.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h4>Kust me alustasime<\/h4>\n<p>\nM.Video-Eldorados on h\u00e4sti l\u00e4bim\u00f5eldud andmemudel: struktureeritud teave vajaliku salvestuse s\u00fcgavusega ja tohutu hulk fikseeritud vormi aruandeid (vt l\u00e4hemalt <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/mvideo\/blog\/462015\/\">seda artiklit<\/a><\/noindex>). Nendest teevad anal\u00fc\u00fctikud kas kokkuv\u00f5tteid v\u00f5i vormindatud jagamisi Excelis, v\u00f5i ilusate esitlustena PowerPointis l\u00f5ppkasutajatele.<\/p>\n<p>Umbes kaks aastat tagasi hakkasime fikseeritud vormi aruannete asemel looma anal\u00fc\u00fctilisi aruandeid SAP Analysis'is (Exceli lisand, p\u00f5him\u00f5tteliselt \u2014 kokkuv\u00f5tte tabel OLAP mootoril). Kuid see t\u00f6\u00f6riist ei suutnud katta k\u00f5igi kasutajate vajadusi, enamik j\u00e4tkas teabe kasutamist, mille anal\u00fc\u00fctikud on t\u00e4iendavalt t\u00f6\u00f6tlenud.<\/p>\n<p>Meie l\u00f5ppkasutajad jagunevad kolme kategooriasse:<\/p>\n<p><b>Tippjuhtkond<\/b>. K\u00fcsi teavet h\u00e4sti esitatud ja arusaadavas vormis.<\/p>\n<p><b>Keskmine juhtkond<\/b>, edasij\u00f5udnud kasutajad. Huvi avaldavad andmete uurimise vastu ja suudavad iseseisvalt aruandeid koostada, kui neil on t\u00f6\u00f6riistad. Just nemad on saanud SAP Analysis'i anal\u00fc\u00fctiliste aruannete v\u00f5tmekasutajateks.<\/p>\n<p><b>Mugavad kasutajad<\/b>. Ei tunne huvi iseseisva andmete anal\u00fc\u00fcsi vastu, kasutavad aruandeid piiratud vabaduse astmega, jagamisformaatides ja kokkuv\u00f5tte tabelites Excelis.<\/p>\n<p>Meie idee oli rahuldada k\u00f5ikide kasutajate vajadused ja anda neile \u00fcks mugav t\u00f6\u00f6riist. Otsustasime alustada tippjuhtkonnast. Neil olid vaja mugavaid paneele p\u00f5hiv\u00e4\u00e4rtuste anal\u00fc\u00fcsimiseks. Nii alustasime Tableau'ga ja valisime alguseks kaks suunda: jaem\u00fc\u00fcgim\u00fc\u00fcgi ja online m\u00fc\u00fcgi n\u00e4itajad piiratud s\u00fcgavuse ja laiusega anal\u00fc\u00fcsis, mis kataks umbes 80% tippjuhtkonna n\u00f5utud andmetest.<\/p>\n<p>Kuna armatuurlaudade kasutajad olid tippjuhtkond, lisandus veel \u00fcks toote t\u00e4iendav KPI \u2013 reageerimiskiirus. Keegi ei taha oodata 20-30 sekundit, kuni andmed uuenevad. Navigeerimine pidi mahtuma 4-5 sekundi sisse, v\u00f5i veel parem, t\u00f6\u00f6tama koheselt. Ja seda me, kahjuks, saavutada ei suutnud.<\/p>\n<p>Nii n\u00e4gi v\u00e4lja meie p\u00f5hilaudade makett:<\/p>\n<p><img decoding=\"async\" alt=\"Tableau ja jaotuses, kas see on t\u00f5esti v\u00f5imalik?\" src=\"\/wp-content\/uploads\/2020\/01\/a7a028feee6542dfbc1fd3c2feeaa3de.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nP\u00f5hijoon on koondada peamised KPI-mootorid, mida kokku tuli 19, vasakule ja esitada nende d\u00fcnaamika ja jaotus peamiste atribuutide j\u00e4rgi paremale. \u00dclesanne n\u00e4ib lihtne, visualiseerimine loogiline ja arusaadav, kuni ei l\u00e4he detailidesse.<\/p>\n<h2>Detail 1. Andmemaht<\/h2>\n<p>\nPeamine aastane m\u00fc\u00fcgitaabel h\u00f5lmab meid umbes 300 miljonit rida. Kuna on vajalik peegeldada ka d\u00fcnaamikat eelnevatest ja \u00fcle-eelmistest aastatest, on andmemaht ainult tegelike m\u00fc\u00fckide osas umbes 1 miljard rida. Ja lisaks hoitakse eraldi teavet planeeritud andmete ja internetim\u00fc\u00fcgi kohta. Seet\u00f5ttu, vaatamata sellele, et kasutasime veergude p\u00f5hist in-memory andmebaasi SAP HANA, t\u00f6\u00f6tas p\u00e4ringu kiirus, mis valis k\u00f5ik n\u00e4itajad \u00fche n\u00e4dala kohta praegustest ladustamistest reaalajas, umbes 15-20 sekundit. Selle \u00fclesande lahendus on ilmselge \u2013 t\u00e4iendav andmete materialiseerimine. Kuid sellel on ka oma allvees\u00fcngid, neist r\u00e4\u00e4gime allpool.<\/p>\n<h2>Detail 2. Mitteadditiivsed n\u00e4itajad<\/h2>\n<p>\nMeil on paljusid KPI-sid seotud t\u0161ekkide arvu kohta. Ja see n\u00e4itaja kujutab endast DISTINCT COUNT ridade arvu (t\u0161ekkide pealkirjad) ja n\u00e4itab erinevaid summasid s\u00f5ltuvalt valitud atribuutidest. N\u00e4itena, kuidas seda n\u00e4itajat ja sellest tulenevat tuleks arvestada:<\/p>\n<p><img decoding=\"async\" alt=\"Tableau ja jaotuses, kas see on t\u00f5esti v\u00f5imalik?\" src=\"\/wp-content\/uploads\/2020\/01\/0a6d676f0a5c2b779a5e7892b1f54929.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nArvutuste t\u00e4psuse tagamiseks saab:<\/p>\n<ul>\n<li>Selliste n\u00e4itajate arvutamine reaalajas andmehoidlas;\n<\/li>\n<li>Arvutada kogu andmemahu p\u00f5hjal Tableau's, st Tableau'sse p\u00e4ring tehes anda k\u00f5ik valitud filtrite j\u00e4rgi andmed t\u0161ekkide positsioonide granulaarsuses;\n<\/li>\n<li>Luua materialiseeritud vitriin, kus arvutatakse k\u00f5ik n\u00e4itajad k\u00f5igis valikute variantides, mis annavad erinevaid mitteaditiivseid tulemusi.\n<\/li>\n<\/ul>\n<p>\nOn selge, et n\u00e4ites UTE1 ja UTE2 \u2013 need on materjali atribuudid, mis esindavad kaubanduslikku hierarhiat. See ei ole staatiline asi, selle kaudu toimub juhtimine ettev\u00f5tte sees, kuna erinevate kaubagruppide eest vastutavad erinevad juhid. Meil on olnud palju globaalseid \u00fclevaateid sellest hierarhiast, kui k\u00f5ik tasemed muutsid, kui vaadati \u00fcle omavahelised seosed, samuti pidevaid t\u00e4iendavaid muudatusi, kui \u00fcks grupp liigub \u00fchest s\u00f5lmest teise. Tavalises aruandluses arvestatakse seda reaalajas, l\u00e4htudes materjali atribuutidest; andmete materialiseerimise korral tuleb v\u00e4lja t\u00f6\u00f6tada mehhanism selliste muudatuste j\u00e4lgimiseks ja ajalooliste andmete automaatseks \u00fclelaadimiseks. See on \u00fcsna keeruline \u00fclesanne.<\/p>\n<h2>Detail 3. Andmete v\u00f5rdlemine <\/h2>\n<p>\nSee punkt on sarnane eelmisele. Asi on selles, et ettev\u00f5ttes anal\u00fc\u00fcsi tegemisel on kombeks luua mitu taset v\u00f5rreldes eelmise perioodiga:<\/p>\n<p><i>V\u00f5rdlemine eelmise perioodiga (p\u00e4ev p\u00e4evalt, n\u00e4dal n\u00e4dalalt, kuu kuult)<\/i><\/p>\n<p>Selles v\u00f5rdluses eeldatakse, et s\u00f5ltuvalt valitud perioodist (n\u00e4iteks aasta 33. n\u00e4dal) peame n\u00e4itama d\u00fcnaamikat 32. n\u00e4dala suhtes; kui valime andmed kuu l\u00f5ikes, n\u00e4iteks mai, siis see v\u00f5rdlus n\u00e4itaks d\u00fcnaamikat aprilli suhtes.<\/p>\n<p><i>V\u00f5rdlemine eelmise aastaga<\/i><\/p>\n<p>Siin on peamine n\u00fcanss selles, et v\u00f5rreldes p\u00e4evade ja n\u00e4dalate kaupa peate te v\u00f5tma mitte sama p\u00e4eva eelmisel aastal, st te ei saa lihtsalt v\u00f5tta praegust aastat miinus \u00fcks. Peate vaatama v\u00f5rdlevat n\u00e4dala p\u00e4eva. Samuti, kui v\u00f5rrelda kuud, tuleb v\u00f5tta t\u00e4pselt sama kalendrip\u00e4ev eelmisel aastal. Samuti on olemas n\u00fcansid liigaasta koht. Algsetes andmebaasides on kogu teave jaotatud p\u00e4evade kaupa, seal ei ole eraldi v\u00e4ljandeid n\u00e4dalate, kuude v\u00f5i aastate kohta. Seet\u00f5ttu, et saada t\u00e4ielik anal\u00fc\u00fctiline \u00fclevaade paneelil, tuleb arvestada mitte \u00fchte perioodi, n\u00e4iteks n\u00e4dalat, vaid 4 n\u00e4dalat, ja seej\u00e4rel tuleb neid andmeid veel v\u00f5rrelda, kajastades d\u00fcnaamikat ja k\u00f5rvalekaldeid. Seega saab seda v\u00f5rdlemise d\u00fcnaamika loogikat teostada kas Tableau's v\u00f5i vitriini poolel. Jah, me olime nendele detailidele teadlikud ja m\u00f5tlesime nendest juba projekteerimise etapis, kuid nende m\u00f5ju l\u00f5ppdashboordi j\u00f5udlusele oli keeruline prognoosida.<\/p>\n<p>Dashboardi rakendamisel l\u00e4ksime me pikka Agile-teed. Meie \u00fclesanne oli v\u00f5imalikult kiiresti pakkuda testimiseks t\u00f6\u00f6tav t\u00f6\u00f6riist vajalike andmetega. Seega t\u00f6\u00f6tasime sprintides ning l\u00e4htusime minimaalsetest t\u00f6\u00f6dest praeguses andmebaasis.<\/p>\n<h2>Osa 1. Usaldus Tableau'sse<\/h2>\n<p>\nIT-toe lihtsustamiseks ja muudatuste kiireks rakendamiseks otsustasime, et arvutusloogika mitteadditiivsete n\u00e4itajate ja varasemate perioodide v\u00f5rdlemiseks tehakse Tableau's.<\/p>\n<h3>Etapp 1. K\u00f5ik Live, ei mingeid t\u00e4iustusi vitriinides.<\/h3>\n<p>\nSelles etapis \u00fchendasime Tableau praeguste vitriinidega ja otsustasime vaadata, kuidas arvestatakse t\u0161ekkide arvu \u00fche aastajooksul.<\/p>\n<p><b>Tulemus:<\/b><\/p>\n<p>Vastus oli aeglane \u2013 20 minutit. Andmete edastamine v\u00f5rgu kaudu, suur koormus Tableau's. Me m\u00f5istsime, et mitteadditiivsete n\u00e4itajate loogikat on vaja rakendada HANA-s. See ei hirmutanud meid, meil oli sarnast kogemust BO ja Anal\u00fc\u00fcsiga ning me oskasime ehitada kiireid vitriine HANA-s, mis annavad \u00f5igesti arvutatud mitteadditiivseid n\u00e4itajaid. N\u00fc\u00fcd j\u00e4i vaid need Tableau'le kohandada.<\/p>\n<h3>Etapp 2. Lihvime vitriine, ei mingit materialiseerimist, k\u00f5ik otse.<\/h3>\n<p>\nMe olime loonud eraldi uue v\u00e4ljundi, mis jooksvalt edastas vajalikud andmed TABLEAU jaoks. Kokkuv\u00f5ttes saime hea tulemuse, olles l\u00fchendanud k\u00f5igi n\u00e4itajate moodustamise aega \u00fche n\u00e4dala jooksul 9\u201310 sekundini. Ootasime ausalt, et Tableau vastuse aeg armatuurlaudade avamisel on esmakordselt 20\u201330 sekundit ja seej\u00e4rel t\u00e4nu vahem\u00e4lule 10\u201312, mis oleks meid \u00fcldiselt rahuldanud.<\/p>\n<p><b>Tulemus:<\/b><\/p>\n<p>Esimene armatuurlaudade avamine: 4\u20135 minutit<br \/>\nIga klikk: 3\u20134 minutit<br \/>\nSeda t\u00e4iendavat kasvu v\u00e4ljundi t\u00f6\u00f6tamises ei osanud keegi oodata.<\/p>\n<h2>Osa 2. S\u00fcvenemine Tableau'sse<\/h2>\n<p><\/p>\n<h3>Etapp 1. Tableau j\u00f5udluse anal\u00fc\u00fcs ja kiire h\u00e4\u00e4lestamine<\/h3>\n<p>\nAlustasime anal\u00fc\u00fcsi, millele Tableau peamiselt aega kulutab. Selleks on olemas \u00fcsna head t\u00f6\u00f6riistad, mis on kindlasti Tableau pluss. Peamine probleem, mille avastasime, olid v\u00e4ga keerulised SQL-p\u00e4ringud, mida Tableau genereeris. Need olid seotud eesk\u00e4tt:<\/p>\n<p> \u2014 andmete transponeerimisega. Kuna Tableau'l puuduvad andmekogumite transponeerimise t\u00f6\u00f6riistad, pidime armatuurlauda vasakpoolsesse ossa KPI-de \u00fcksikasjaliku esitluse loomiseks andmete tabelit genereerima l\u00e4bi case. SQL-p\u00e4ringute suurus andmebaasis ulatus 120 000 t\u00e4hem\u00e4rgini.<\/p>\n<p><img decoding=\"async\" alt=\"Tableau ja jaotuses, kas see on t\u00f5esti v\u00f5imalik?\" src=\"\/wp-content\/uploads\/2020\/01\/8fc4d99017ddd604bbabb5ea0a19b38d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n \u2014 ajavahemiku valikuga. Selline p\u00e4ring andmebaasi tasemel kulutas kompileerimiseks rohkem aega kui t\u00e4itmiseks:<\/p>\n<p><img decoding=\"async\" alt=\"Tableau ja jaotuses, kas see on t\u00f5esti v\u00f5imalik?\" src=\"\/wp-content\/uploads\/2020\/01\/a9b9cc6ddd6b03c643935d070532728e.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSt. p\u00e4ringu t\u00f6\u00f6tlemine 12 sekundit + 5 sekundit t\u00e4itmine.<\/p>\n<p>Otsustasime lihtsustada arvutuste loogikat Tableau poolel ja viia veel osa arvutustest v\u00e4ljundisse ja andmebaasi tasemele. See andis h\u00e4id tulemusi.<\/p>\n<p>Esmalt tegime transponeerimise jooksvalt, kasutades seda t\u00e4ieliku v\u00e4list \u00fchendust l\u00f5ppfaasis VIEW arvutamisel, vastavalt siin kirjeldatud l\u00e4henemisele, <noindex><a rel=\"nofollow\" href=\"http:\/\/en.wikipedia.org\/wiki\/Transpose\">Transpose \u2013 Wikipedia, the free encyclopedia<\/a><\/noindex> ja <noindex><a rel=\"nofollow\" href=\"http:\/\/en.wikipedia.org\/wiki\/Elementary_matrix#Row-addition_transformations\">Elementary matrix \u2013 Wikipedia, the free encyclopedia<\/a><\/noindex>.<\/p>\n<p><img decoding=\"async\" alt=\"Tableau ja jaotuses, kas see on t\u00f5esti v\u00f5imalik?\" src=\"\/wp-content\/uploads\/2020\/01\/5259995831dc8ae379a34bfe84e52daa.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSt. l\u00f5ime seadistustabeli \u2013 transponeerimismatriisi (21x21) ja saime k\u00f5ik n\u00e4itajad ridade l\u00f5ikes.<\/p>\n<p>Oli:<br \/>\n<img decoding=\"async\" alt=\"Tableau ja jaotuses, kas see on t\u00f5esti v\u00f5imalik?\" src=\"\/wp-content\/uploads\/2020\/01\/9382ee65a1482cc137a52b5f80c39eeb.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nOn:<br \/>\n<img decoding=\"async\" alt=\"Tableau ja jaotuses, kas see on t\u00f5esti v\u00f5imalik?\" src=\"\/wp-content\/uploads\/2020\/01\/1d6653ec427ce0621b441943f589d860.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAndmete enda transponeerimine ei v\u00f5ta peaaegu \u00fcldse aega. N\u00e4dala k\u00f5ikide n\u00e4itajate p\u00e4ring t\u00f6\u00f6tas endiselt umbes 10 sekundi jooksul. Kuid t\u00f6\u00f6tas kaotatud paindlikkus konkreetsete n\u00e4itajate p\u00f5hjal dashboardsi koostamisel, st dashboardsi paremas osas, kus on esitatud d\u00fcnaamiline detailne jaotumine, t\u00f6\u00f6tas vitriin varasemalt 1-3 sekundi jooksul, kuna p\u00e4ring toimus \u00fche n\u00e4itaja j\u00e4rgi, kuid n\u00fc\u00fcd valis andmebaas alati k\u00f5ik n\u00e4itajad ja filtreeris tulemuse alles siis, kui see Tagastati Tableau.<\/p>\n<p>Kokkuv\u00f5ttes v\u00e4henes dashboardsi t\u00f6\u00f6kiirus peaaegu kolm korda.<\/p>\n<p><b>Tulemus:<\/b><\/p>\n<ol>\n<li>5 sek - dashboardsi ja visualiseerimise parsimine<\/li>\n<li> 15-20 sek - p\u00e4ringute kompileerimise ettevalmistamine Tableau eel\u00f5igete teostamisega<\/li>\n<li> 35-45 sek - SQL-p\u00e4ringute kompileerimine ja nende j\u00e4rgneva t\u00e4itmine Hanas<\/li>\n<li> 5 sek - tulemuste t\u00f6\u00f6tlemine, sortimine, visualiseerimise \u00fcmberarvutamine Tableau's<\/li>\n<li>Muidugi ei rahuldanud sellised tulemused \u00e4ri, seet\u00f5ttu j\u00e4tkasime optimeerimist.<\/li>\n<\/ol>\n<p><\/p>\n<h3>Etapp 2. Minimaliseeritud loogika Tableau's, t\u00e4ielik materialiseerimine<\/h3>\n<p>\nM\u00f5istsime, et ei ole v\u00f5imalik ehitada dashboardsi, mille reageerimisaeg on m\u00f5ne sekundi jooksul vitriinil, mis t\u00f6\u00f6tab 10 sekundi jooksul, ning vaatasime andmete materialiseerimise v\u00f5imalusi andmebaasi pool, et luua n\u00f5utud dashboards. Kuid me silmitsi seisime globaalsete probleemidega, nagu on eespool kirjeldatud \u2013 mitteaktiivsed n\u00e4itajad. Me ei suutnud teha nii, et Tableau saaks filtreerimise v\u00f5i v\u00f5rgu muutmisel paindlikult l\u00fclituda erinevate vitriinide ja tasemete vahel, mis on eelnevalt arvutatud erinevate kaubanduslike hierarhiate jaoks (n\u00e4ites kolm p\u00e4ringut ilma UTE, UTE1 ja UTE2 annavad erinevad tulemused). Seega otsustasime \u00fchtlustada dashboardsi, loobuda kaubanduslikust hierarhiast dashboardsis ja vaadata, kui kiireks see saab lihtsustatud versioonis.<\/p>\n<p>Nii et selle viimase etapi k\u00e4igus kogusime eraldi ladustamise, kuhu panime transponeeritud kujul k\u00f5ik KPI-d. Andmebaasi pool igasugune p\u00e4ring selle ladustamisele t\u00f6\u00f6tab 0,1\u20130,3 sekundi jooksul. Dashboardsis saime j\u00e4rgmised tulemused:<\/p>\n<p>Esimene avastus: 8-10 sekundit<br \/>\nIga kl\u00f5ps: 6-7 sekundit<\/p>\n<p>Aeg, mille Tableau kulutab, koosneb j\u00e4rgmistest:<\/p>\n<ol>\n<li>0,3 sek - dashboardsi parsimine ja SQL-p\u00e4ringute kompileerimine\n<\/li>\n<li>1,5-3 sek - SQL-p\u00e4ringute t\u00e4itmine Hanas peamiste visualiseerimise jaoks (k\u00e4ivitub paralleelselt p.1)\n<\/li>\n<li>1,5-2 sek - renderimine, visualiseerimise \u00fclekalkulatsioon\n<\/li>\n<li>1,3 sek - t\u00e4iendavate SQL-p\u00e4ringute t\u00e4itmine asjakohaste filtriv\u00e4\u00e4rtuste (Br\u00e4nd, Divisjon, Linn, Pood) saamiseks, tulemuste anal\u00fc\u00fcs\n<\/li>\n<\/ol>\n<p><\/p>\n<h3>Kui teha l\u00fchike kokkuv\u00f5te<\/h3>\n<p>\nMeile meeldis Tableau t\u00f6\u00f6riist visualiseerimise osas. Kujundamisetapis vaatasime erinevaid visualiseerimise elemente ja leidsime need k\u00f5ik raamatukogudest, sealhulgas keerukad mitmeastmelised segmentatsioonid ja mitme draiveriga waterfallid.<\/p>\n<p>Peamise m\u00fc\u00fcgin\u00e4itajaga juhtpaneelide kasutuselev\u00f5tmisel kohtasime j\u00f5udluse probleeme, mida me siiani ei ole suutnud \u00fcletada. Kulutasime rohkem kui kaks kuud ja saime funktsionaalselt mittet\u00e4ieliku juhtpaneeli, mille reageerimiskiirus oli piiri peal. Ja selle p\u00f5hjal j\u00f5udsime j\u00e4reldustele:<\/p>\n<ol>\n<li>Tableau ei oska t\u00f6\u00f6tada suurte andmehulkadega. Kui teie algses andmemudelis on rohkem kui 10 GB andmeid (umbes 200 miljonit x 50 rida), siis n\u00e4idikute laud aeglustub t\u00f5siselt - alates 10 sekundist kuni mitme minutini iga kliki pealt. Oleme katsetanud nii live-\u00fchenduse kui ka ekstraktiga. T\u00f6\u00f6 kiirus on v\u00f5rreldav.\n<\/li>\n<li>Piirangud mitme andmestiku (dataseti) kasutamisel. Standardselt ei ole v\u00f5imalik andmestike vahelisi seoseid m\u00e4\u00e4rata. Kui kasutada ringlahendusi andmestike sidumiseks, m\u00f5jutab see oluliselt j\u00f5udlust. Meie puhul kaalusime andmete materialiseerimist igas vajalikus vaates ja nendele materialiseeritud datasets'idele vahetuste tegemist, s\u00e4ilitades varem valitud filtrid \u2013 see osutus Tableau's v\u00f5imatuks.\n<\/li>\n<li>Tableaus ei ole v\u00f5imalik teha d\u00fcnaamilisi parameetreid. Te ei saa parameetrit, mida kasutatakse andmestiku filtreerimiseks eksemplaris v\u00f5i live-\u00fchenduses, t\u00e4ita teise andmestiku valiku v\u00f5i teise SQL-p\u00e4ringu tulemusega, ainult kasutaja sisendi v\u00f5i konstantidega.\n<\/li>\n<li>Piirangud, mis on seotud juhtpaneeli koostamisega OLAP|Pivot Table elementidega. <br \/>\nMSTR, SAP SAC, SAP Analysis puhul, kui lisate aruandesse andmekomplekti, siis on k\u00f5ik objektid omavahel vaikimisi seotud. Tableau's seda ei ole, seoseid tuleb seadistada k\u00e4sitsi. See on t\u00f5en\u00e4oliselt paindlikum, kuid meie k\u00f5igi juhtpaneelide jaoks on see elementide kohustuslik n\u00f5ue \u2013 seega labour \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0437\u0430\u0442\u0440\u0430\u0442\u044b. Veelgi enam, kui loote seotud filtrid, nii et n\u00e4iteks piirkonna filtreerimisel piiratakse linnade loetelu ainult selle piirkonna linnadega, satute kohe j\u00e4rjestikustega p\u00e4ringuteni andmebaasi v\u00f5i ekraani, mis aeglustab juhtpaneeli m\u00e4rgatavalt.<\/li>\n<li>Funktsioonide piirangud. Nii ekraanil kui ka veelgi enam, elava \u00fchenduse andmekomplektidega ei saa teha massilisi teisendusi. Seda saab teha Tableau Prepiga, kuid see toob kaasa lisakulusid ja veel \u00fche t\u00f6\u00f6riista, mida tuleb \u00f5ppida ja toetada. N\u00e4iteks ei saa te andmeid transpositsioneerida ega liita neid iseendaga. See toimub eraldi veergude v\u00f5i v\u00e4ljade kaudu, mida tuleb valida l\u00e4bi case v\u00f5i if, tekitades v\u00e4ga keerulisi SQL-p\u00e4ringuid, mille puhul andmebaas kulutab enamuse ajast p\u00e4ringu koostamisele. Nende t\u00f6\u00f6riista paindumatuste lahendamine tuli teha vitriini tasemel, mis viis andmehoidla keerukuse, t\u00e4iendavate koormuste ja teisendusteni.\n<\/li>\n<\/ol>\n<p>\nMe ei ole Tableau'le punkti pannud. Kuid t\u00f6\u00f6riistana, mis suudab luua t\u00f6\u00f6stuslikke juhtpaneele ja vahendina, millega asendada ja digitaliseerida kogu ettev\u00f5tte aruandluse s\u00fcsteemi, ei pea me Tableau't.<\/p>\n<p>Praegu t\u00f6\u00f6tame aktiivselt v\u00e4lja sarnast juhtpaneeli teise t\u00f6\u00f6riista abil ja \u00fcritame samal ajal \u00fcle vaadata Tableau juhtpaneeli arhitektuuri, et seda veelgi lihtsustada. Kui kogukonnale see huvi pakub, siis jagame tulemusi.<\/p>\n<p>Ootame ka teie ideid v\u00f5i n\u00f5uandeid selle kohta, kuidas Tableau's suurte andmehulkadega kiiresti juhtpaneele luua, sest meil on ka veebisait, kus andmeid on palju rohkem kui jaekauplustes.<br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/mvideo\/blog\/483656\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0440\u0435\u043c\u044f \u043e\u0442\u0447\u0451\u0442\u043d\u043e\u0441\u0442\u0438 \u0432 Excel \u0441\u0442\u0440\u0435\u043c\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0445\u043e\u0434\u0438\u0442 \u2014 \u0442\u0440\u0435\u043d\u0434 \u043d\u0430 \u0443\u0434\u043e\u0431\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0432\u0438\u0434\u0435\u043d \u0432\u043e \u0432\u0441\u0435\u0445 \u0441\u0444\u0435\u0440\u0430\u0445. \u041c\u044b \u0434\u0430\u0432\u043d\u043e \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u043b\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u0446\u0438\u0444\u0440\u043e\u0432\u0438\u0437\u0430\u0446\u0438\u044e \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043e\u0442\u0447\u0451\u0442\u043d\u043e\u0441\u0442\u0438 \u0438 \u0432\u044b\u0431\u0440\u0430\u043b\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 self-service \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0438 Tableau. \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440 \u0411\u0435\u0437\u0443\u0433\u043b\u044b\u0439, \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c \u043e\u0442\u0434\u0435\u043b\u0430 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0438 \u043e\u0442\u0447\u0451\u0442\u043d\u043e\u0441\u0442\u0438 \u0413\u0440\u0443\u043f\u043f\u044b \u00ab\u041c.\u0412\u0438\u0434\u0435\u043e-\u042d\u043b\u044c\u0434\u043e\u0440\u0430\u0434\u043e\u00bb, \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043b \u043e\u0431 \u043e\u043f\u044b\u0442\u0435 \u0438 \u0438\u0442\u043e\u0433\u0430\u0445 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0431\u043e\u0435\u0432\u043e\u0433\u043e \u0434\u0430\u0448\u0431\u043e\u0440\u0434\u0430. \u0421\u043a\u0430\u0436\u0443 \u0441\u0440\u0430\u0437\u0443, \u043d\u0435 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-55144","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0440\u0435\u043c\u044f \u043e\u0442\u0447\u0451\u0442\u043d\u043e\u0441\u0442\u0438 \u0432 Excel \u0441\u0442\u0440\u0435\u043c\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0445\u043e\u0434\u0438\u0442 \u2014 \u0442\u0440\u0435\u043d\u0434 \u043d\u0430 \u0443\u0434\u043e\u0431\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0432\u0438\u0434\u0435\u043d \u0432\u043e \u0432\u0441\u0435\u0445 \u0441\u0444\u0435\u0440\u0430\u0445.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/news\/tableau-v-roznitse-realno\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Tableau \u0432 \u0440\u043e\u0437\u043d\u0438\u0446\u0435, \u0440\u0435\u0430\u043b\u044c\u043d\u043e? | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0440\u0435\u043c\u044f \u043e\u0442\u0447\u0451\u0442\u043d\u043e\u0441\u0442\u0438 \u0432 Excel \u0441\u0442\u0440\u0435\u043c\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0445\u043e\u0434\u0438\u0442 \u2014 \u0442\u0440\u0435\u043d\u0434 \u043d\u0430 \u0443\u0434\u043e\u0431\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0432\u0438\u0434\u0435\u043d \u0432\u043e \u0432\u0441\u0435\u0445 \u0441\u0444\u0435\u0440\u0430\u0445.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/news\/tableau-v-roznitse-realno\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-01-12T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:03:13+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Tableau jaekaubanduses, kas t\u00f5eliselt? | ProHoster","description":"Excelis aruandmise aeg kaob kiiresti \u2013 mugavate teabe esitamise ja anal\u00fc\u00fcsi t\u00f6\u00f6riistade trend on n\u00e4htav k\u00f5ikides valdkondades.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/news\/tableau-v-roznitse-realno","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Tableau \u0432 \u0440\u043e\u0437\u043d\u0438\u0446\u0435, \u0440\u0435\u0430\u043b\u044c\u043d\u043e? | ProHoster","og:description":"\u0412\u0440\u0435\u043c\u044f \u043e\u0442\u0447\u0451\u0442\u043d\u043e\u0441\u0442\u0438 \u0432 Excel \u0441\u0442\u0440\u0435\u043c\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0445\u043e\u0434\u0438\u0442 \u2014 \u0442\u0440\u0435\u043d\u0434 \u043d\u0430 \u0443\u0434\u043e\u0431\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0432\u0438\u0434\u0435\u043d \u0432\u043e \u0432\u0441\u0435\u0445 \u0441\u0444\u0435\u0440\u0430\u0445.","og:url":"https:\/\/prohoster.info\/et\/blog\/news\/tableau-v-roznitse-realno","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-01-12T21:00:00+00:00","article:modified_time":"2020-02-18T11:03:13+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55144","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:50:02","updated":"2022-10-05 23:10:07","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/55144","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=55144"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/55144\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=55144"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=55144"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=55144"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}