{"id":73358,"date":"2020-03-09T08:42:14","date_gmt":"2020-03-09T05:42:14","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/clickhouse-vizualno-bystryj-i-naglyadnyj-analiz-dannyh-v-tabix-igor-stryhar"},"modified":"2020-03-09T08:42:14","modified_gmt":"2020-03-09T05:42:14","slug":"clickhouse-vizualno-bystryj-i-naglyadnyj-analiz-dannyh-v-tabix-igor-stryhar","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/clickhouse-vizualno-bystryj-i-naglyadnyj-analiz-dannyh-v-tabix-igor-stryhar","title":{"rendered":"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><strong>Odpor\u00fa\u010dam obozn\u00e1mi\u0165 sa s prepisom spr\u00e1vy z roku 2017 Igora Strychara \u201eClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix\u201c.<\/strong><\/p>\n<p><\/p>\n<p>Webov\u00e9 rozhranie pre ClickHouse v projekte Tabix.<br \/>\nHlavn\u00e9 mo\u017enosti:<\/p>\n<p><\/p>\n<ul>\n<li>Pracuje s ClickHouse priamo z prehliada\u010da, bez potreby in\u0161tal\u00e1cie dodato\u010dn\u00e9ho softv\u00e9ru;<\/li>\n<li>Editor dotazov so zv\u00fdraznen\u00edm syntaxe;<\/li>\n<li>Automatick\u00e9 dop\u013a\u0148anie pr\u00edkazov;<\/li>\n<li>N\u00e1stroje na grafick\u00fa anal\u00fdzu vykon\u00e1vania dotazov;<\/li>\n<li>Farebn\u00e9 sch\u00e9my na v\u00fdber.<br \/>\n<img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/9d95cf5ceb5acc3a1301943165ca9225.png\" style=\"display:block;margin: 0 auto;\" \/><\/li>\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\n<center><div class=\"youtube-placeholder\" data-id=\"w1-XsL3nbRg\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/w1-XsL3nbRg\/hqdefault.jpg\" alt=\"Prehrajte video\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/950e3d0a3ff10d267ae48e897f5cbdb6.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Som technick\u00fd riadite\u013e v SME2. Sme spravodajsk\u00fd agreg\u00e1tor spr\u00e1v. Uklad\u00e1me ve\u013ea \u00fadajov, ktor\u00e9 dost\u00e1vame od na\u0161ich partnerov a registrujeme ich v ClickHouse \u2013 okolo 30 000 dopytov za sekundu.<\/p>\n<p><\/p>\n<p>Ide o tak\u00e9 \u00fadaje, ako s\u00fa:<\/p>\n<p><\/p>\n<ul>\n<li>Kliky na spr\u00e1vy.<\/li>\n<li>Zobrazenia spr\u00e1v v agreg\u00e1tore.<\/li>\n<li>Zobrazenia bannerov v na\u0161ej sieti.<\/li>\n<li>A registrujeme udalosti z n\u00e1\u0161ho vlastn\u00e9ho po\u010d\u00edtadla, ktor\u00e9 je podobn\u00e9 Yandex.Metrike. Toto je na\u0161a vlastn\u00e1 mikroanalytika. <\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/8f5a7af9fef04a51fed29279557c3b64.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Mali sme ve\u013emi b\u00farliv\u00fd \u017eivot pred ClickHouse. Ve\u013emi sme sa tr\u00e1pili, ke\u010f sme sa sna\u017eili uklada\u0165 tieto \u00fadaje niekam a nejak ich analyzova\u0165.<\/p>\n<p><\/p>\n<p><strong>\u017divot pred ClickHouse \u2013 infiniDB<\/strong><\/p>\n<p><\/p>\n<p>Prv\u00e9, \u010do sme mali, bolo infiniDB. Vydr\u017ealo n\u00e1m to 4 roky. Spustili sme ju s \u0165a\u017ekos\u0165ami. <\/p>\n<p><\/p>\n<ul>\n<li>Nepodporuje klastrovanie ani shardovanie. \u017diadne tak\u00e9 chytr\u00e9 veci sa z krabice neaktivovali. <\/li>\n<li>Mala probl\u00e9my s na\u010d\u00edtan\u00edm \u00fadajov. Iba \u0161pecifick\u00e1 konzolov\u00e1 utilita, ktor\u00e1 mohla iba na\u010d\u00edta\u0165 CSV s\u00fabory a len ve\u013emi nejasne. <\/li>\n<li>Datab\u00e1za je jednovl\u00e1knov\u00e1. Mohlo sa bu\u010f p\u00edsa\u0165, alebo \u010d\u00edta\u0165. Ale umo\u017e\u0148ovala spracov\u00e1va\u0165 ve\u013ek\u00e9 objemy \u00fadajov. <\/li>\n<li>A mala e\u0161te jeden zauj\u00edmav\u00fd obch\u00e1dzaj\u00faci trik. Ka\u017ed\u00fa noc bolo treba re\u0161tartova\u0165 server, inak nefungoval. <\/li>\n<\/ul>\n<p><\/p>\n<p>Pracovala u n\u00e1s do konca roku 2016, ke\u010f sme sa \u00faplne prepli na ClickHouse.<\/p>\n<p><\/p>\n<p><strong>\u017divot pred ClickHouse \u2013 Cassandra<\/strong><\/p>\n<p><\/p>\n<p>Ke\u010f\u017ee infiniDB bola jednovl\u00e1knov\u00e1, rozhodli sme sa, \u017ee potrebujeme nejak\u00fa viacvl\u00e1knov\u00fa datab\u00e1zu, do ktorej m\u00f4\u017eeme p\u00edsa\u0165 mnoho vl\u00e1kien s\u00fa\u010dasne.<\/p>\n<p><\/p>\n<p>Vysk\u00fa\u0161ali sme ve\u013ea zauj\u00edmav\u00fdch vec\u00ed. Potom sme sa rozhodli vysk\u00fa\u0161a\u0165 Cassandru. S Cassandrou sme mali v\u0161etko skvel\u00e9. 10 000 dopytov za sekundu na vklad. 2 000 dopytov niekde na \u010d\u00edtanie. <\/p>\n<p><\/p>\n<p>Ale mala aj svoje zauj\u00edmavosti. Raz za mesiac alebo raz za dva mesiace sa u nej vyskytla desynchroniz\u00e1cia datab\u00e1zy. Tak\u017ee sme museli vsta\u0165 a be\u017ea\u0165 opravi\u0165 Cassandru. Servery sme re\u0161tartovali postupne. A v\u0161etko sa stalo hladk\u00fdm a pekn\u00fdm. <\/p>\n<p><\/p>\n<p><strong>\u017divot pred ClickHouse \u2013 Druid<\/strong><\/p>\n<p><\/p>\n<p>Potom sme si uvedomili, \u017ee potrebujeme e\u0161te viac zapisova\u0165 \u00fadajov. V roku 2016 sme za\u010dali pozera\u0165 na Druid. <\/p>\n<p><\/p>\n<p>Druid je otvoren\u00e1 datab\u00e1za nap\u00edsan\u00e1 v Jave. Ve\u013emi \u0161pecifick\u00e1. A vyhovovala clickstreamu, ke\u010f sme potrebovali uklada\u0165 ur\u010dit\u00fd pr\u00fad udalost\u00ed a potom realizova\u0165 agreg\u00e1cie alebo vytv\u00e1ra\u0165 analytick\u00e9 spr\u00e1vy.<\/p>\n<p><\/p>\n<p>Druid mal verziu 0.9.X. <\/p>\n<p><\/p>\n<p>Sama o sebe sa datab\u00e1za rozbieha ve\u013emi \u0165a\u017eko. To je zlo\u017eitosti infra\u0161trukt\u00fary. Aby ju rozbehlo, bolo potrebn\u00e9 postavi\u0165 ve\u013ea a ve\u013ea hardv\u00e9ru. A ka\u017ed\u00fd hardv\u00e9r mal svoju vlastn\u00fa \u00falohu. <\/p>\n<p><\/p>\n<p>Na to, aby sa \u00fadaje do nej nahrali, bolo potrebn\u00e9 aplikova\u0165 ak\u00e9si \u0161amanstvo. Existuje OpenSource projekt \u2013 Tranquility, ktor\u00fd v pr\u00fade str\u00e1cal na\u0161e \u00fadaje. Ke\u010f sme do neho nahr\u00e1vali \u00fadaje, str\u00e1cal ich. <\/p>\n<p><\/p>\n<p>Ale nejak sme ho za\u010dali implementova\u0165. Boli sme ako je\u017ekovia, ktor\u00ed sa pichali, ale pokra\u010dovali jes\u0165 kaktus, za\u010dali sme ho implementova\u0165. Potrebovali sme asi mesiac, aby sme pripravili cel\u00fa infra\u0161trukt\u00faru na to. T. j. objedna\u0165 servery, nastavi\u0165 \u00falohy, vykona\u0165 \u00fapln\u00fa automatiz\u00e1ciu rozbiehania. T. j. v pr\u00edpade p\u00e1du klastra, aby sa automaticky spustil druh\u00fd klaster. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/a8193aab09ab9cce3b69e3b84ce470dd.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Ale tu sa stalo z\u00e1zrak. Bol som na dovolenke a moji kolegovia mi posielaj\u00fa odkaz na <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/yandex\/blog\/303282\/\">habr<\/a><\/noindex>, kde sa hovor\u00ed o tom, \u017ee Yandex sa rozhodol otvori\u0165 ClickHouse. Povedal som, \u017ee po\u010fme to vysk\u00fa\u0161a\u0165.<\/p>\n<p><\/p>\n<p>A doslova za 2 dni sme rozbehli testovac\u00ed klaster ClickHouse. Za\u010dali sme do neho nahr\u00e1va\u0165 \u00fadaje. V porovnan\u00ed s infiniDB \u2013 je to jednoduch\u00e9, v porovnan\u00ed s Druid \u2013 je to jednoduch\u00e9. V porovnan\u00ed s Cassandrou taktie\u017e jednoduch\u00e9. Preto\u017ee ak sa z PHP nahr\u00e1vaj\u00fa \u00fadaje do Cassandry, nie je to jednoduch\u00e9.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/0b4b6ea08f7f7037d0e26dbe3f33fa53.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u010co sme z\u00edskali? V\u00fdkon v r\u00fdchlosti. V\u00fdkon v ulo\u017een\u00ed \u00fadajov. T. j. pou\u017e\u00edva sa ove\u013ea menej diskov\u00e9ho priestoru. ClickHouse je r\u00fdchly, je ve\u013emi r\u00fdchly v porovnan\u00ed s in\u00fdmi produktmi. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/9ff5e2ac127be8813b5d5cec49dab73a.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>V \u010dase spustenia, ke\u010f Yandex publikoval ClickHouse v OpenSource, existoval len konzolov\u00fd klient. V na\u0161ej spolo\u010dnosti SME2 sme sa rozhodli vysk\u00fa\u0161a\u0165 vytvori\u0165 nat\u00edvneho klienta pod web, aby sme mohli otvori\u0165 str\u00e1nku z prehliada\u010da, nap\u00edsa\u0165 dotaz a z\u00edska\u0165 v\u00fdsledok, preto\u017ee sme za\u010dali p\u00edsa\u0165 ve\u013ea dotazov. P\u00edsa\u0165 v konzole je \u0165a\u017ek\u00e9. A urobili sme na\u0161u prv\u00fa verziu.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/a2569a45f9bf1b91815ca3dfa0eefcf3.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>A niekde v bl\u00edzkosti zimy minul\u00e9ho roku sa za\u010dali objavova\u0165 extern\u00e9 n\u00e1stroje na pr\u00e1cu s ClickHouse. To s\u00fa tak\u00e9 n\u00e1stroje ako:<\/p>\n<p><\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/redash.io\/\">Redash.IO<\/a><\/noindex>.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/zeppelin.apache.org\/\">Apache Zeppelin<\/a><\/noindex>.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/airbnb\/incubator-superset\">Superset Airbnb<\/a><\/noindex>. (Teraz <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/apache\/incubator-superset\">https:\/\/github.com\/apache\/incubator-superset<\/a><\/noindex>)<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/blog.jetbrains.com\/datagrip\/2018\/08\/15\/datagrip-2018-2-2-clickhouse-support-and-bugfixes\/\">Jetbrains IDE<\/a><\/noindex>.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Vertamedia\/clickhouse-grafana\">Vertamedia\/clickhouse-grafana<\/a><\/noindex>. <\/li>\n<\/ul>\n<p><\/p>\n<p>Presk\u00famam niektor\u00e9 z t\u00fdchto n\u00e1strojov, t. j. tie, s ktor\u00fdmi som pracoval. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/7b91bc29b1c04020b56c89621287e8c1.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Dobr\u00fd n\u00e1stroj, ale pre Druid. Ke\u010f sme implementovali Druid, sk\u00fa\u0161al som SuperSet. P\u00e1\u010dil sa mi. Pre Druid funguje ve\u013emi r\u00fdchlo. <\/p>\n<p><\/p>\n<p>Pre ClickHouse sa nehod\u00ed. T. j. on je funk\u010dn\u00fd, sp\u00fa\u0161\u0165a sa, ale je pripraven\u00fd sprac\u00fava\u0165 len element\u00e1rne dotazy ako: SELECT event, GROUP BY event. Nepodporuje zlo\u017eitej\u0161iu syntaxu ClickHouse.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/a708c787120de3db725a9bba4c8bd642.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u010eal\u0161\u00ed n\u00e1stroj \u2013 Apache Zeppelin. To je dobr\u00e1 a zauj\u00edmav\u00e1 vec. Funguje. Podporuje notebooky, dashboardy, podporuje premenn\u00e9. Viem, \u017ee niekto z komunity ClickHouse ho pou\u017e\u00edva. <\/p>\n<p><\/p>\n<p>Ale neexistuje podpora syntaxy ClickHouse, t. j. dotazy treba p\u00edsa\u0165 bu\u010f v konzole, alebo niekde inde. Potom je potrebn\u00e9 skontrolova\u0165, \u017ee to v\u0161etko funguje. To je jednoducho nepraktick\u00e9. Ale podpora dashboardov je u neho dobr\u00e1. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/0c2afefc1504d14dd50f88459a652a1c.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u010eal\u0161\u00ed n\u00e1stroj \u2013 Redash.IO. Redash je hostovan\u00fd na internete. T. j. na rozdiel od predch\u00e1dzaj\u00facich n\u00e1strojov ho nie je potrebn\u00e9 in\u0161talova\u0165. A to je tak\u00fd dashboard s mo\u017enos\u0165ou konsolid\u00e1cie \u00fadajov z r\u00f4znych zdrojov. T. j. m\u00f4\u017eete exportova\u0165 z ClickHouse, MySQL, PostgreSQL a in\u00fdch datab\u00e1z. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/dc639fe6e9716c835d1fe0fdfaa300b8.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Doslova pred mesiacom (v marci 2017) bola pridan\u00e1 podpora v Grafana. Ke\u010f vytv\u00e1rate spr\u00e1vy v Grafana, povedzme, o stave v\u00e1\u0161ho hardv\u00e9ru alebo o nejak\u00fdch metrik\u00e1ch, teraz m\u00f4\u017eete vytvori\u0165 rovnak\u00fd graf alebo nejak\u00fd panel z \u00fadajov z ClickHouse priamo. To je ve\u013emi pohodln\u00e9 a my to pou\u017e\u00edvame intern\u00e9. To umo\u017e\u0148uje n\u00e1js\u0165 anom\u00e1lie. T. j. ak sa nie\u010do deje a nejak\u00fd hardv\u00e9r zlyh\u00e1 alebo je pre\u0165a\u017een\u00fd, m\u00f4\u017eete si pozrie\u0165 pr\u00ed\u010dinu, ak sa tieto \u00fadaje dostali do ClickHouse v\u010das. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/0dd54a7633d25d0c924c2e6825028eb3.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Bolo mi ve\u013emi nepohodln\u00e9 p\u00edsa\u0165 v t\u00fdchto n\u00e1strojoch alebo v konzole. A rozhodol som sa vylep\u0161i\u0165 na\u0161e prv\u00e9 rozhranie. A in\u0161piroval som sa my\u0161lienkou z EventSQL, SeperSet, Zeppelin.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/3252a09e0942428143336639aa399f4d.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u010co som chcel? Chcel som z\u00edska\u0165 grafy, vylep\u0161en\u00fd editor, implementova\u0165 podporu slovn\u00edkov n\u00e1povedy. Preto\u017ee ClickHouse m\u00e1 skvel\u00fa funkciu \u2013 to s\u00fa slovn\u00edky. Ale so slovn\u00edkmi je \u0165a\u017ek\u00e9 pracova\u0165, preto\u017ee treba pam\u00e4ta\u0165 na form\u00e1t ulo\u017een\u00fdch hodn\u00f4t, t. j. \u010di to je \u010d\u00edslo alebo re\u0165azec at\u010f. A ke\u010f\u017ee \u010dasto pou\u017e\u00edvame slovn\u00edky v r\u00f4znych vari\u00e1ci\u00e1ch, bolo dos\u0165 \u0165a\u017ek\u00e9 p\u00edsa\u0165 dotazy.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/90a529b4fb5d03a6d61c89e00287b21d.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Uplynuli 3 mesiace od vydania na\u0161ej prvej verzie. Urobil som pribli\u017ene 330 commitov v uzavretej vetve a vy\u0161lo z toho Tabix.<\/p>\n<p><\/p>\n<p>Na rozdiel od predch\u00e1dzaj\u00facej verzie, ktor\u00e1 sa volala ClickHouse-Frontend, som sa rozhodol premenova\u0165 ju na jednoduch\u00fd n\u00e1zov. A vznikol Tabix.<\/p>\n<p><\/p>\n<p>\u010co sa objavilo?<\/p>\n<p><\/p>\n<p>Kresl\u00ed grafy. Podporuje SQL syntax ClickHouse. Poskytuje n\u00e1povedu k funkci\u00e1m a m\u00e1 mnoho \u010fal\u0161\u00edch zauj\u00edmav\u00fdch schopnost\u00ed.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/cd2bbb0c2c3e0fa2d2622bbd2aecdbc7.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Takto vyzer\u00e1 celkov\u00e1 sch\u00e9ma Tabix. Na\u013eavo je zobrazen\u00e9 stromov\u00e9 zobrazenie. V strede je editor dotazov. A dole je v\u00fdsledok tohto dotazu.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/becf5df173220480e077ae8d8e0ebf3e.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u010ealej uk\u00e1\u017eem, ako funguje editor dotazov. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/d5ca1028922a12d5e6f133704d4c91a2.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Tu automaticky funguje autokomplet\u00e1cia pre tabu\u013eku a poskytuje n\u00e1povedu pre polia. A n\u00e1povedy k funkci\u00e1m. Ak stla\u010d\u00edte ctrl a enter, dotaz sa vykon\u00e1 alebo sa zobraz\u00ed chyba. Najjednoduch\u0161\u00ed dotaz sa posiela do Tabix a dost\u00e1va sa v\u00fdsledok, t. j. r\u00fdchlo sa d\u00e1 pracova\u0165 s ClickHouse.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/74623f9f5030eb08523dc7269517a5d5.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Dictionaries, ako som u\u017e povedal, s\u00fa ve\u013emi zauj\u00edmav\u00e1 vec, s ktorou ve\u013ea pracujeme. A ktor\u00e1 n\u00e1m umo\u017enila dosiahnu\u0165 mnoho vec\u00ed. Napr\u00edklad, v slovn\u00edkoch uchov\u00e1vame v\u0161etky mest\u00e1. Uchov\u00e1vame identifik\u00e1tor mesta a jeho n\u00e1zov, jeho zemepisn\u00fa \u0161\u00edrku a d\u013a\u017eku. A v datab\u00e1ze uchov\u00e1vame iba identifik\u00e1tor mesta. T\u00fdm p\u00e1dom ve\u013emi silno komprimujeme d\u00e1ta.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/fa698b916b01a58f182003e6a15dfea0.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Na prv\u00fd poh\u013ead jednoduch\u00e1 vec, ale v ClickHouse ve\u013emi zauj\u00edmavo pom\u00e1ha. Z toho d\u00f4vodu, \u017ee ClickHouse podporuje iba vnoren\u00e9 join, dotaz rastie smerom nadol a do \u0161\u00edrky pomerne silno. A ke\u010f sa otvor\u00ed z\u00e1tvorka a nasleduje dlh\u00e9 vyjadrenie, tak tak\u00e1 relat\u00edvne jednoduch\u00e1 vec, ako je zbalenie dotazu, u\u013eah\u010duje pr\u00e1cu s n\u00edm. Preto\u017ee ke\u010f m\u00e1 dotaz 200-300 riadkov a je ve\u013emi \u0161irok\u00fd, zbalenie dotazu naozaj pom\u00e1ha n\u00e1js\u0165 nejak\u00e9 miesto alebo ho lokalizova\u0165.<\/p>\n<p><\/p>\n<p>Strom objektov, multiodpovede a z\u00e1lo\u017eky (Video 13:46) <noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/w1-XsL3nbRg?t=826\">https:\/\/youtu.be\/w1-XsL3nbRg?t=826<\/a><\/noindex>)<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/d43efecc6b0b395cdc17a3dd9db53400.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u010ealej uk\u00e1\u017eem strom a z\u00e1lo\u017eky. Na\u013eavo je strom, hore m\u00f4\u017eete vytvori\u0165 nieko\u013eko z\u00e1lo\u017eiek. Z\u00e1lo\u017eky s\u00fa ako pracovn\u00fd priestor. M\u00f4\u017eete vytvori\u0165 nieko\u013eko z\u00e1lo\u017eiek a ka\u017ed\u00fa nazva\u0165 po svojom. Je to ako mini syst\u00e9m na vytv\u00e1ranie spr\u00e1vy.<\/p>\n<p><\/p>\n<p>Z\u00e1lo\u017eky sa automaticky ukladaj\u00fa. Ak re\u0161tartujete prehliada\u010d, alebo ho zavriete, alebo otvor\u00edte Tabix, v\u0161etko sa ulo\u017e\u00ed.<\/p>\n<p><\/p>\n<p>Hor\u00faca kl\u00e1vesa \u2013 pohodln\u00e9 (Video 14:39) <noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/w1-XsL3nbRg?t=879\">https:\/\/youtu.be\/w1-XsL3nbRg?t=879<\/a><\/noindex>)<\/p>\n<p><\/p>\n<p>Existuj\u00fa hor\u00face kl\u00e1vesy a ich je celkom dos\u0165. Niektor\u00e9 som tu uviedol ako pr\u00edklad. Ide o prep\u00ednanie z\u00e1lo\u017eiek, vykonanie dotazu alebo vykonanie viacer\u00fdch dotazov. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/27f3e6d0dbb4d1038bb551808b13d2ac.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Uk\u00e1\u017eem v\u00e1m, ako pracova\u0165 s v\u00fdsledkom. Odosielame dotaz. Tu kresl\u00edm sin, cos a tg. M\u00f4\u017eeme zv\u00fdrazni\u0165 v\u00fdsledok, tzn. vykresli\u0165 typick\u00fa mapu na st\u013apec. M\u00f4\u017eeme zv\u00fdrazni\u0165 kladn\u00e9 alebo z\u00e1porn\u00e9 hodnoty. Alebo jednoducho sfarbi\u0165 nejak\u00fd konkr\u00e9tny prvok tabu\u013eky. Je to praktick\u00e9, ke\u010f je tabu\u013eka obrovsk\u00e1 a treba vyh\u013eada\u0165 nejak\u00fa anom\u00e1liu. Ke\u010f som h\u013eadal anom\u00e1lie, zv\u00fdraz\u0148oval som niektor\u00e9 riadky, niektor\u00e9 prvky zelenou alebo \u010dervenou farbou.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/af0c21073a1edd81e4d688f119ef7568.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Je tam ve\u013ea zauj\u00edmav\u00fdch vec\u00ed. Napr\u00edklad, ako kop\u00edrova\u0165 do Redmine Markdown. Ak potrebujete niekde skop\u00edrova\u0165 v\u00fdsledok, je to ve\u013emi praktick\u00e9. M\u00f4\u017eete jednoducho vytiahnu\u0165 oblas\u0165, poveda\u0165 \u201eKop\u00edrova\u0165 do Redmine\u201c a on to skop\u00edruje do Redmine Markdown alebo vytvor\u00ed dopyt Where.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/43034a47b5ca31ee08e7721cc5f5159c.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u010ealej - optimaliz\u00e1cia dotazov. Raz som zabudol uvies\u0165 pole \u201edate\u201c. A m\u00f4j dotaz v ClickHouse bol spracovan\u00fd nie ve\u013emi, ve\u013emi r\u00fdchlo, ale r\u00fdchlo, tzn. menej ako sekundu. Ke\u010f som videl, ko\u013eko riadkov spracov\u00e1va, zatriaslo mnou. Za de\u0148 nap\u00ed\u0161eme to\u013eko riadkov do tejto tabu\u013eky. Za\u010dal som analyzova\u0165 dopyt a zistil som, \u017ee som v jednom mieste vynechal d\u00e1tum. Tzn. zabudol som uvies\u0165, \u017ee potrebujem d\u00e1ta nie zo v\u0161etkej tabu\u013eky, ale za nejak\u00e9 konkr\u00e9tne obdobie.<\/p>\n<p><\/p>\n<p>V Tabix je z\u00e1lo\u017eka \u201eStats\u201c, kde sa uchov\u00e1va cel\u00e1 hist\u00f3ria odoslan\u00fdch dotazov, tzn. tam si m\u00f4\u017eete pozrie\u0165, ko\u013eko riadkov bolo pre\u010d\u00edtan\u00fdch t\u00fdmto dotazom a ko\u013eko \u010dasu trval jeho v\u00fdkon. To umo\u017e\u0148uje optimaliz\u00e1ciu. <\/p>\n<p><\/p>\n<p>Nad v\u00fdsledkom dotazu m\u00f4\u017eete vytvori\u0165 kontingen\u010dn\u00fa tabu\u013eku. Odoslali ste dopyt do ClickHouse, z\u00edskali ste nejak\u00e9 \u00fadaje. A potom m\u00f4\u017eete tieto \u00fadaje pos\u00fava\u0165 my\u0161ou a vytvori\u0165 nejak\u00fa kontingen\u010dn\u00fa tabu\u013eku.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/0365df303eb55336eeb8a037cb118113.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u010eal\u0161ia zauj\u00edmav\u00e1 vec - je vytv\u00e1ranie grafov. Predpokladajme, \u017ee m\u00e1me tak\u00fdto dotaz: na sin, cos od 0 do 299. A aby ste ho nakreslili, mus\u00edte vybra\u0165 z\u00e1lo\u017eku \u201eDraw\u201c a z\u00edskate graf s va\u0161imi sin a cos. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/bdf00b9d6bffb907e88d2fdb7bfb16dc.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>M\u00f4\u017eete to rozdeli\u0165 na r\u00f4zne osi, tzn. m\u00f4\u017eete naraz vykresli\u0165 dva grafy ved\u013ea seba. Nap\u00edsa\u0165 jedn\u00fa pr\u00edkaz a druh\u00fd pr\u00edkaz. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/efe77846e3f5f30a5d73e75be53d608a.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>M\u00f4\u017eete vykresli\u0165 histogramy.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/e531aac548eca2eb9e30dac21f8876b8.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>M\u00f4\u017eete to rozdeli\u0165 na maticu grafov.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/3404f87cee0e376df8ca62f03fc0fc7e.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>M\u00f4\u017eete vytvori\u0165 teplotn\u00fa mapu. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/e15fe90c49bb850c821dab7492856b0b.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>M\u00f4\u017eete vytvori\u0165 teplotn\u00fd kalend\u00e1r. Mimochodom, je to ve\u013emi praktick\u00e1 vec, ke\u010f treba analyzova\u0165 anom\u00e1lie za rok, tzn. n\u00e1js\u0165 bu\u010f v\u00fdkyvy, alebo poklesy. Pomohla mi v tom t\u00e1to vizualiz\u00e1cia d\u00e1t. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/08945df379d33aa73518ef10d02fe561.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u010eal\u0161\u00ed - to je Treemap.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/a7331b33b77e98ce85aff0316e3dcc76.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/5794844e8c1db71f1507cbdae67fedf6.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Sankeys \u2013 zauj\u00edmav\u00fd graf. Je to bu\u010f Streamgraphs, alebo River. Ale ja to naz\u00fdvam River. Taktie\u017e umo\u017e\u0148uje h\u013eada\u0165 nejak\u00e9 anom\u00e1lie. Je ve\u013emi u\u017eito\u010dn\u00fd. Odpor\u00fa\u010dam ho pou\u017ei\u0165 na vyh\u013ead\u00e1vanie.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/483f363d93ba80dc9ac165ae083db585.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u010eal\u0161ia zauj\u00edmav\u00e1 vec je kreslenie dynamickej mapy. Ak vo va\u0161ej datab\u00e1ze s\u00fa ulo\u017een\u00e9 zemepisn\u00e9 \u0161\u00edrky, d\u013a\u017eky a napr\u00edklad aj cie\u013e, ak m\u00e1te napr\u00edklad autodopravy alebo lietadl\u00e1, ktor\u00e9 lietaj\u00fa, m\u00f4\u017eete nakresli\u0165 trasy cie\u013eov. M\u00f4\u017eete tie\u017e nastavi\u0165 r\u00fdchlos\u0165, ve\u013ekos\u0165 t\u00fdchto objektov, do ktor\u00fdch prich\u00e1dzaj\u00fa.<\/p>\n<p><\/p>\n<p>Ale probl\u00e9m s touto mapou je ten, \u017ee vykres\u013euje iba mapu sveta, nie je tam \u017eiadne podrobnosti.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/13f302e67e7f84dc85728204153d6377.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nesk\u00f4r som pridal Google mapu. Ak uchov\u00e1vate zemepisn\u00fa \u0161\u00edrku a d\u013a\u017eku, m\u00f4\u017eete zobrazi\u0165 v\u00fdsledok na Google mape, ale bez podpory lietadiel.<\/p>\n<p><\/p>\n<p>Hlavn\u00e9 funkcie pr\u00e1ce s v\u00fdsledkom, s dotazom v Tabix sme prediskutovali. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/849baa55e6865ab451b82f23fe6e5110.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nasleduj\u00faca vec je anal\u00fdza v\u00e1\u0161ho servera ClickHouse. Existuje samostatn\u00e1 z\u00e1lo\u017eka \u201eMetriky\u201c, v ktor\u00fdch m\u00f4\u017eete vidie\u0165 ve\u013ekos\u0165 ulo\u017een\u00fdch \u00fadajov pre ka\u017ed\u00fd st\u013apec. Na sn\u00edmku obrazovky je zobrazen\u00e9, \u017ee toto pole \u201ereferrer\u201c zaber\u00e1 asi 730 Gb. Ak sa tohto po\u013ea vzd\u00e1me, u\u0161etr\u00edme tri shard-y po 700 GB, teda asi 2 TB, ktor\u00e9 nepotrebujeme. <\/p>\n<p><\/p>\n<p>Taktie\u017e m\u00e1me pole \u201erequest_id\u201c, ktor\u00e9 uchov\u00e1vame ako re\u0165azec. Ale ak za\u010dneme uchov\u00e1va\u0165 to v \u010d\u00edselnej forme, toto pole sa extr\u00e9mne zmen\u0161\u00ed. <\/p>\n<p><\/p>\n<p>Taktie\u017e tu je zobrazen\u00e1 konfigur\u00e1cia servera a zoznam n\u00f3d v\u00e1\u0161ho klastrov\u00e9ho syst\u00e9mu. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/fa2a35c1af59b3f56059fcfb26571c6e.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nasleduj\u00faca z\u00e1lo\u017eka \u2013 to s\u00fa metriky. Tieto sa z\u00edskavaj\u00fa v re\u00e1lnom \u010dase z ClickHouse a jednoducho umo\u017e\u0148uj\u00fa analyzova\u0165 stav servera a pochopi\u0165, \u010do sa s n\u00edm deje. Nie je to n\u00e1hrada za plnohodnotn\u00fa Grafanu. Je potrebn\u00e9 na r\u00fdchlu anal\u00fdzu. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/7de741718ef19b81bd0f7f33dbed019e.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nasleduj\u00faca z\u00e1lo\u017eka \u2013 to s\u00fa procesy. Pod\u013ea nich m\u00f4\u017eete pochopi\u0165, \u010do sa deje na serveri. Pochopi\u0165, \u010do sa tam deje. Mal som dotaz, ktor\u00fd na \u010d\u00edtanie bral 200 GB zaka\u017ed\u00fdm. To som videl v\u010faka tomuto rozhraniu. Odhalil som ho a upravil. A dostal som to na asi 30 GB, teda v\u00fdkon sa zlep\u0161il nieko\u013ekokr\u00e1t.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strychar\" src=\"\/wp-content\/uploads\/2020\/03\/084b6131b189364f9e093792125649df.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u010eakujem! A to je v OpenSource.<\/p>\n<p><\/p>\n<p>Skon\u010dil som. A, mimochodom, to je v OpenSource, je to zadarmo a ani nemus\u00edte s\u0165ahova\u0165. Otvor\u00edte to v prehliada\u010di a v\u0161etko bude fungova\u0165. <\/p>\n<p><\/p>\n<p>Ot\u00e1zky<\/p>\n<p><\/p>\n<p><em>Igor, \u010do \u010falej? Kam bude\u0161 rozv\u00edja\u0165 tento n\u00e1stroj?<\/em><\/p>\n<p><\/p>\n<p>\u010ealej sa objav\u00ed dashboard, to znamen\u00e1, \u017ee mo\u017eno vznikne dashboard. Integr\u00e1cia s \u010fal\u0161\u00edmi datab\u00e1zami. To som spravil, ale e\u0161te som to nezverejnil v OpenSource. To je MySQL a mo\u017eno PostgreSQL. To znamen\u00e1, \u017ee bude mo\u017en\u00e9 z Tabix posiela\u0165 po\u017eiadavky nie len do ClickHouse, ale aj do in\u00fdch n\u00e1strojov.<\/p>\n<p><\/p>\n<p><em>Je vidno, \u017ee bol vykonan\u00fd obrovsk\u00fd objem pr\u00e1ce. Vznikla dos\u0165 ucelen\u00e1 my\u0161lienka. V prehliada\u010di to bolo spraven\u00e9, zjavne aby sa vyl\u00fa\u010dili obmedzenia na r\u00f4znych osiach a r\u00fdchlo to cel\u00e9 da\u0165 dohromady. Po\u010dul som, \u017ee vy na tom<\/em> <em>php<\/em> <em>pracujete, preto je najjednoduch\u0161ie to na\u010drtn\u00fa\u0165 v prehliada\u010di a bude to fungova\u0165 v\u0161ade. K tomu nie s\u00fa ot\u00e1zky. Ot\u00e1zka je tak\u00e1. Tam sa naozaj toho spravilo ve\u013emi ve\u013ea. Ko\u013eko \u013eud\u00ed na tom pracovalo? A ko\u013eko \u010dasu to v\u0161etko zabralo? Preto\u017ee n\u00e1stroje na seba zvy\u010dajne nemaj\u00fa tak\u00fd ve\u013ek\u00fd funk\u010dn\u00fd rozsah.<\/em><\/p>\n<p><\/p>\n<p>Od leta do jesene pracoval jeden \u010dlovek z n\u00e1\u0161ho t\u00edmu. To bola prv\u00e1 verzia. Potom som urobil 330 commitov s\u00e1m. To, \u010do vid\u00edte, sme s kolegom robili napol. Za 3 mesiace z prvej verzie na posledn\u00fa v\u00e4\u010d\u0161inu som spravil s\u00e1m. Ale ve\u013emi zle pozn\u00e1m Javascript. Toto bol m\u00f4j jedin\u00fd a, d\u00fafam, posledn\u00fd projekt na Javascript, na ktorom som pracoval. Dostal som ho, pozrel som sa - o, hr\u00f4za. Ale ve\u013emi som chcel dokon\u010di\u0165 produkt a toto je v\u00fdsledok.<\/p>\n<p><\/p>\n<p><em>\u010eakujem ve\u013emi pekne za predn\u00e1\u0161ku! Je to skvel\u00fd n\u00e1stroj.<\/em> <em>Tableau<\/em> <em>ste porovn\u00e1vali?<\/em><\/p>\n<p><\/p>\n<p>\u010eakujem. Preto som to nazval Tabix, lebo prv\u00e9 p\u00edsmen\u00e1 sa zhoduj\u00fa. <\/p>\n<p><\/p>\n<p><em>Preto\u017ee konkurujete?<\/em><\/p>\n<p><\/p>\n<p>Bude ve\u013ea invest\u00edci\u00ed, budeme s\u00fa\u0165a\u017ei\u0165. <\/p>\n<p><\/p>\n<p><em>Ako navrhnete preda\u0165 intern\u00fdm analytikom, \u017ee tento n\u00e1stroj \u00faplne nahrad\u00ed<\/em> *Tableau*<em>? \u041a\u0430\u043a\u0438\u0435 \u0431\u0443\u0434\u0443\u0442 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b?<\/em><\/p>\n<p><\/p>\n<p>Nativne pracuje s ClickHouse. Sk\u00fa\u0161al som Tableau, ale tam nie je mo\u017en\u00e9 p\u00edsa\u0165 podporu pre slovn\u00edky a podobn\u00e9. <strong>Vieme, ako s Tabix pracuj\u00fa \u013eudia. P\u00ed\u0161u po\u017eiadavky, exportuj\u00fa do CSV a nahr\u00e1vaj\u00fa do BI.<\/strong> A tam u\u017e nie\u010do robia. Ale \u0165a\u017eko si viem predstavi\u0165, ako to robia, preto\u017ee \u2013 je to grafick\u00fd n\u00e1stroj. M\u00f4\u017ee exportova\u0165 5 000 riadkov, maxim\u00e1lne 6 000 riadkov, ale nie viac, inak prehliada\u010d nevydr\u017e\u00ed. <\/p>\n<p><\/p>\n<p><em>To znamen\u00e1, \u017ee existuj\u00fa nejak\u00e9 v\u00e1\u017ene obmedzenia objemu d\u00e1t, \u00e1no?<\/em><\/p>\n<p><\/p>\n<p>\u00c1no. Neviem si predstavi\u0165, \u017ee by ste chceli exportova\u0165 10 000 riadkov na obrazovku prehliada\u010da. Pre\u010do? <\/p>\n<p><\/p>\n<p><em>Predpoklad\u00e1 sa, \u017ee to je rozhranie na r\u00fdchle prezeranie d\u00e1t? Trochu si s t\u00fdm pohra\u0165, ot\u00e1\u010da\u0165?<\/em><\/p>\n<p><\/p>\n<p>\u00c1no, r\u00fdchlo si pozrie\u0165, ako to funguje, a jednoducho vytvori\u0165 s\u00fahrnn\u00fd graf. Potom to niekam posla\u0165. M\u00e1me na\u0161u vlastn\u00fa reportingov\u00fa syst\u00e9m, z ktorej jednoducho beriem tento dotaz. Nakresl\u00edm to v Tabix a po\u0161lem do na\u0161ich reportov. <\/p>\n<p><\/p>\n<p><em>A e\u0161te jedna ot\u00e1zka. Kohortn\u00e1 anal\u00fdza?<\/em><\/p>\n<p><\/p>\n<p>Ak bud\u00fa po\u017eiadavky, prid\u00e1me to. <\/p>\n<p><\/p>\n<p><em>Ke\u010f sme len za\u010d\u00ednali pou\u017e\u00edva\u0165<\/em> <em>ClickHouse, ko\u013eko \u010dasu zabralo zavedenie<\/em> <em>ClickHouse<\/em> <em>a dosiahnutie<\/em> <em>produk\u010dn\u00e9ho stavu?<\/em><\/p>\n<p><\/p>\n<p>Ako som u\u017e povedal, zaviedli sme testovac\u00ed klaster za ve\u013emi kr\u00e1tke obdobie. Za dva dni sme ho nasadili. A e\u0161te p\u00e1r t\u00fd\u017ed\u0148ov sme ho testovali. Do produkcie sme sa dostali za pribli\u017ene tri mesiace. Ale mali sme svoj vlastn\u00fd ETL, teda n\u00e1stroj na ukladanie d\u00e1t. A ten n\u00e1m p\u00edsal do v\u0161etk\u00e9ho, \u010do bolo mo\u017en\u00e9. Vie p\u00edsa\u0165 do MongoDB, Cassandra, MySQL. Nau\u010di\u0165 ho p\u00edsa\u0165 do ClickHouse bolo jednoduch\u00e9. Mali sme potrebn\u00fa infra\u0161trukt\u00faru na r\u00fdchle nasadenie. Po pribli\u017ene troch mesiacoch sme za\u010dali odstra\u0148ova\u0165 prv\u00fd komponent. Po \u0161iestich mesiacoch sme sa \u00faplne vzdali v\u0161etk\u00e9ho ostatn\u00e9ho. Ostal n\u00e1m iba ClickHouse.<\/p>\n<p><\/p>\n<p><em>Igor, ve\u013emi pekne \u010fakujem za prezent\u00e1ciu. Ve\u013emi sa mi p\u00e1\u010dil funk\u010dnos\u0165 vytv\u00e1rania tr\u00e1s na map\u00e1ch. Pl\u00e1nuje sa integr\u00e1cia s Yandex.Maps a konkr\u00e9tne s vlastn\u00fdmi Yandex.Maps?<\/em><\/p>\n<p><\/p>\n<p>Sna\u017eil som sa integrova\u0165 namiesto Google map, ale nena\u0161iel som na Yandex.Maps tmav\u00fa t\u00e9mu. Neop\u00edsal som jeden k\u00fasok. Vr\u00e1tim sa, aby som doplnil. <\/p>\n<p><\/p>\n<p>Sn\u00edmek \u2013 Google map. Tam je pr\u00edkaz \u201eDRAW_GMAPS\u201c, ktor\u00fd vykres\u013euje mapu. Existuje pr\u00edkaz \u201eDRAW_YMAPS\u201c, t. j. m\u00f4\u017ee vykresli\u0165 Yandex.Map. A v skuto\u010dnosti sa pod t\u00fdmto pr\u00edkazom nach\u00e1dza Javascript, teda d\u00e1ta, ktor\u00e9 dostanete z ClickHouse, m\u00f4\u017eete prenies\u0165 do Javascriptu, ktor\u00fd tu nap\u00ed\u0161ete. A m\u00e1te na v\u00fdstupe oblas\u0165, kde by mala by\u0165 vykreslen\u00e1. M\u00f4\u017eete vykresli\u0165 ak\u00fdko\u013evek graf, t. j. ak\u00fdko\u013evek graf, mapu, m\u00f4\u017eete vykresli\u0165 svoj vlastn\u00fd komponent. Predt\u00fdm som mal in\u00fa kni\u017enicu na vykreslenie samotn\u00fdch grafov.<\/p>\n<p><\/p>\n<p><em>T. j. existuje n\u00e1stroj na prisp\u00f4sobenie funk\u010dnosti zobrazenia?<\/em><\/p>\n<p><\/p>\n<p>Ak\u00e9ko\u013evek. M\u00f4\u017eete vzia\u0165 a prefarbi\u0165 tieto body, aby neboli \u010derven\u00e9, ale modr\u00e9, zelen\u00e9.<\/p>\n<p><\/p>\n<p><em>\u010eakujem za prezent\u00e1ciu! Mal ste sn\u00edmok, na ktorom boli predstaven\u00e9 alternat\u00edvne n\u00e1stroje na dotazy<\/em> <em>ClickHouse<\/em> <em>na vytvorenie dashboardov, analytick\u00fdch spr\u00e1v. Pochopil som, \u017ee v \u010dase, ke\u010f ste za\u010dali pracova\u0165 s<\/em> <em>ClickHouse, pre tieto n\u00e1stroje neboli nap\u00edsan\u00e9 adapt\u00e9ry. Zauj\u00edma ma, pre\u010do ste sa rozhodli vytvori\u0165 svoj vlastn\u00fd n\u00e1stroj, namiesto toho, aby ste nap\u00edsali adapt\u00e9r pre nejak\u00fd existuj\u00faci n\u00e1stroj? Mysl\u00edm, \u017ee doladi\u0165 editor testov je r\u00fdchle. Pre\u010do ste sa rozhodli urobi\u0165 to\u013eko pr\u00e1ce?<\/em><\/p>\n<p><\/p>\n<p>Tu je zauj\u00edmav\u00fd moment \u2013 ide o to, \u017ee som technick\u00fd riadite\u013e, nie d\u00e1tov\u00fd vedec. V tom \u010dase, ke\u010f sme za\u010dali zav\u00e1dza\u0165 Druid, som mal vo svojom roadmape asi 50 % \u00faloh \u2013 po\u010fme po\u010d\u00edta\u0165 toto alebo po\u010fme po\u010d\u00edta\u0165 to, alebo analyzujme toto. A nakoniec sme zaviedli ClickHouse. R\u00fdchlo som za\u010dal v\u0161etko budova\u0165, po\u010d\u00edta\u0165, r\u00fdchlo som dokon\u010dil svoj roadmap. A v tom momente som si uvedomil, \u017ee mi ch\u00fdbaj\u00fa znalosti z Data Science, z vizualiz\u00e1cie d\u00e1t. Tabix je ak\u00e9si moje dom\u00e1ce \u00falohy pri \u0161t\u00fadiu vizualiz\u00e1cie d\u00e1t. Pozrel som sa, ako doplni\u0165 Zeppelin. M\u00e1m k jeho programovaniu mierny odpor. Pozrel som sa na Redash, ako by som ho mohol doplnit, ale ch\u00fdbal mi tam norm\u00e1lny editor. A SuperSet je tie\u017e nap\u00edsan\u00fd v jazyku, ktor\u00fd ve\u013emi nem\u00e1m r\u00e1d. A preto som sa rozhodol vytvori\u0165 si vlastn\u00fd n\u00e1stroj a takto to dopadlo.<\/p>\n<p><\/p>\n<p><em>Igor, akceptujete pull requesty?<\/em><\/p>\n<p><\/p>\n<p>\u00c1no.<\/p>\n<p><\/p>\n<p><em>Ve\u013emi pekne \u010fakujem za predn\u00e1\u0161ku! A dve ot\u00e1zky. Po prv\u00e9 \u2013 nehovor\u00edte o Javascript ve\u013emi lich\u00f4tivo.<\/em> P\u00edsali ste na \u201enahom\u201c Javascript alebo to bol nejak\u00fd framework?<\/p>\n<p><\/p>\n<p>Rad\u0161ej na \u201enahom\u201c Javascript.<\/p>\n<p><\/p>\n<p>Ak\u00fd framework teda?<\/p>\n<p><\/p>\n<p>Angular.<\/p>\n<p><\/p>\n<p><em>Rozumiem. A druh\u00e1 ot\u00e1zka. Nerozva\u017eovali ste<\/em> R <em>a<\/em> *<strong>Shiny?<\/strong>?*<\/p>\n<p><\/p>\n<p>Zva\u017eoval. Hral som sa s t\u00fdm. <\/p>\n<p><\/p>\n<p><em>Mohli ste tie\u017e jednoducho nap\u00edsa\u0165 adapt\u00e9r.<\/em><\/p>\n<p><\/p>\n<p>Existuje. Zd\u00e1 sa, \u017ee ho vytvorila komunita, ale, ako som odpovedal na predch\u00e1dzaj\u00facu ot\u00e1zku, chcel som to sk\u00fasi\u0165 s\u00e1m.<\/p>\n<p><\/p>\n<p>*Nie, \u010do sa t\u00fdka vizualiz\u00e1cie, tam predsa existuje.<\/p>\n<p><\/p>\n<p>Hovor\u00edte, \u017ee existuje tak\u00e1 vec, ktor\u00e1 v\u00e1m vykresl\u00ed graf. Otvoril som kni\u017eku o vizualiz\u00e1cii d\u00e1t. A pomyslel som si: \u201eDajme tomu, \u017ee sk\u00fasim tieto d\u00e1ta vizualizova\u0165. Nap\u00ed\u0161em to s\u00e1m, aby to spracovalo \u00fadaje.\u201c A za\u010dal som lep\u0161ie rozumie\u0165 technol\u00f3gii pod\u00e1vania d\u00e1t. Keby som zobral existuj\u00facu komponentu, nau\u010dil by som sa s \u0148ou hor\u0161ie pracova\u0165, t. j. konkr\u00e9tne vizualiz\u00e1ciou. Ale takto \u2013 \u00e1no, R sa mi p\u00e1\u010dila, ale zatia\u013e som ne\u010d\u00edtal kni\u017eku \u201eR pre za\u010diato\u010dn\u00edkov.\u201c <\/p>\n<p><\/p>\n<p><em>\u010eakujeme!<\/em><\/p>\n<p><\/p>\n<p><em>Jednoduch\u00e1 ot\u00e1zka. Existuj\u00fa nejak\u00e9 mo\u017enosti r\u00fdchlo exportova\u0165 tabu\u013eku, graf?<\/em><\/p>\n<p><\/p>\n<p>M\u00f4\u017eete exportova\u0165 do CSV, do Excelu.<\/p>\n<p><\/p>\n<p><em>Nie \u00fadaje, ale hotov\u00fa tabu\u013eku, hotov\u00fd graf? Napr\u00edklad, aby ste to mohli uk\u00e1za\u0165 nadriaden\u00fdm.<\/em><\/p>\n<p><\/p>\n<p>Existuje tla\u010didlo \u201eExportova\u0165\u201c a tla\u010didlo \u201eExportova\u0165 graf do png, jpg\u201c.<\/p>\n<p><\/p>\n<p><em>\u010eakujeme!<\/em><\/p>\n<p><\/p>\n<p>P.S. Mini-in\u0161trukcia na in\u0161tal\u00e1ciu tabix<\/p>\n<p><\/p>\n<ul>\n<li>Stiahnu\u0165 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/smi2\/tabix.ui\/releases\">posledn\u00e1 verzia<\/a><\/noindex><\/li>\n<li>Rozbali\u0165, skop\u00edrova\u0165 adres\u00e1r <code>build<\/code> do nginx root_path<\/li>\n<li>Nastavi\u0165 nginx<\/li>\n<\/ul>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/491308\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u043e\u0439 \u0434\u043e\u043a\u043b\u0430\u0434\u0430 2017 \u0433\u043e\u0434\u0430 \u0418\u0433\u043e\u0440\u044c \u0421\u0442\u0440\u044b\u0445\u0430\u0440\u044c \u00abClickHouse \u2013 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u0438 \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 Tabix\u00bb. \u0412\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f ClickHouse \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 Tabix. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438: \u0420\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 ClickHouse \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0438\u0437 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430, \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u041f\u041e; \u0420\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0441 \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u043e\u0439 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430; \u0410\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043a\u043e\u043c\u0430\u043d\u0434; \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432; \u0426\u0432\u0435\u0442\u043e\u0432\u044b\u0435 \u0441\u0445\u0435\u043c\u044b \u043d\u0430 \u0432\u044b\u0431\u043e\u0440. \u042f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":73359,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-73358","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u043e\u0439 \u0434\u043e\u043a\u043b\u0430\u0434\u0430 2017 \u0433\u043e\u0434\u0430 \u0418\u0433\u043e\u0440\u044c \u0421\u0442\u0440\u044b\u0445\u0430\u0440\u044c \u00abClickHouse \u2013 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u0438 \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 Tabix\u00bb. \u0412\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f ClickHouse \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 Tabix..\" \/>\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\/sk\/blog\/administrirovanie\/clickhouse-vizualno-bystryj-i-naglyadnyj-analiz-dannyh-v-tabix-igor-stryhar\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sk_SK\" \/>\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\udd47ClickHouse \u2013 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u0438 \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 Tabix. \u0418\u0433\u043e\u0440\u044c \u0421\u0442\u0440\u044b\u0445\u0430\u0440\u044c | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u043e\u0439 \u0434\u043e\u043a\u043b\u0430\u0434\u0430 2017 \u0433\u043e\u0434\u0430 \u0418\u0433\u043e\u0440\u044c \u0421\u0442\u0440\u044b\u0445\u0430\u0440\u044c \u00abClickHouse \u2013 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u0438 \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 Tabix\u00bb. \u0412\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f ClickHouse \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 Tabix..\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/clickhouse-vizualno-bystryj-i-naglyadnyj-analiz-dannyh-v-tabix-igor-stryhar\" \/>\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-03-09T05:42:14+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-03-09T05:42:14+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\udd47ClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix. Igor Strykhar | ProHoster","description":"Odpor\u00fa\u010dam pozrie\u0165 si transkript spr\u00e1vy z roku 2017 Igora Strykhara \u201eClickHouse \u2013 vizu\u00e1lne r\u00fdchla a preh\u013eadn\u00e1 anal\u00fdza d\u00e1t v Tabix\u201c. Webov\u00e9 rozhranie pre ClickHouse v projekte Tabix..","canonical_url":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/clickhouse-vizualno-bystryj-i-naglyadnyj-analiz-dannyh-v-tabix-igor-stryhar","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sk_SK","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\udd47ClickHouse \u2013 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u0438 \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 Tabix. \u0418\u0433\u043e\u0440\u044c \u0421\u0442\u0440\u044b\u0445\u0430\u0440\u044c | ProHoster","og:description":"\u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u043e\u0439 \u0434\u043e\u043a\u043b\u0430\u0434\u0430 2017 \u0433\u043e\u0434\u0430 \u0418\u0433\u043e\u0440\u044c \u0421\u0442\u0440\u044b\u0445\u0430\u0440\u044c \u00abClickHouse \u2013 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u0438 \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 Tabix\u00bb. \u0412\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f ClickHouse \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 Tabix..","og:url":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/clickhouse-vizualno-bystryj-i-naglyadnyj-analiz-dannyh-v-tabix-igor-stryhar","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-03-09T05:42:14+00:00","article:modified_time":"2020-03-09T05:42:14+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"73358","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 18:34:26","updated":"2022-09-28 10:01:24","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/73358","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/comments?post=73358"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/73358\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media\/73359"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media?parent=73358"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/categories?post=73358"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/tags?post=73358"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}