{"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\/et\/blog\/administrirovanie\/clickhouse-vizualno-bystryj-i-naglyadnyj-analiz-dannyh-v-tabix-igor-stryhar","title":{"rendered":"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><strong>Soovitan tutvuda 2017. aasta aruande t\u00f5lgendusega, autor Igor Strychar \u201eClickHouse \u2013 visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis\u201d.<\/strong><\/p>\n<p><\/p>\n<p>Veebiliides ClickHouse'ile projektis Tabix.<br \/>\nP\u00f5hifunktsioonid:<\/p>\n<p><\/p>\n<ul>\n<li>T\u00f6\u00f6tab ClickHouse'iga otse brauserist, ilma et oleks vajalik t\u00e4iendava tarkvara installation;<\/li>\n<li>K\u00fcsimuste redaktor s\u00fcntaksi esilet\u00f5stmisega;<\/li>\n<li>K\u00e4skude automaatne t\u00e4iendamine;<\/li>\n<li>Graafilise anal\u00fc\u00fcsi t\u00f6\u00f6riistad p\u00e4ringute t\u00e4itmise kohta;<\/li>\n<li>Valitavad v\u00e4rviskeemid.<br \/>\n<img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" 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=\"M\u00e4ngi videot\" 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 - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/950e3d0a3ff10d267ae48e897f5cbdb6.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Olen tehniline direktor \u0421\u041c\u04182. Oleme uudiste vahetuse agregaat. Meie salvestame palju andmeid, mille saame oma partneritelt ja registreerime need ClickHouse'is \u2013 ligi 30 000 p\u00e4ringut sekundis.<\/p>\n<p><\/p>\n<p>Need andmed on n\u00e4iteks:<\/p>\n<p><\/p>\n<ul>\n<li>Uudiste klikkide arv.<\/li>\n<li>Uudiste n\u00e4itamised agregaatis.<\/li>\n<li>Reklaamide n\u00e4itamised meie v\u00f5rgustikus.<\/li>\n<li>Ja registreerime s\u00fcndmusi meie enda loendurist, mis on sarnane Yandex.Metrika\u2019le. See on meie enda mikroanal\u00fc\u00fctika. <\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/8f5a7af9fef04a51fed29279557c3b64.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Meie elu ClickHouse'ile eelnenud ajal oli v\u00e4ga tormiline. Me p\u00f5desime suurel m\u00e4\u00e4ral, p\u00fc\u00fcdes need andmed kuhugi paigutada ja neid anal\u00fc\u00fcsida.<\/p>\n<p><\/p>\n<p><strong>Elu enne ClickHouse'i \u2014 infiniDB<\/strong><\/p>\n<p><\/p>\n<p>Esimene, mis meil oli, oli infiniDB. See oli meil neli aastat. K\u00e4ivitasime selle suure vaevaga. <\/p>\n<p><\/p>\n<ul>\n<li>See ei toeta klasterdamist ega shardimist. Ei ole mingeid selliseid \u201etarku asju\u201d, mis oleks vaikimisi sisse l\u00fclitatud. <\/li>\n<li>Talon andmete laadimises. Ainult spetsiifiline konsooli utiliit, mis suutis laadida ainult CSV-faile ja seda v\u00e4ga segaselt. <\/li>\n<li>Andmebaas on \u00fche niidiotsaga. V\u00f5imalik oli kas kirjutada v\u00f5i lugeda. Kuid see v\u00f5imaldas t\u00f6\u00f6delda suurt andmehulka. <\/li>\n<li>Ja sellel oli ka huvitav lahendus. Iga \u00f6\u00f6 pidi serverit taask\u00e4ivitama, muidu see ei t\u00f6\u00f6tanud. <\/li>\n<\/ul>\n<p><\/p>\n<p>See t\u00f6\u00f6tas meil kuni 2016. aasta l\u00f5puni, mil me t\u00e4ielikult ClickHouse'ile \u00fcle l\u00e4ksime.<\/p>\n<p><\/p>\n<p><strong>Elu enne ClickHouse'i \u2014 Cassandra<\/strong><\/p>\n<p><\/p>\n<p>Kuna infiniDB oli \u00fche niidiotsaga, otsustasime, et vajame mingit mitme niidiotsaga andmebaasi, kuhu saame kirjutada v\u00e4ga palju \u00fcheaegselt.<\/p>\n<p><\/p>\n<p>Proovisime palju huvitavaid asju. Siis otsustasime proovida Cassandra't. Cassandra'ga oli meil k\u00f5ik h\u00e4sti. 10 000 p\u00e4ringut sekundi kohta kirjutamisel. 2 000 p\u00e4ringut kusagil lugemisel. <\/p>\n<p><\/p>\n<p>Aga ka sellel olid omad huvitavad omadused. Korra kuus v\u00f5i kaks kuus juhtus andmebaasi des\u00fcnkroniseerumine. Ja tuli \u00e4rgata ja kiiresti Cassandra'd parandama. Taask\u00e4ivitasime servereid j\u00e4rjekorras. Ja k\u00f5ik muutus sujuvaks ja ilusaks. <\/p>\n<p><\/p>\n<p><strong>Elu enne ClickHouse \u2013 Druid<\/strong><\/p>\n<p><\/p>\n<p>Siis m\u00f5istsime, et peame veel rohkem andmeid kirjutama. 2016. aastal hakkasime Druidile vaatama. <\/p>\n<p><\/p>\n<p>Druid on avatud andmebaas, mis on kirjutatud Java keeles. V\u00e4ga spetsiifiline. See sobis clickstream\u2019ile, kui pidime salvestama mingit s\u00fcndmuste voogu ja seej\u00e4rel nende p\u00f5hjal aggregatsioonima v\u00f5i anal\u00fc\u00fctilisi aruandeid tegema.<\/p>\n<p><\/p>\n<p>Druidil oli versioon 0.9.X. <\/p>\n<p><\/p>\n<p>Andmebaasi \u00fcles seadmine iseenesest on v\u00e4ga keeruline. See on infrastruktuuri keerukus. Selle seadmiseks tuli paigaldada palju-ja palju riistvara. Iga riistvara vastutas oma eraldi rolli eest. <\/p>\n<p><\/p>\n<p>Andmete sinna laadimiseks tuli rakendada mingit \u0161amanismi. On OpenSource projekt \u2013 Tranquility, mis voos kaotas meilt andmeid. Kui me laadisime sinna andmeid, siis ta kaotas neid. <\/p>\n<p><\/p>\n<p>Kuid mingil moel hakkasime seda rakendama. Me olime nagu siilid, kes end torkavad, aga j\u00e4tkavad kaktuse s\u00f6\u00f6mist, hakkasime seda rakendama. Me vajasime umbes kuud, et kogu infrastruktuur selle jaoks ette valmistada. Ehk tellida serverid, seadistada rollid, teostada t\u00e4ielik automatiseerimine \u00fclesseadmise puhul. Ehk, kui klaster kukub, et automaatselt \u00fcles seataks teine klaster. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/a8193aab09ab9cce3b69e3b84ce470dd.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Aga siis juhtus ime. Olin puhkusel ja mu kolleegid saatsid mulle lingi <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/yandex\/blog\/303282\/\">habr<\/a><\/noindex>, kus r\u00e4\u00e4giti, et Yandex otsustas avada ClickHouse\u2019i. Ma \u00fctlesin, et proovime.<\/p>\n<p><\/p>\n<p>Ja ainult 2 p\u00e4eva jooksul seadsime \u00fcles testklastri ClickHouse. Hakkasime andmeid sinna laadima. V\u00f5rreldes infiniDB-ga \u2013 see on elementaarne, v\u00f5rreldes Druidiga \u2013 see on elementaarne. V\u00f5rreldes Cassandra\u2019ga ka elementaarne. Sest kui php-st Cassandra\u2019sse andmeid laadida, siis see ei ole elementaarne.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/0b4b6ea08f7f7037d0e26dbe3f33fa53.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Mida me saime? Suurenenud j\u00f5udlus kiirusest. Suurenenud j\u00f5udlus andmete salvestamisest. Ehk kasutatakse m\u00e4rkimisv\u00e4\u00e4rselt v\u00e4hem kettaruumi. ClickHouse on kiire, see on teiste toodetega v\u00f5rreldes v\u00e4ga kiire. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/9ff5e2ac127be8813b5d5cec49dab73a.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>K\u00e4ivitamise hetkel, kui Yandex avaldas ClickHouse\u2019i OpenSource\u2019is, oli ainult konsooliklient. Meie ettev\u00f5ttes \u0421\u041c\u04182 otsustasime proovida teha natiivset klienti veebis, et saaks brauserist avada lehe, kirjutada p\u00e4ringu ja saada tulemus, sest me hakkasime palju p\u00e4ringuid kirjutama. Kirjutamine konsoolis on keeruline. Ja me tegime oma esimese versiooni.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/a2569a45f9bf1b91815ca3dfa0eefcf3.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Ja kusagil eelmise aasta talve l\u00e4hedal hakkasid ilmuma kolmandate osapoolte t\u00f6\u00f6riistad ClickHouse\u2019iga t\u00f6\u00f6tamiseks. Sellised t\u00f6\u00f6riistad nagu:<\/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>. (N\u00fc\u00fcd <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>Vaatan m\u00f5ningaid neist t\u00f6\u00f6riistadest, st neid, millega ma olen t\u00f6\u00f6tanud. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/7b91bc29b1c04020b56c89621287e8c1.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hea t\u00f6\u00f6riist, kuid Druidile. Kui Druidit juurutati, siis ma proovisin SuperSeti. See meeldis mulle. Druidile t\u00f6\u00f6tab see v\u00e4ga kiiresti. <\/p>\n<p><\/p>\n<p>ClickHouse'i jaoks ei sobi. St. see sobib, see t\u00f6\u00f6tab, aga suudab t\u00f6\u00f6delda ainult elementaarseid p\u00e4ringuid nagu: SELECT event, GROUP BY event. See ei toeta keerukamat ClickHouse'i s\u00fcntaksit.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/a708c787120de3db725a9bba4c8bd642.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>J\u00e4rgmine t\u00f6\u00f6riist on Apache Zeppelin. See on hea ja huvitav asi. T\u00f6\u00f6tab. Toetab m\u00e4rkmikke, juhtpaneele, toetab muutujaid. Tean, et m\u00f5ni ClickHouse'i kogukonnast kasutab seda. <\/p>\n<p><\/p>\n<p>Kuid ClickHouse'i s\u00fcntaksit ei toeta, st. p\u00e4ringud tuleb kirjutada kas konsoolis v\u00f5i kuskil mujal. Edasi peab kontrollima, et k\u00f5ik see t\u00f6\u00f6tab. See on lihtsalt ebamugav. Kuid juhtpaneelite tugi on tal hea. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/0c2afefc1504d14dd50f88459a652a1c.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>J\u00e4rgmine t\u00f6\u00f6riist on Redash.IO. Redash on internetis hostitud. St. erinevalt eelmistest t\u00f6\u00f6riistadest ei pea seda installima. Ja see on selline juhtpaneel, mis v\u00f5imaldab andmete konsolideerimist erinevatest andmeallikatest. St. saate eksportida ClickHouse'ist, MySQL'ist, PostgreSQL'ist ja muudest andmebaasidest. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/dc639fe6e9716c835d1fe0fdfaa300b8.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>T\u00f5eliselt kuu aega tagasi (m\u00e4rtsis 2017) ilmus Grafana tugi. Kui ehitate aruandeid Grafanas, n\u00e4iteks oma riistvara seisundi v\u00f5i m\u00f5nede m\u00f5\u00f5dikute kohta, siis n\u00fc\u00fcd on v\u00f5imalik koostada sama graafik v\u00f5i m\u00f5ni paneel ClickHouse'i andmete p\u00f5hjal otse. See on v\u00e4ga mugav, ja me kasutame seda enda juures. See aitab leida anomaaliaid. St. kui midagi juhtub ja m\u00f5ni riistvara kukub v\u00f5i pinge t\u00f5useb, siis saab vaadata p\u00f5hjust, kui need andmed on ClickHouse'i j\u00f5udnud. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/0dd54a7633d25d0c924c2e6825028eb3.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Mul oli nende t\u00f6\u00f6riistade v\u00f5i konsooli kasutamine v\u00e4ga ebamugav. Ja otsustasin t\u00e4iendada meie esimest liidest. Ja piilusin ideed EventSQL, SeperSet'i, Zeppelin'i juurest.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/3252a09e0942428143336639aa399f4d.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Mida soovis? Soovisime saada graafikud, t\u00e4iustatud redaktori, rakendada s\u00f5nastike jaotuse toetust. Sest ClickHouse'il on suurep\u00e4rane funktsioon \u2013 need on s\u00f5nastikud. Kuid s\u00f5nastikega on keeruline t\u00f6\u00f6tada, sest tuleb m\u00e4letada salvestatud v\u00e4\u00e4rtuste formaati, st. kas see on number v\u00f5i string jne. Kuna me kasutame sageli s\u00f5nastikke nende erinevates variatsioonides, siis oli p\u00e4ringute kirjutamine piisavalt keeruline.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/90a529b4fb5d03a6d61c89e00287b21d.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Kolm kuud on m\u00f6\u00f6dunud meie esimese versiooni v\u00e4ljalaskmisest. Olen teinud umbes 330 commit'i suletud harusse ja valminud on Tabix.<\/p>\n<p><\/p>\n<p>Erinevalt eelmisest versioonist, mis kandis nime ClickHouse-Frontend, otsustasin ma anda sellele lihtsama nime. Nii s\u00fcndis Tabix.<\/p>\n<p><\/p>\n<p>Mis on uut?<\/p>\n<p><\/p>\n<p>Joonistab graafikuid. Toetab ClickHouse'i SQL s\u00fcntaksit. Annavad vihjeid funktsioonide osas ja palju muud huvitavat oskab teha.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/cd2bbb0c2c3e0fa2d2622bbd2aecdbc7.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nii n\u00e4eb v\u00e4lja Tabix'i \u00fcldskeem. Vasakul on puu. Keskosas \u2013 see on p\u00e4ringuredaktor. Ja allpool \u2013 see on selle p\u00e4ringu tulemus.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/becf5df173220480e077ae8d8e0ebf3e.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Edasi n\u00e4itan, kuidas p\u00e4ringuredaktor t\u00f6\u00f6tab. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/d5ca1028922a12d5e6f133704d4c91a2.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Siin t\u00f6\u00f6tab automaatne t\u00e4iendamine tabeliga ja pakub vastavalt v\u00e4lja t\u00e4iendust. Ja vihjed funktsioonidele. Kui vajutad ctrl ja sisestada, siis p\u00e4ring t\u00e4idetakse v\u00f5i l\u00e4heb vea peale. Lihtsaim p\u00e4ring saadetakse Tabix'ile ja saadakse tulemus, st on kiire t\u00f6\u00f6tada ClickHouse'iga.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/74623f9f5030eb08523dc7269517a5d5.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>S\u00f5nastikud, nagu juba \u00fctlesin, on v\u00e4ga huvitav asi, millega me palju t\u00f6\u00f6tame. Ja see on v\u00f5imaldanud teha palju asju. N\u00e4iteks, s\u00f5nastikes salvestame k\u00f5ik linnad. Salvestame linna identifikaatori ja linna nime, selle laius- ja pikkuskraadid. Ja andmebaasis salvestame ainult linna identifikaatori. Seega, me komprimeerime andmeid v\u00e4ga palju.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/fa698b916b01a58f182003e6a15dfea0.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>See v\u00f5ib tunduda lihtne asi, kuid ClickHouse'is aitab see v\u00e4ga huvitavalt. Kuna ClickHouse toetab ainult pesastatud join'e, venib p\u00e4ring allapoole ja laiemaks v\u00e4ga tugevalt. Ja kui sulg avatakse ning m\u00f5ni pikk v\u00e4ljend k\u00e4ib, siis selline, tundub lihtne asi nagu p\u00e4ringu kokkukokkut\u00f5mbamine aitab lihtsamalt ise p\u00e4ringuga t\u00f6\u00f6tada. Sest kui p\u00e4ring on 200-300 rida pikk ja laiuselt v\u00e4ga ulatuslik, siis p\u00e4ringu kokkukokkut\u00f5mbamine p\u00e4\u00e4stab t\u00f5eliselt ning hiljem on lihtsam leida m\u00f5ni koht v\u00f5i lokaliseerida seda.<\/p>\n<p><\/p>\n<p>Objektide puu, mitme p\u00e4ringuga ja vahekaartidega (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 - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/d43efecc6b0b395cdc17a3dd9db53400.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>J\u00e4rgmisteks n\u00e4itan puu ja vahekaartide kohta. Vasakul \u2013 see on puu, \u00fclal on mitu vahekaartide loomise v\u00f5imalust. Vahekaart \u2013 see on nagu t\u00f6\u00f6ruum. Sa saad luua mitu vahekaart ja igasuguseid neid omamoodi nimetada. See on nagu mini-s\u00fcsteem aruande koostamiseks.<\/p>\n<p><\/p>\n<p>Vahekaartide salvestamine toimub automaatselt. Kui sa v\u00e4rskendad brauserit, sulged v\u00f5i avad Tabix'i, siis k\u00f5ik see salvestub.<\/p>\n<p><\/p>\n<p>Kuumad klahvid \u2013 mugavad (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>On kuumad klahvid ja neid on piisavalt palju. Olen siia m\u00f5ned neist v\u00e4lja toonud n\u00e4itena. Need on vahekaartide vahetus, p\u00e4ringu t\u00e4itmine v\u00f5i mitme p\u00e4ringu t\u00e4itmine. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/27f3e6d0dbb4d1038bb551808b13d2ac.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>N\u00e4itan, kuidas tulemusega t\u00f6\u00f6tada. Saame p\u00e4ringu ja siia joonistan sin, cos ja tg. Saame v\u00e4lja tuua tulemuse, st joonistada t\u00fc\u00fcpiline kaart veerule. Saame r\u00f5hutada positiivseid v\u00f5i negatiivseid v\u00e4\u00e4rtusi. V\u00f5i lihtsalt v\u00e4rvida m\u00f5nda konkreetset tabelielementi. See on mugav, kui tabel on tohutu ja peab silmadega leidma mingi anomaalia. Kui ma otsisin anomaaliaid, r\u00f5hutasin m\u00f5nda rida, m\u00f5nda elementi rohelise v\u00f5i punase v\u00e4rviga.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/af0c21073a1edd81e4d688f119ef7568.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Seal on palju huvitavaid asju. N\u00e4iteks, kuidas kopeerida Redmine'i Markdowni. Kui on vaja kuskile tulemust kopeerida, on see v\u00e4ga mugav. Saame lihtsalt ala v\u00e4lja valida, \u00f6elda 'Kopeeri Redmine'i' ja see kopeerib Redmine'i Markdowni v\u00f5i loob p\u00e4ringu Where.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/43034a47b5ca31ee08e7721cc5f5159c.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Edasi - p\u00e4ringute optimiseerimine. \u00dchel korral unustasin m\u00e4rkida v\u00e4lja 'date'. Ja mu p\u00e4ring ClickHouse'is t\u00f6\u00f6tles andmeid mitte v\u00e4ga-v\u00e4ga kiiresti, vaid kiiresti, st v\u00e4hem kui sekundiga. Kui ma n\u00e4gin, kui palju ridu ta t\u00f6\u00f6tleb, siis ehmatasin. Me kirjutame \u00fche p\u00e4evaga nii palju ridu sellesse tabelisse. Hakkasin p\u00e4ringut anal\u00fc\u00fcsima ja n\u00e4gin, et \u00fcksikasjalikult kuup\u00e4eva mainimist ei olnud. St unustasin m\u00e4rkida, et andmed on vajalikud mitte kogu tabeli kohta, vaid mingi konkreetse perioodi kohta.<\/p>\n<p><\/p>\n<p>Tabixis on vahekaart 'Stats', kus hoitakse kogu saadetud p\u00e4ringute ajalugu, st seal saab vaadata, kui palju ridu selle p\u00e4ringuga on loetud ja kui kaua see kestis. See v\u00f5imaldab optimeerida. <\/p>\n<p><\/p>\n<p>P\u00e4ringu tulemuste p\u00f5hjal saab koostada kokkuv\u00f5tete tabeli. Saatsite p\u00e4ringu ClickHouse'i, said mingid andmed. Ja siis saab neid andmeid hiirega liigutada ja koostada mingi kokkuv\u00f5tete tabeli.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/0365df303eb55336eeb8a037cb118113.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>J\u00e4rgmine huvitav asi on graafikute koostamine. Oletame, et meil on selline p\u00e4ring: sin, cos vahemikus 0 kuni 299. Ja selle joonistamiseks tuleb valida vahekaart 'Joonista' ja saate oma sin ja cos graafiku. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/bdf00b9d6bffb907e88d2fdb7bfb16dc.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Seda saab jagada erinevateks telgedeks, st saab joonistada korraga kaks graafikut k\u00f5rvuti. Kirjutada \u00fche k\u00e4su ja teise k\u00e4su. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/efe77846e3f5f30a5d73e75be53d608a.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Saame joonistada histogramme.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/e531aac548eca2eb9e30dac21f8876b8.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Saame jagada see graafikute maatriksiks.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/3404f87cee0e376df8ca62f03fc0fc7e.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Saame koostada soojuskaardi. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/e15fe90c49bb850c821dab7492856b0b.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Saame koostada soojuskalendri. Muide, see on v\u00e4ga mugav asi, kui on vaja anal\u00fc\u00fcsida anomaaliaid aasta jooksul, st leida kas t\u00f5usud v\u00f5i langused. See andmete visualiseerimine aitas mind selles. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/08945df379d33aa73518ef10d02fe561.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>J\u00e4rgmine on Treemap.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" 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 - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/5794844e8c1db71f1507cbdae67fedf6.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Sankeys \u2013 huvitav graafik. See on kas Streamgraphs v\u00f5i River. Kuid ma kutsun seda Riveriks. See v\u00f5imaldab samuti otsida teatud anomaaliaid. See on v\u00e4ga mugav. Soovitan seda kasutada otsimiseks.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/483f363d93ba80dc9ac165ae083db585.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>J\u00e4rgmine huvitav asi on d\u00fcnaamilise kaardi joonistamine. Kui teie andmebaasis on talletatud laiuskraad, pikkuskraad ja n\u00e4iteks sihtkoht, n\u00e4iteks kui teil on autoveod v\u00f5i lennukid, siis saab joonistada sihtkohtade teid. Samuti on v\u00f5imalik m\u00e4\u00e4rata objektide kiirus ja suurus, kuhu nad maanduvad.<\/p>\n<p><\/p>\n<p>Kuid selle kaardi probleem on see, et see joonistab ainult maailma kaardi, puudub detailitus.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/13f302e67e7f84dc85728204153d6377.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hiljem lisasin Google'i kaardi. Kui te salvestate laiuskraadi ja pikkuskraadi, siis saab tulemuse joonistada Google'i kaardile, kuid ilma lennukite toeta.<\/p>\n<p><\/p>\n<p>Olulised funktsioonid, millega t\u00f6\u00f6tada tulemuste ja p\u00e4ringuga Tabix'ist, oleme arutanud. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/849baa55e6865ab451b82f23fe6e5110.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>J\u00e4rgmine on teie ClickHouse serveri anal\u00fc\u00fcs. On eraldi vahekaart \u201eM\u00f5\u00f5dikud\u201c, kus saab vaadata, kui suur on talletatud teave igas veerus. Ekraanipildil on n\u00e4ha, et see v\u00e4li \u201ereferrer\u201c v\u00f5tab umbes 730 Gb. Kui me loobume sellest v\u00e4ljast, s\u00e4\u00e4stame kolm shardi, iga\u00fcks 700 GB, st kokku umbes 2 TB, mis on meile \u00fcleliigne. <\/p>\n<p><\/p>\n<p>Meil on ka v\u00e4li \u201erequest_id\u201c, mille salvestame stringina. Kuid kui me hakkame seda salvestama numbriliselt, siis v\u00e4hendab see v\u00e4ljade suurust oluliselt. <\/p>\n<p><\/p>\n<p>Siin on n\u00e4idatud serveri konfiguratsioon ja teie klastri node'id. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/fa2a35c1af59b3f56059fcfb26571c6e.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>J\u00e4rgmine vahekaart on m\u00f5\u00f5dikud. Need v\u00f5tavad reaalajas andmeid ClickHouse'ist ja v\u00f5imaldavad lihtsalt anal\u00fc\u00fcsida serveri seisundit ning m\u00f5ista, mis sellega juhtub. See ei asenda t\u00e4it Grafanat. See on vajalik kiireks anal\u00fc\u00fcsiks. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/7de741718ef19b81bd0f7f33dbed019e.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>J\u00e4rgmine vahekaart on protsessid. Nende kaudu saab aru, mis serveris toimub. Aru saada, mis seal toimub. Mul oli p\u00e4ring, mis s\u00f6\u00f6nud 200 GB lugemiseks iga kord. N\u00e4gin seda t\u00e4nu sellele liidesele. Leidsin selle ja kohandasin. Ja tulemuseks on umbes 30 GB, st j\u00f5udlus on mitmeid kordi paranenud.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"ClickHouse - visuaalselt kiire ja selge andmeanal\u00fc\u00fcs Tabixis. Igor Stryh\u0430\u0440\u044c\" src=\"\/wp-content\/uploads\/2020\/03\/084b6131b189364f9e093792125649df.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Ait\u00e4h! Ja see on OpenSource.<\/p>\n<p><\/p>\n<p>Ma l\u00f5petasin. Ja muide, see on OpenSource, tasuta ja ei vajata isegi allalaadimist. Avage oma brauser ja k\u00f5ik t\u00f6\u00f6tab. <\/p>\n<p><\/p>\n<p>K\u00fcsimused<\/p>\n<p><\/p>\n<p><em>Igor, mis edasi? Kuhu sa kavatseme seda t\u00f6\u00f6riista arendada?<\/em><\/p>\n<p><\/p>\n<p>Edasi ilmub armatuurlaud, st t\u00f5en\u00e4oliselt ilmub armatuurlaud. Integreerimine teiste andmebaasidega. Selle tegin ma, aga ei ole veel open source'is avaldanud. See on MySQL ja t\u00f5en\u00e4oliselt PostgreSQL. St saab Tabixist teha p\u00e4ringuid mitte ainult ClickHouse'i, vaid ka teiste t\u00f6\u00f6riistade poole.<\/p>\n<p><\/p>\n<p><em>On n\u00e4ha, et on tehtud tohutult t\u00f6\u00f6d. Tuli v\u00e4lja \u00fcsna terviklik idee. Brauseris on tehtud, ilmselt selleks, et v\u00e4listada erinevad probleemid ja kiiresti kogu see asi kokku panna. Ma olen kuulnud, et te t\u00f6\u00f6tate, seega on k\u00f5ige lihtsam see brauserisse kokku panna ja k\u00f5ikjal t\u00f6\u00f6tab.<\/em> <em>php<\/em> <em>Sellega ei ole k\u00fcsimusi. Seal on t\u00f5eliselt palju tehtud. Kui palju inimesi selle kallal t\u00f6\u00f6tas? Ja kui palju aega k\u00f5ik see v\u00f5ttis? Sest tavaliselt ei oma t\u00f6\u00f6riistad nii suurt funktsionaalsust.<\/em><\/p>\n<p><\/p>\n<p>Suve algusest s\u00fcgiseni t\u00f6\u00f6tas meie meeskonnast \u00fcks inimene. See oli esimene versioon. Siis tegin ma \u00fcksi 330 commit'i. Seda, mida te n\u00e4ete, tegime kolleegiga pooleks. Kolme kuu jooksul esimesest versioonist viimasele tegin peamiselt \u00fcksi. Aga ma tunnen Javascripti v\u00e4ga halvasti. See oli minu ainus ja, loodetavasti, viimane projekt Javascriptis, millega ma t\u00f6\u00f6tasin. See tuli mulle k\u00e4tte, vaatasin - oh jummel. Aga ma t\u00f5eliselt tahtsin toote l\u00f5pule viia ja see on tulemus.<\/p>\n<p><\/p>\n<p><em>Ait\u00e4h suurep\u00e4rase ettekande eest! See on suurep\u00e4rane t\u00f6\u00f6riist.<\/em> <em>Kas olete v\u00f5rrelnud *Tableau*?<\/em> <em>Ait\u00e4h. Seet\u00f5ttu nagu Tabix nimi, kuna esimesed t\u00e4hed langevad kokku.<\/em><\/p>\n<p><\/p>\n<p>Kas konkurents on p\u00f5hjus? <\/p>\n<p><\/p>\n<p><em>Tuleb palju investeeringuid, me konkureerime.<\/em><\/p>\n<p><\/p>\n<p>Kuidas soovitate m\u00fc\u00fca sisemistele anal\u00fc\u00fctikutele, et see t\u00f6\u00f6riist asendab t\u00e4ielikult <\/p>\n<p><\/p>\n<p><em>*Tableau*?<\/em> T\u00f6\u00f6tab natiivselt ClickHouse'iga. Olen proovinud Tableau't, aga seal ei saa kirjutada s\u00f5nastike toetust ja nii edasi.<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>Ma tean, kuidas inimesed Tabixiga t\u00f6\u00f6tavad. Nad kirjutavad p\u00e4ringu, laadivad v\u00e4lja CSV-sse ja laadivad BI-sse. <strong>Ja seal nad teevad midagi. Aga ma kujutan vaevalt ette, kuidas nad seda teevad, sest see on graafiline t\u00f6\u00f6riist. See v\u00f5ib v\u00e4lja laadida 5000 rida, maksimaalselt 6000 rida, aga mitte rohkem, muidu brauser ei pea vastu.<\/strong> St andmete mahu osas on ikka t\u00f5sised piirangud, jah? <\/p>\n<p><\/p>\n<p><em>Jah. Ma ei kujuta ette, et soovite 10 000 rida endale brauseri ekraanile laadida. Miks?<\/em><\/p>\n<p><\/p>\n<p>Eeldatakse, et see on liides kiireks andmete vaatamiseks? Natuke keerutada, veeretada? <\/p>\n<p><\/p>\n<p><em>Kas see on liides, et andmeid kiiresti vaadata? Natuke keerata ja p\u00f6\u00f6rata?<\/em><\/p>\n<p><\/p>\n<p>Jah, vaatan kiiresti, kuidas see t\u00f6\u00f6tab ja ehitan lihtsalt kokkuv\u00f5ttegraafiku. Edasi annan kuhugi. Meil on oma raportite s\u00fcsteem, kust ma lihtsalt selle p\u00e4ringu v\u00f5tan. Joonistan Tabixis ja saadan meie raporteerimisse. <\/p>\n<p><\/p>\n<p><em>Ja veel k\u00fcsimus. Kogumianal\u00fc\u00fcs?<\/em><\/p>\n<p><\/p>\n<p>Kui on soove, lisame. <\/p>\n<p><\/p>\n<p><em>Kui me alles hakkasime kasutama<\/em> <em>ClickHouse'i, kui kaua v\u00f5ttis aega rakendamine<\/em> <em>ClickHouse<\/em> <em>ja toomine<\/em> <em>tootmisolekusse?<\/em><\/p>\n<p><\/p>\n<p>Nagu ma \u00fctlesin, rakendasime testklastri v\u00e4ga l\u00fchikese ajaga. Kahest p\u00e4evast piisab selle \u00fclesseadmise jaoks. Ning paar n\u00e4dalat me testisime seda. Tootmiseni j\u00f5udsime umbes kolme kuuga. Kuid meil oli oma ETL, st andmete sissekirjutamise t\u00f6\u00f6riist. See suudab kirjutada k\u00f5ikjal, kuhu v\u00f5imalik. See suudab kirjutada MongoDB-sse, Cassandra'sse, MySQL-i. \u00d5petada seda kirjutama ClickHouse'i oli lihtne. Meil oli olemasolev infrastruktuur kiireks rakendamiseks. Umbes kolme kuuga hakkasime esimest komponenti v\u00e4lja viskama. Kuue kuu jooksul loobusime t\u00e4ielikult k\u00f5igest muust. Meil j\u00e4i alles ainult ClickHouse.<\/p>\n<p><\/p>\n<p><em>Igor, suur t\u00e4nu ettekande eest. Mulle v\u00e4ga meeldis teede loomise funktsionaalsus kaartide p\u00f5hjal. Kas on plaanis integreerida Yandex.Mapped'ega ning eelk\u00f5ige kohandatud Yandex kaartidega?<\/em><\/p>\n<p><\/p>\n<p>Ma proovisin integreeruda Google Maps'i asemel, kuid ma ei leidnud Yandex.Mapped'il tumedat teemat. Ma ei r\u00e4\u00e4kinud \u00fchest osast. Rullin tagasi, et t\u00e4iendada. <\/p>\n<p><\/p>\n<p>Slidil - Google Maps. Seal on k\u00e4sk \u201eDRAW_GMAPS\u201d, mis joonistab kaardi. On k\u00e4sk \u201eDRAW_YMAPS\u201d, st saab joonistada Yandex kaardi. Ja tegelikult on selle k\u00e4su taga Javascript, st andmed, mida te ClickHouse'ist saate, saab edastada Javascripti, mille te siin kirjutate. Ja teil on v\u00e4ljundiks ala, kuhu see peab joonistuma. Iga graafiku saab joonistada, st igasugune graafik, kaardi, v\u00f5ite oma komponendi joonistada. Mul oli varem teine teek graafikute joonistamiseks.<\/p>\n<p><\/p>\n<p><em>St seal on t\u00f6\u00f6riist funktsionaalsuse kohandamiseks?<\/em><\/p>\n<p><\/p>\n<p>Iga\u00fcks. V\u00f5ib v\u00f5tta ja v\u00e4rvida need punktid punastest sinisteks, rohelisteks.<\/p>\n<p><\/p>\n<p><em>Ait\u00e4h ettekande eest! Teil oli slaid, kus oli esitatud alternatiivsed t\u00f6\u00f6riistad p\u00e4ringutele<\/em> <em>ClickHouse<\/em> <em>dashboardide ja anal\u00fc\u00fcsiraportite koostamiseks. Ma sain aru, et hetkel, kui te hakkasite t\u00f6\u00f6tama,<\/em> <em>ClickHouse'ile pole nendele t\u00f6\u00f6riistadele adapteerijaid kirjutatud. Ja mind huvitab, miks otsustasite luua oma t\u00f6\u00f6riista, selle asemel et kirjutada adapter m\u00f5ne olemasoleva t\u00f6\u00f6riista jaoks? Arvan, et testredaktori kohandamine on kiire protsess. Miks otsustasite teha nii palju t\u00f6\u00f6d?<\/em><\/p>\n<p><\/p>\n<p>Siin on huvitav n\u00fcanss \u2013 asi on selles, et ma olen tehniline direktor, mitte andmete teadlane. Sel hetkel, kui me hakkasime Druidit juurutama, oli mu tegevusplaanis umbes 50% \u00fclesandeid \u2013 arvestame seda v\u00f5i anal\u00fc\u00fcsime seda, v\u00f5i seda. Ja nii juhtus, et me juurutasime ClickHouse'i. Ja hakkasin k\u00f5ike kiiresti ehitama, arvutama, sulgesin kiiresti oma tegevusplaani. Ja sel hetkel sain aru, et mul on puudu teadmised andeteadusest, andmete visualiseerimisest. Tabix on omamoodi minu kodut\u00f6\u00f6 andmete visualiseerimise \u00f5ppimiseks. Vaatasin, kuidas Zeppelinit t\u00e4iendada. Mul on selle programmeerimise suhtes kerge antipaatia. Redash'i vaatasin, kuidas t\u00e4iendada, aga seal j\u00e4i puudu normaalne redaktor. Ja SuperSet on samuti kirjutatud keeles, mida ma v\u00e4ga ei armasta. Seega otsustasin ise midagi luua, ja siin on tulemused.<\/p>\n<p><\/p>\n<p><em>Igor, kas te v\u00f5tate Pull request'e vastu?<\/em><\/p>\n<p><\/p>\n<p>Jah.<\/p>\n<p><\/p>\n<p><em>Suur ait\u00e4h ettekande eest! Ja kaks k\u00fcsimust. Esimene \u2013 te ei r\u00e4\u00e4gi eriti kiitvalt<\/em> Javascriptist. Kas kirjutasite puhtal Javascriptil v\u00f5i oli siiski tegemist mingi raamistikuga?*<\/p>\n<p><\/p>\n<p>Parem on puhtal Javascriptil.<\/p>\n<p><\/p>\n<p>Nii et milline raamistik?<\/p>\n<p><\/p>\n<p>Angular.<\/p>\n<p><\/p>\n<p><em>Selge. Ja teine k\u00fcsimus. Kas olete kaalunud<\/em> R <em>ja<\/em> *<strong>Shiny**<\/strong>?*<\/p>\n<p><\/p>\n<p>Kaalusin. Katsetasin. <\/p>\n<p><\/p>\n<p><em>Olid ju ka v\u00f5imalused lihtsalt adapter kirjutada.<\/em><\/p>\n<p><\/p>\n<p>See on olemas. N\u00e4iteks on selle teinud selgelt kogukond, kuid nagu ma vastasin eelnevale k\u00fcsimusele, tahtsin ma ise proovida.<\/p>\n<p><\/p>\n<p>*Ei, mis puudutab visualiseerimist, seal on ju olemas.<\/p>\n<p><\/p>\n<p>Sa \u00fctled, et selline asi on ja see joonistab sulle diagrammi. Ma avasin raamatu andmete visualiseerimisest. Ja m\u00f5tlesin: \"Proovin neid andmeid visualiseerida. Kirjutan ise, et need j\u00f5uaksid kohale.\" Ja hakkasin paremini aru saama andmete esitamise tehnoloogiast. Ja kui ma oleksin kasutanud valmis komponenti, oleksin hinnanguliselt halvemini \u00f5ppinud sellega t\u00f6\u00f6tama, st juuri visualiseerimisse. Kuid kuna nii on \u2013 jah, mulle meeldis R, aga ma pole veel lugenud raamatut \"R algajatele\". <\/p>\n<p><\/p>\n<p><em>Ait\u00e4h!<\/em><\/p>\n<p><\/p>\n<p><em>Lihtne k\u00fcsimus. Kas on v\u00f5imalusi kiiresti tabelit, diagrammi v\u00e4lja eksportida?<\/em><\/p>\n<p><\/p>\n<p>Saab eksportida CSV-sse, Excelisse.<\/p>\n<p><\/p>\n<p><em>Ei andmed, vaid valmis tabel, valmis diagramm? N\u00e4iteks, et n\u00e4idata \u00fclemusele.<\/em><\/p>\n<p><\/p>\n<p>On the button \u00abDownload\u00bb and the button \u00abDownload chart in png, in jpg\u00bb.<\/p>\n<p><\/p>\n<p><em>Ait\u00e4h!<\/em><\/p>\n<p><\/p>\n<p>P.S. Mini installation guide for tabix<\/p>\n<p><\/p>\n<ul>\n<li>Laadi alla <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/smi2\/tabix.ui\/releases\">latest release<\/a><\/noindex><\/li>\n<li>Unpack, copy the directory <code>build<\/code> into nginx root_path<\/li>\n<li>Configure nginx<\/li>\n<\/ul>\n<p>Allikas: <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.1.1 - 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\/et\/blog\/administrirovanie\/clickhouse-vizualno-bystryj-i-naglyadnyj-analiz-dannyh-v-tabix-igor-stryhar\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\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\/et\/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 visually fast and clear data analysis in Tabix. Igor Strykhayr | ProHoster","description":"I suggest you check the transcript of Igor Strykhayr's 2017 report \u00abClickHouse \u2013 visually fast and clear data analysis in Tabix\u00bb. Web interface for ClickHouse in the Tabix project.","canonical_url":"https:\/\/prohoster.info\/et\/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":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\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\/et\/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\/et\/wp-json\/wp\/v2\/posts\/73358","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=73358"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/73358\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/73359"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=73358"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=73358"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=73358"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}