{"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\/cs\/blog\/news\/tableau-v-roznitse-realno","title":{"rendered":"Tableau v maloobchodu, opravdu?","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><b>\u010cas pro reportov\u00e1n\u00ed v Excelu rychle ub\u00edh\u00e1 \u2014 trend u pohodln\u00fdch n\u00e1stroj\u016f pro prezentaci a anal\u00fdzu informac\u00ed je patrn\u00fd ve v\u0161ech oborech. Dlouho jsme diskutovali o digitalizaci reportov\u00e1n\u00ed a vybrali jsme syst\u00e9m vizualizace a self-service analytiky Tableau. Alexander Bezugly, vedouc\u00ed odd\u011blen\u00ed analytick\u00fdch \u0159e\u0161en\u00ed a reportingu skupiny \u201eM.Video-Eldorado\u201c, hovo\u0159il o zku\u0161enostech a v\u00fdsledc\u00edch vytv\u00e1\u0159en\u00ed operativn\u00edho dashboardu.<\/b><\/p>\n<p>\u0158eknu hned, ne v\u0161echno, co bylo zam\u00fd\u0161leno, se poda\u0159ilo realizovat, ale zku\u0161enost byla zaj\u00edmav\u00e1, douf\u00e1m, \u017ee bude u\u017eite\u010dn\u00e1 i pro v\u00e1s. A pokud n\u011bkdo m\u00e1 n\u00e1pady, jak to ud\u011blat l\u00e9pe \u2013 budu velmi vd\u011b\u010dn\u00fd za rady a n\u00e1vrhy.<\/p>\n<p><img decoding=\"async\" alt=\"Tableau v maloobchodu, opravdu?\" src=\"\/wp-content\/uploads\/2020\/01\/81c41899e9b3acf1858a4faa627c121b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPod katem o tom, s \u010d\u00edm jsme se setkali a co jsme se nau\u010dili.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h4>Jak jsme za\u010d\u00ednali<\/h4>\n<p>\nV \u201eM.Video-Eldorado\u201c existuje dob\u0159e propracovan\u00fd model dat: strukturovan\u00e9 informace s po\u017eadovanou hloubkou ulo\u017een\u00ed a obrovsk\u00e9 mno\u017estv\u00ed report\u016f fixn\u00edho form\u00e1tu (viz podrobn\u011bji <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/mvideo\/blog\/462015\/\">tenhle \u010dl\u00e1nek<\/a><\/noindex>). Z nich analytici vytv\u00e1\u0159ej\u00ed bu\u010f kontingen\u010dn\u00ed tabulky nebo form\u00e1tovan\u00e9 zpr\u00e1vy v Excelu, nebo kr\u00e1sn\u00e9 prezentace v PowerPointu pro kone\u010dn\u00e9 u\u017eivatele.<\/p>\n<p>P\u0159ibli\u017en\u011b p\u0159ed dv\u011bma lety jsme m\u00edsto report\u016f fixn\u00edho form\u00e1tu za\u010dali vytv\u00e1\u0159et analytick\u00e9 reporty v SAP Analysis (roz\u0161\u00ed\u0159en\u00ed Excelu, v podstat\u011b \u2014 kontingen\u010dn\u00ed tabulka nad OLAP enginem). Tento n\u00e1stroj v\u0161ak nedok\u00e1zal pokr\u00fdt pot\u0159eby v\u0161ech u\u017eivatel\u016f, v\u011bt\u0161ina tak i nad\u00e1le pou\u017e\u00edvala informace, kter\u00e9 byly nav\u00edc zpracov\u00e1ny analytiky.<\/p>\n<p>Na\u0161i koncov\u00ed u\u017eivatel\u00e9 se d\u011bl\u00ed do t\u0159\u00ed kategori\u00ed:<\/p>\n<p><b>Top management<\/b>. Po\u017eaduje informace v dob\u0159e prezentovan\u00e9 a vizu\u00e1ln\u011b srozumiteln\u00e9 podob\u011b.<\/p>\n<p><b>St\u0159edn\u00ed management<\/b>, pokro\u010dil\u00ed u\u017eivatel\u00e9. Maj\u00ed z\u00e1jem o zkoum\u00e1n\u00ed dat a jsou schopni samostatn\u011b vytv\u00e1\u0159et reporty, pokud maj\u00ed k dispozici n\u00e1stroje. Pr\u00e1v\u011b oni se stali kl\u00ed\u010dov\u00fdmi u\u017eivateli analytick\u00fdch report\u016f v SAP Analysis.<\/p>\n<p><b>Hromadn\u00ed u\u017eivatel\u00e9<\/b>. Nen\u00ed z\u00e1jem o samostatnou anal\u00fdzu dat, pou\u017e\u00edvaj\u00ed reporty s omezen\u00fdm rozsahem svobody, v podob\u011b rozes\u00edlek a kontingen\u010dn\u00edch tabulek v Excelu.<\/p>\n<p>Na\u0161\u00edm c\u00edlem bylo pokr\u00fdt pot\u0159eby v\u0161ech u\u017eivatel\u016f a poskytnout jim jednotn\u00fd pohodln\u00fd n\u00e1stroj. Rozhodli jsme se za\u010d\u00edt s vrcholov\u00fdm managementem. Pot\u0159ebovali pohodln\u00e9 panely pro anal\u00fdzu hlavn\u00edch obchodn\u00edch v\u00fdsledk\u016f. Tak jsme za\u010dali s Tableau a pro za\u010d\u00e1tek jsme vybrali dv\u011b oblasti: ukazatele prodeje v maloobchodu a online s omezenou hloubkou a \u0161\u00ed\u0159kou anal\u00fdzy, kter\u00e9 by pokryly p\u0159ibli\u017en\u011b 80 % dat, kter\u00e1 vrcholov\u00fd management vy\u017eaduje.<\/p>\n<p>Jeliko\u017e u\u017eivateli dashboard\u016f byl vrcholov\u00fd management, vznikl dal\u0161\u00ed dodate\u010dn\u00fd KPI produktu \u2013 rychlost odezvy. Nikdo nebude \u010dekat 20-30 sekund, ne\u017e se aktualizuj\u00ed data. Navigace m\u011bla trvat 4-5 sekund, a je\u0161t\u011b l\u00e9pe reagovat okam\u017eit\u011b. Toho jsme, bohu\u017eel, dos\u00e1hnout nedok\u00e1zali.<\/p>\n<p>Takto vypadal n\u00e1vrh na\u0161eho hlavn\u00edho dashboardu:<\/p>\n<p><img decoding=\"async\" alt=\"Tableau v maloobchodu, opravdu?\" src=\"\/wp-content\/uploads\/2020\/01\/a7a028feee6542dfbc1fd3c2feeaa3de.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nHlavn\u00ed my\u0161lenka \u2013 spojit hlavn\u00ed KPI-drivery, kter\u00fdch nakonec je 19, vlevo a zobrazit jejich dynamiku a roz\u010dlen\u011bn\u00ed podle hlavn\u00edch atribut\u016f vpravo. \u00dakol se zd\u00e1 b\u00fdt jednoduch\u00fd, vizualizace logick\u00e1 a p\u0159ehledn\u00e1, dokud se neza\u010dnete zab\u00fdvat detaily.<\/p>\n<h2>Detail 1. Objem dat<\/h2>\n<p>\nHlavn\u00ed tabulka prodeje za rok tvo\u0159\u00ed p\u0159ibli\u017en\u011b 300 milion\u016f \u0159\u00e1dk\u016f. Proto\u017ee je t\u0159eba zobrazit i dynamiku ve srovn\u00e1n\u00ed s minul\u00fdm a p\u0159edminul\u00fdm rokem, objem dat pouze o skute\u010dn\u00fdch prodej\u00edch je kolem 1 miliardy \u0159\u00e1dk\u016f. A nav\u00edc se zvl\u00e1\u0161\u0165 uchov\u00e1vaj\u00ed informace o pl\u00e1novan\u00fdch \u00fadaj\u00edch a bloku internetov\u00fdch prodej\u016f. I kdy\u017e jsme pou\u017eili sloupcovou in-memory DB SAP HANA, rychlost dotazu p\u0159i z\u00edsk\u00e1n\u00ed v\u0161ech ukazatel\u016f za jeden t\u00fdden z aktu\u00e1ln\u00edch \u00falo\u017ei\u0161\u0165 v re\u00e1ln\u00e9m \u010dase byla p\u0159ibli\u017en\u011b 15-20 sekund. \u0158e\u0161en\u00ed tohoto probl\u00e9mu je jasn\u00e9 \u2013 dodate\u010dn\u00e1 materializace dat. Ale i v tom jsou skryt\u00e9 probl\u00e9my, o nich\u017e bude n\u00ed\u017ee \u0159e\u010d.<\/p>\n<h2>Detail 2. Neaditivn\u00ed ukazatele<\/h2>\n<p>\nMnoho na\u0161ich KPI je z\u00e1visl\u00fdch na po\u010dtu \u00fa\u010dtenek. Tento ukazatel je COUNT DISTINCT po\u010dtu \u0159\u00e1dk\u016f (hlavi\u010dek \u00fa\u010dtenek) a ukazuje r\u016fzn\u00e9 \u010d\u00e1stky v z\u00e1vislosti na vybran\u00fdch atributech. Nap\u0159\u00edklad, jak by se tento ukazatel a jeho odvozeniny m\u011bly po\u010d\u00edtat:<\/p>\n<p><img decoding=\"async\" alt=\"Tableau v maloobchodu, opravdu?\" src=\"\/wp-content\/uploads\/2020\/01\/0a6d676f0a5c2b779a5e7892b1f54929.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPro spr\u00e1vnost v\u00fdpo\u010dt\u016f je mo\u017en\u00e9:<\/p>\n<ul>\n<li>Prov\u00e1d\u011bt v\u00fdpo\u010det podobn\u00fdch ukazatel\u016f v re\u00e1ln\u00e9m \u010dase v \u00falo\u017ei\u0161ti;\n<\/li>\n<li>Prov\u00e1d\u011bt v\u00fdpo\u010det na cel\u00e9m objemu dat v Tableau, tj. na dotaz v Tableau vr\u00e1tit v\u0161echna data podle vybran\u00fdch filtr\u016f v granularit\u011b pozic \u00fa\u010dtenek;\n<\/li>\n<li>Vytvo\u0159te materializovanou v\u00fdlohu, kter\u00e1 bude obsahovat v\u0161echny ukazatele ve v\u0161ech variant\u00e1ch v\u00fdb\u011br\u016f, kter\u00e9 d\u00e1vaj\u00ed r\u016fzn\u00e9 neaditivn\u00ed v\u00fdsledky.\n<\/li>\n<\/ul>\n<p>\nJe jasn\u00e9, \u017ee v p\u0159\u00edkladu UTE1 a UTE2 jsou to atributy materi\u00e1lu p\u0159edstavuj\u00edc\u00ed hierarchii zbo\u017e\u00ed. Nen\u00ed to statick\u00e1 z\u00e1le\u017eitost, skrze ni prob\u00edh\u00e1 \u0159\u00edzen\u00ed uvnit\u0159 spole\u010dnosti, proto\u017ee za r\u016fzn\u00e9 skupiny zbo\u017e\u00ed odpov\u00eddaj\u00ed r\u016fzn\u00ed mana\u017ee\u0159i. M\u011bli jsme mnoho glob\u00e1ln\u00edch reviz\u00ed t\u00e9to hierarchie, kdy se m\u011bnily v\u0161echny \u00farovn\u011b, p\u0159ehodnocovaly vz\u00e1jemn\u00e9 vztahy, a tak\u00e9 st\u00e1l\u00e9 d\u00edl\u010d\u00ed zm\u011bny, kdy jedna skupina p\u0159ech\u00e1z\u00ed z jednoho uzlu do druh\u00e9ho. V b\u011b\u017en\u00fdch zpr\u00e1v\u00e1ch se to v\u0161echno po\u010d\u00edt\u00e1 na po\u010dk\u00e1n\u00ed z atribut\u016f materi\u00e1lu, v p\u0159\u00edpad\u011b materializace t\u011bchto dat je nutn\u00e9 vyvinout mechanismus sledov\u00e1n\u00ed podobn\u00fdch zm\u011bn a automatick\u00e9ho p\u0159et\u00ed\u017een\u00ed historick\u00fdch dat. Velmi netrivi\u00e1ln\u00ed \u00fakol.<\/p>\n<h2>Detail 3. Porovn\u00e1n\u00ed dat <\/h2>\n<p>\nTento bod je podobn\u00fd p\u0159edchoz\u00edmu. Podstatou je, \u017ee ve spole\u010dnosti se p\u0159i anal\u00fdze obvykle vytv\u00e1\u0159\u00ed n\u011bkolik \u00farovn\u00ed porovn\u00e1n\u00ed s minul\u00fdm obdob\u00edm:<\/p>\n<p><i>Porovn\u00e1n\u00ed s minul\u00fdm obdob\u00edm (den k dni, t\u00fdden k t\u00fddnu, m\u011bs\u00edc k m\u011bs\u00edci)<\/i><\/p>\n<p>V tomto porovn\u00e1n\u00ed se p\u0159edpokl\u00e1d\u00e1, \u017ee v z\u00e1vislosti na zvolen\u00e9m obdob\u00ed u\u017eivatelem (nap\u0159\u00edklad 33. t\u00fdden roku) bychom m\u011bli uk\u00e1zat dynamiku k 32. t\u00fddnu. Pokud bychom vybrali data za m\u011bs\u00edc, nap\u0159\u00edklad kv\u011bten, toto porovn\u00e1n\u00ed by uk\u00e1zalo dynamiku k dubnu.<\/p>\n<p><i>Porovn\u00e1n\u00ed s minul\u00fdm rokem<\/i><\/p>\n<p>Hlavn\u00ed nuance spo\u010d\u00edv\u00e1 v tom, \u017ee p\u0159i porovn\u00e1v\u00e1n\u00ed podle dn\u016f a podle t\u00fddn\u016f neberete stejn\u00fd den minul\u00e9ho roku, to znamen\u00e1, \u017ee nem\u016f\u017eete jednodu\u0161e vz\u00edt aktu\u00e1ln\u00ed rok minus jedna. Mus\u00edte se d\u00edvat na srovn\u00e1van\u00fd den v t\u00fddnu. A p\u0159i porovn\u00e1v\u00e1n\u00ed m\u011bs\u00edc\u016f naopak mus\u00edte br\u00e1t p\u0159esn\u011b stejn\u00fd kalend\u00e1\u0159n\u00ed den minul\u00e9ho roku. Existuj\u00ed tak\u00e9 nuance se p\u0159estupn\u00fdmi roky. V p\u016fvodn\u00edch \u00falo\u017ei\u0161t\u00edch jsou v\u0161echny informace rozd\u011bleny podle dn\u016f, neexistuj\u00ed samostatn\u00e1 pole pro t\u00fddny, m\u011bs\u00edce, roky. Proto k z\u00edsk\u00e1n\u00ed kompletn\u00ed analytick\u00e9 pru\u017enosti v panelu je nutn\u00e9 po\u010d\u00edtat nejen jedno obdob\u00ed, nap\u0159\u00edklad t\u00fdden, ale \u010dty\u0159i t\u00fddny, a pot\u00e9 tato data je\u0161t\u011b porovnat, odrazit dynamiku, odchylky. Tuto logiku formov\u00e1n\u00ed srovn\u00e1n\u00ed v dynamice lze tak\u00e9 realizovat bu\u010f v Tableau, nebo na stran\u011b v\u00fdtoku. A ano, o t\u011bchto detailech jsme samoz\u0159ejm\u011b v\u011bd\u011bli a p\u0159em\u00fd\u0161leli ji\u017e v f\u00e1zi n\u00e1vrhu, ale jejich vliv na v\u00fdkon kone\u010dn\u00e9ho dashboardu byl t\u011b\u017eko p\u0159edv\u00eddateln\u00fd.<\/p>\n<p>P\u0159i zav\u00e1d\u011bn\u00ed dashboardu jsme \u0161li dlouhou cestou Agile. Na\u0161\u00edm c\u00edlem bylo co nejrychleji poskytnout k testov\u00e1n\u00ed pracovn\u00ed n\u00e1stroj s pot\u0159ebn\u00fdmi daty. Proto jsme postupovali ve sprintech a zam\u011b\u0159ili jsme se na minimalizaci pr\u00e1ce na stran\u011b aktu\u00e1ln\u00edho \u00falo\u017ei\u0161t\u011b.<\/p>\n<h2>\u010c\u00e1st 1. V\u00edra v Tableau<\/h2>\n<p>\nPro zjednodu\u0161en\u00ed IT podpory a rychl\u00e9 zaveden\u00ed zm\u011bn jsme se rozhodli realizovat logiku v\u00fdpo\u010dtu neaditivn\u00edch ukazatel\u016f a srovn\u00e1n\u00ed minul\u00fdch obdob\u00ed v Tableau.<\/p>\n<h3>F\u00e1ze 1. V\u0161echno v Live, \u017e\u00e1dn\u00e9 \u00fapravy v\u00fdtoku.<\/h3>\n<p>\nV t\u00e9to f\u00e1zi jsme p\u0159ipojili Tableau k aktu\u00e1ln\u00edm v\u00fdtok\u016fm a rozhodli jsme se zjistit, jak bude po\u010d\u00edt\u00e1n po\u010det \u00fa\u010dtenek za jeden rok.<\/p>\n<p><b>Result:<\/b><\/p>\n<p>Odpov\u011b\u010f byla zdrcuj\u00edc\u00ed \u2013 20 minut. P\u0159enos dat p\u0159es s\u00ed\u0165, vysok\u00e9 zat\u00ed\u017een\u00ed na Tableau. Uv\u011bdomili jsme si, \u017ee logiku s neaditivn\u00edmi ukazateli je nutn\u00e9 realizovat na HANA. To n\u00e1s p\u0159\u00edli\u0161 nevyd\u011bsilo, ji\u017e jsme m\u011bli podobnou zku\u0161enost s BO a Analysis a um\u011bli jsme stav\u011bt rychl\u00e9 v\u00fdtoky v HANA, kter\u00e9 spr\u00e1vn\u011b po\u010d\u00edtaj\u00ed neaditivn\u00ed ukazatele. Te\u010f zb\u00fdvalo je p\u0159izp\u016fsobit Tableau.<\/p>\n<h3>F\u00e1ze 2. Lad\u00edme v\u00fdtoky, \u017e\u00e1dn\u00e1 materializace, v\u0161e za letu.<\/h3>\n<p>\nVytvo\u0159ili jsme novou samostatnou vitr\u00ednu, kter\u00e1 na po\u010dk\u00e1n\u00ed poskytovala po\u017eadovan\u00e1 data pro TABLEAU. Celkov\u011b jsme dos\u00e1hli dobr\u00e9ho v\u00fdsledku, zkr\u00e1tili jsme \u010das pot\u0159ebn\u00fd na generov\u00e1n\u00ed v\u0161ech ukazatel\u016f ze sedmi dn\u016f na 9-10 sekund. A up\u0159\u00edmn\u011b jsme o\u010dek\u00e1vali, \u017ee v Tableau bude doba odezvy dashboardu p\u0159i prvn\u00edm otev\u0159en\u00ed 20-30 sekund a pot\u00e9 d\u00edky cache od 10 do 12, co\u017e by n\u00e1s uspokojilo.<\/p>\n<p><b>Result:<\/b><\/p>\n<p>Prvn\u00ed otev\u0159en\u00ed dashboard\u016f: 4-5 minut<br \/>\nJak\u00fdkoliv klik: 3-4 minuty<br \/>\nTakov\u00fd dodate\u010dn\u00fd v\u00fdkon nebyl nikdo o\u010dek\u00e1val.<\/p>\n<h2>\u010c\u00e1st 2. Hlub\u0161\u00ed ponor do Tableau<\/h2>\n<p><\/p>\n<h3>F\u00e1ze 1. Anal\u00fdza v\u00fdkonnosti Tableau a rychl\u00e9 lad\u011bn\u00ed<\/h3>\n<p>\nZa\u010dali jsme analyzovat, na co Tableau tr\u00e1v\u00ed nejv\u00edce \u010dasu. A k tomu je k dispozici pom\u011brn\u011b dobr\u00fd n\u00e1stroj, co\u017e je samoz\u0159ejm\u011b v\u00fdhoda Tableau. Hlavn\u00edm probl\u00e9mem, kter\u00fd jsme identifikovali, byly velmi slo\u017eit\u00e9 SQL dotazy, kter\u00e9 Tableau vytv\u00e1\u0159elo. Tyto dotazy byly p\u0159edev\u0161\u00edm spojeny s:<\/p>\n<p> \u2014 transpozic\u00ed dat. Proto\u017ee Tableau nem\u00e1 n\u00e1stroje pro transpozici dataset\u016f, museli jsme pro vytvo\u0159en\u00ed lev\u00e9 \u010d\u00e1sti dashboardu s podrobn\u00fdm zobrazen\u00edm v\u0161ech KPI vyvinout tabulku prost\u0159ednictv\u00edm case. Velikost SQL dotaz\u016f v DB dosahovala 120 000 znak\u016f.<\/p>\n<p><img decoding=\"async\" alt=\"Tableau v maloobchodu, opravdu?\" src=\"\/wp-content\/uploads\/2020\/01\/8fc4d99017ddd604bbabb5ea0a19b38d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n \u2014 v\u00fdb\u011brem \u010dasov\u00e9ho obdob\u00ed. Takov\u00fd dotaz na \u00farovni DB trval d\u00e9le na kompilaci ne\u017e na vykon\u00e1n\u00ed:<\/p>\n<p><img decoding=\"async\" alt=\"Tableau v maloobchodu, opravdu?\" src=\"\/wp-content\/uploads\/2020\/01\/a9b9cc6ddd6b03c643935d070532728e.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nT.j. zpracov\u00e1n\u00ed dotazu trvalo 12 sekund + 5 sekund vykon\u00e1n\u00ed.<\/p>\n<p>Rozhodli jsme se zjednodu\u0161it logiku v\u00fdpo\u010dt\u016f na stran\u011b Tableau a p\u0159esunout dal\u0161\u00ed \u010d\u00e1st v\u00fdpo\u010dt\u016f na vitr\u00ednu a \u00farove\u0148 DB. To p\u0159ineslo dobr\u00e9 v\u00fdsledky.<\/p>\n<p>Nejprve jsme provedli transpozici na po\u010dk\u00e1n\u00ed, ud\u011blali jsme ji prost\u0159ednictv\u00edm full outer join v kone\u010dn\u00e9 f\u00e1zi v\u00fdpo\u010dtu VIEW, podle takov\u00e9ho p\u0159\u00edstupu popsan\u00e9ho na wiki <noindex><a rel=\"nofollow\" href=\"http:\/\/en.wikipedia.org\/wiki\/Transpose\">Transpose \u2014 Wikipedia, the free encyclopedia<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"http:\/\/en.wikipedia.org\/wiki\/Elementary_matrix#Row-addition_transformations\">Elementary matrix \u2014 Wikipedia, the free encyclopedia<\/a><\/noindex>.<\/p>\n<p><img decoding=\"async\" alt=\"Tableau v maloobchodu, opravdu?\" src=\"\/wp-content\/uploads\/2020\/01\/5259995831dc8ae379a34bfe84e52daa.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTo znamen\u00e1, \u017ee jsme vytvo\u0159ili konfiguraci tabulku \u2013 transpozi\u010dn\u00ed matici (21x21) a z\u00edskali v\u0161echny ukazatele v \u0159\u00e1dkov\u00e9m rozd\u011blen\u00ed.<\/p>\n<p>Bylo:<br \/>\n<img decoding=\"async\" alt=\"Tableau v maloobchodu, opravdu?\" src=\"\/wp-content\/uploads\/2020\/01\/9382ee65a1482cc137a52b5f80c39eeb.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nStalo se:<br \/>\n<img decoding=\"async\" alt=\"Tableau v maloobchodu, opravdu?\" src=\"\/wp-content\/uploads\/2020\/01\/1d6653ec427ce0621b441943f589d860.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNa samotn\u00e9 transponov\u00e1n\u00ed datab\u00e1ze se prakticky v\u016fbec neztr\u00e1c\u00ed \u010das. Dotaz na v\u0161echny ukazatele za t\u00fdden byl zpracov\u00e1n stejn\u011b jako d\u0159\u00edve p\u0159ibli\u017en\u011b za 10 sekund. Nicm\u00e9n\u011b se ztratil ur\u010dit\u00fd stupe\u0148 flexibility p\u0159i vytv\u00e1\u0159en\u00ed dashboardu pro konkr\u00e9tn\u00ed ukazatel, tj. pro pravou \u010d\u00e1st dashboardu, kde byla zobrazena dynamika a podrobn\u00e1 anal\u00fdza konkr\u00e9tn\u00edho ukazatele, d\u0159\u00edve vitr\u00edna zpracov\u00e1vala za 1\u20133 sekundy, proto\u017ee dotaz sm\u011b\u0159oval na jeden ukazatel, zat\u00edmco nyn\u00ed datab\u00e1ze v\u017edy vybrala v\u0161echny ukazatele a filtruje v\u00fdsledek a\u017e po jeho vr\u00e1cen\u00ed do Tableau.<\/p>\n<p>V\u00fdsledkem je, \u017ee rychlost pr\u00e1ce dashboardu klesla t\u00e9m\u011b\u0159 na t\u0159etinu.<\/p>\n<p><b>Result:<\/b><\/p>\n<ol>\n<li>5 s \u2014 parsov\u00e1n\u00ed dashboardu, vizualizac\u00ed<\/li>\n<li> 15-20 s \u2014 p\u0159\u00edprava na kompilaci dotaz\u016f s proveden\u00edm p\u0159edpo\u010dt\u016f v Tableau<\/li>\n<li> 35-45 s \u2014 kompilace SQL dotaz\u016f a jejich paraleln\u00ed-sekvenci\u00e1ln\u00ed vykon\u00e1n\u00ed v Hana<\/li>\n<li> 5 s \u2014 zpracov\u00e1n\u00ed v\u00fdsledk\u016f, t\u0159\u00edd\u011bn\u00ed, p\u0159epo\u010det vizualizac\u00ed v Tableau<\/li>\n<li>Samoz\u0159ejm\u011b, \u017ee takov\u00e9 v\u00fdsledky nebyly pro byznys p\u0159ijateln\u00e9, a my jsme pokra\u010dovali v optimalizaci.<\/li>\n<\/ol>\n<p><\/p>\n<h3>F\u00e1ze 2. Minim\u00e1ln\u00ed logika v Tableau, pln\u00e1 materializace<\/h3>\n<p>\nUv\u011bdomovali jsme si, \u017ee nen\u00ed mo\u017en\u00e9 vytvo\u0159it dashboard s dobou odezvy n\u011bkolika sekund na vitr\u00edn\u011b, kter\u00e1 funguje 10 sekund, a zva\u017eovali jsme mo\u017enosti materializace dat na stran\u011b datab\u00e1ze pr\u00e1v\u011b pro po\u017eadovan\u00fd dashboard. Ale setkali jsme se s glob\u00e1ln\u00edm probl\u00e9mem, popsan\u00fdm v\u00fd\u0161e \u2013 neaditivn\u00ed ukazatele. Nedok\u00e1zali jsme zajistit, aby se p\u0159i zm\u011bn\u011b filtr\u016f nebo rozbalen\u00edch Tableau flexibiln\u011b p\u0159ep\u00ednalo mezi r\u016fzn\u00fdmi vitr\u00ednami a \u00farovn\u011bmi, p\u0159edpo\u010d\u00edtan\u00fdmi pro r\u016fzn\u00e9 produktov\u00e9 hierarchie (v p\u0159\u00edkladu t\u0159i dotazy bez UTE, s UTE1 a UTE2 vytv\u00e1\u0159ej\u00ed r\u016fzn\u00e9 v\u00fdsledky). Proto jsme se rozhodli zjednodu\u0161it dashboard, vzd\u00e1t se produktov\u00e9 hierarchie a pod\u00edvat se, jak rychl\u00fd m\u016f\u017ee b\u00fdt v zjednodu\u0161en\u00e9 verzi.<\/p>\n<p>Na tomto posledn\u00edm kroku jsme tedy vytvo\u0159ili samostatn\u00e9 \u00falo\u017ei\u0161t\u011b, do kter\u00e9ho jsme ulo\u017eili v transponovan\u00e9 podob\u011b v\u0161echny KPI. Na stran\u011b datab\u00e1ze jak\u00fdkoli dotaz na takov\u00e9 \u00falo\u017ei\u0161t\u011b zpracov\u00e1v\u00e1 za 0,1 \u2013 0,3 sekundy. V dashboardu jsme z\u00edskali n\u00e1sleduj\u00edc\u00ed v\u00fdsledky:<\/p>\n<p>Prvn\u00ed otev\u0159en\u00ed: 8-10 sekund<br \/>\nJak\u00e9koli kliknut\u00ed: 6-7 sekund<\/p>\n<p>\u010cas, kter\u00fd Tableau pot\u0159ebuje, se skl\u00e1d\u00e1 z:<\/p>\n<ol>\n<li>0,3 s \u2014 parsov\u00e1n\u00ed dashboardu a kompilace SQL dotaz\u016f\n<\/li>\n<li>1,5-3 s \u2014 vykon\u00e1n\u00ed SQL dotaz\u016f v Hana pro hlavn\u00ed vizualizace (spou\u0161t\u00ed se paraleln\u011b s bodem 1)\n<\/li>\n<li>1,5-2 sekundy \u2013 rendering, p\u0159epo\u010det vizualizac\u00ed\n<\/li>\n<li>1,3 sekundy \u2013 prov\u00e1d\u011bn\u00ed dodate\u010dn\u00fdch SQL dotaz\u016f pro z\u00edsk\u00e1n\u00ed relevantn\u00edch hodnot filtr\u016f (zna\u010dka, divize, m\u011bsto, obchod), parsov\u00e1n\u00ed v\u00fdsledk\u016f\n<\/li>\n<\/ol>\n<p><\/p>\n<h3>Pokud bychom m\u011bli shrnout<\/h3>\n<p>\nN\u00e1stroj Tableau n\u00e1m p\u0159i vizualizaci vyhovoval. V etap\u011b n\u00e1vrhu jsme zva\u017eovali r\u016fzn\u00e9 vizualiza\u010dn\u00ed prvky a v\u0161echny jsme na\u0161li v knihovn\u00e1ch, v\u010detn\u011b slo\u017eit\u00fdch v\u00edcestup\u0148ov\u00fdch segmentac\u00ed a v\u00edcedriverov\u00fdch waterfall\u016f.<\/p>\n<p>P\u0159i zav\u00e1d\u011bn\u00ed dashboard\u016f s hlavn\u00edmi ukazateli prodeje jsme narazili na probl\u00e9my s v\u00fdkonem, kter\u00e9 jsme dosud nedok\u00e1zali p\u0159ekonat. Str\u00e1vili jsme v\u00edce ne\u017e dva m\u011bs\u00edce a vytvo\u0159ili funk\u010dn\u011b ne\u00fapln\u00fd dashboard, jeho\u017e rychlost odezvy je na hran\u011b p\u0159ijatelnosti. A ud\u011blali jsme z\u00e1v\u011bry:<\/p>\n<ol>\n<li>Tableau nen\u00ed schopno pracovat s velk\u00fdmi objemy dat. Pokud m\u00e1te v p\u016fvodn\u00edm modelu dat v\u00edce ne\u017e 10 GB dat (p\u0159ibli\u017en\u011b 200 milion\u016f x 50 \u0159\u00e1dk\u016f), pak se dashboard v\u00fdrazn\u011b zpomaluje \u2013 od 10 sekund do n\u011bkolika minut na ka\u017ed\u00fd klik. Experimentovali jsme jak s live-connectem, tak s extraktem. Rychlost pr\u00e1ce je srovnateln\u00e1.\n<\/li>\n<li>Omezen\u00ed p\u0159i pou\u017eit\u00ed n\u011bkolika \u00falo\u017ei\u0161\u0165 (datov\u00fdch sad). Nen\u00ed mo\u017en\u00e9 standardn\u011b uv\u00e1d\u011bt vz\u00e1jemn\u00e9 vztahy datov\u00fdch sad. Pokud pou\u017eijete obch\u00e1zej\u00edc\u00ed \u0159e\u0161en\u00ed pro propojen\u00ed datov\u00fdch sad, negativn\u011b to ovlivn\u00ed v\u00fdkon. V na\u0161em p\u0159\u00edpad\u011b jsme zva\u017eovali mo\u017enost materializace dat v ka\u017ed\u00e9m pot\u0159ebn\u00e9m pohledu a na t\u011bchto materializovan\u00fdch datov\u00fdch sad\u00e1ch p\u0159ep\u00ednat se zachov\u00e1n\u00edm p\u0159edchoz\u00edho v\u00fdb\u011bru filtr\u016f \u2013 to se v Tableau uk\u00e1zalo jako nemo\u017en\u00e9.\n<\/li>\n<li>V Tableau nelze vytvo\u0159it dynamick\u00e9 parametry. Nem\u016f\u017eete parametr, kter\u00fd se pou\u017e\u00edv\u00e1 pro filtraci datov\u00e9 sady v extraktu nebo p\u0159i live-connectu, naplnit v\u00fdsledkem jin\u00e9ho v\u00fdb\u011bru z datov\u00e9 sady nebo v\u00fdsledku jin\u00e9ho SQL dotazu, pouze nativn\u00edm vstupem u\u017eivatele nebo konstantou.\n<\/li>\n<li>Omezen\u00ed spojen\u00e1 s vytv\u00e1\u0159en\u00edm dashboardu s prvky OLAP|Kontingen\u010dn\u00ed tabulka. <br \/>\nV MSTR, SAP SAC, SAP Analysis, pokud do zpr\u00e1vy p\u0159id\u00e1te datov\u00fd soubor, jsou v\u0161echny objekty na n\u011bm navz\u00e1jem propojen\u00e9 jako v\u00fdchoz\u00ed nastaven\u00ed. V Tableau to neexistuje, vazbu je t\u0159eba nastavovat ru\u010dn\u011b. To je pravd\u011bpodobn\u011b flexibiln\u011bj\u0161\u00ed, ale pro v\u0161echny na\u0161e dashboardy je to povinn\u00fd po\u017eadavek na prvky \u2013 proto to p\u0159edstavuje dodate\u010dn\u00e9 pracovn\u00ed n\u00e1klady. Nav\u00edc, pokud vytv\u00e1\u0159\u00edte propojen\u00e9 filtry, aby nap\u0159\u00edklad p\u0159i filtrov\u00e1n\u00ed regionu byl seznam m\u011bst omezen pouze na m\u011bsta tohoto regionu, okam\u017eit\u011b \u010del\u00edte sekven\u010dn\u00edm dotaz\u016fm na datab\u00e1zi nebo extrakt, co\u017e v\u00fdrazn\u011b zpomaluje dashboard.<\/li>\n<li>Omezen\u00ed v funkc\u00edch. Jak nad extraktem, tak T\u00cdM M\u00c9N\u011a nad datov\u00fdm souborem z Live-connectu nelze prov\u00e1d\u011bt hromadn\u00e9 transformace. To lze prov\u00e1d\u011bt prost\u0159ednictv\u00edm Tableau Prep, ale to p\u0159edstavuje dodate\u010dn\u00e9 pracovn\u00ed n\u00e1klady a dal\u0161\u00ed n\u00e1stroj, kter\u00fd je pot\u0159eba se u\u010dit a udr\u017eovat. Nap\u0159\u00edklad nem\u016f\u017eete transponovat data, prov\u00e9st join sama se sebou. To je uzav\u0159eno prost\u0159ednictv\u00edm transformac\u00ed jednotliv\u00fdch sloupc\u016f nebo pol\u00ed, kter\u00e9 je t\u0159eba vyb\u00edrat prost\u0159ednictv\u00edm case nebo if a to generuje velmi slo\u017eit\u00e9 SQL dotazy, p\u0159i kter\u00fdch datab\u00e1ze tr\u00e1v\u00ed v\u011bt\u0161inu \u010dasu kompilac\u00ed textu dotazu. Tyto neflexibility n\u00e1stroje jsme museli \u0159e\u0161it na \u00farovni vitr\u00edny, co\u017e vede ke slo\u017eit\u011bj\u0161\u00ed struktu\u0159e \u00falo\u017ei\u0161t\u011b, dodate\u010dn\u00fdm z\u00e1t\u011b\u017e\u00edm a transformac\u00edm.\n<\/li>\n<\/ol>\n<p>\nNepolo\u017eili jsme k\u0159\u00ed\u017e na Tableau. Ale jako n\u00e1stroj, kter\u00fd je schopen vytv\u00e1\u0159et pr\u016fmyslov\u00e9 dashboardy a prost\u0159edek, pomoc\u00ed kter\u00e9ho lze nahradit a digitalizovat cel\u00fd syst\u00e9m firemn\u00edho reportingu, Tableau nepl\u00e1nujeme.<\/p>\n<p>Nyn\u00ed aktivn\u011b vyv\u00edj\u00edme podobn\u00fd dashboard v jin\u00e9m n\u00e1stroji a z\u00e1rove\u0148 se pokou\u0161\u00edme p\u0159epracovat architekturu dashboardu v Tableau, abychom ji je\u0161t\u011b v\u00edce zjednodu\u0161ili. Pokud by komunitu zaj\u00edmaly v\u00fdsledky, r\u00e1di o nich povykl\u00e1d\u00e1me.<\/p>\n<p>Tak\u00e9 o\u010dek\u00e1v\u00e1me va\u0161e n\u00e1pady nebo rady ohledn\u011b toho, jak v Tableau stav\u011bt rychl\u00e9 dashboardy nad takov\u00fdmi velk\u00fdmi objemy dat, proto\u017ee na\u0161e webov\u00e9 str\u00e1nky obsahuj\u00ed mnohem v\u00edce dat ne\u017e maloobchod.<br \/>\n<br \/>Zdroj: <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.3 - 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\/cs\/blog\/news\/tableau-v-roznitse-realno\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\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\/cs\/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 v maloobchodu, je to skute\u010dn\u011b? | ProHoster","description":"\u010cas reportov\u00e1n\u00ed v Excelu rychle miz\u00ed \u2014 trend sm\u011brem k pohodln\u00fdm n\u00e1stroj\u016fm pro prezentaci a anal\u00fdzu informac\u00ed je patrn\u00fd ve v\u0161ech oblastech.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/news\/tableau-v-roznitse-realno","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","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\/cs\/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\/cs\/wp-json\/wp\/v2\/posts\/55144","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=55144"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/55144\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=55144"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=55144"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=55144"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}