ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Unë ju sugjeroj të lexoni transkriptin e raportit të vitit 2017 nga Igor Stryhar "ClickHouse - analiza vizuale e shpejtë dhe e qartë e të dhënave në Tabix".

Ndërfaqja në internet për ClickHouse në projektin Tabix.
Karakteristikat kryesore:

  • Punon me ClickHouse direkt nga shfletuesi, pa pasur nevojë të instaloni softuer shtesë;
  • Redaktori i pyetjeve me theksim sintaksor;
  • Plotësimi automatik i komandave;
  • Mjetet për analizën grafike të ekzekutimit të pyetjeve;
  • Skema ngjyrash për të zgjedhur.
    ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar


ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Unë jam drejtor teknik i LSI2. Ne jemi një grumbullues lajmesh për shkëmbimin e lajmeve. Ne ruajmë shumë të dhëna që marrim nga partnerët tanë dhe i regjistrojmë në ClickHouse - rreth 30 kërkesa në sekondë.

Këto janë të dhëna të tilla si:

  • Klikime në lajme.
  • Lajmet shfaqen në grumbullues.
  • Bannerët shfaqen në rrjetin tonë.
  • Dhe ne regjistrojmë ngjarje nga sporteli ynë, i cili është i ngjashëm me Yandex.Metrica. Kjo është mikro-analitika jonë.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Ne kishim një jetë shumë të trazuar përpara ClickHouse. Kemi vuajtur shumë, duke u përpjekur t'i ruajmë diku këto të dhëna dhe disi t'i analizojmë.

Jeta para ClickHouse – infiniDB

Gjëja e parë që kishim ishte infiniDB. Ajo jetoi me ne për 4 vjet. E nisëm me vështirësi.

  • Nuk mbështet grumbullimin ose ndarjen. Asnjë gjë e tillë e zgjuar nuk doli nga kutia si parazgjedhje.
  • Ajo ka vështirësi në ngarkimin e të dhënave. Vetëm një mjet specifik i konsolës që mund të ngarkonte vetëm skedarë CSV dhe vetëm në një mënyrë shumë të paqartë.
  • Baza e të dhënave është me një fillesë. Mund të shkruani ose të lexoni. Por bëri të mundur përpunimin e një sasie të madhe të dhënash.
  • Dhe ajo gjithashtu kishte një paterica interesante. Çdo natë serveri duhej të rindizej, përndryshe nuk do të funksiononte.

Ajo punoi për ne deri në fund të vitit 2016, kur kaluam plotësisht në ClickHouse.

Jeta para ClickHouse – Cassandra

Meqenëse infiniDB ishte me një fillesë të vetme, ne vendosëm që na duhej një lloj databaze me shumë fije në të cilën mund të shkruanim shumë thread në të njëjtën kohë.

Provuam shumë gjëra interesante. Pastaj vendosëm të provonim Kasandrën. Gjithçka ishte e mrekullueshme me Kasandrën. 10 kërkesa në sekondë për ofertë. 000 kërkesa diku për lexim.

Por ajo kishte edhe interesat e saj. Një herë në muaj ose një herë në dy muaj ajo përjetoi një desinkronizim të bazës së të dhënave. Dhe më duhej të zgjohesha dhe të vrapoja për të rregulluar Kasandrën. Serverët u rifilluan një nga një. Dhe gjithçka u bë e qetë dhe e bukur.

Jeta para ClickHouse – Druid

Pastaj kuptuam se duhej të shkruanim edhe më shumë të dhëna. Në vitin 2016 filluam të shikonim Druid.

Druid është një softuer me burim të hapur i shkruar në Java. Shumë specifike. Dhe ishte i përshtatshëm për clickstream, kur na duhet të ruajmë një lloj rryme ngjarjesh dhe më pas të kryejmë grumbullimin e tyre ose të bëjmë raporte analitike.

Druid kishte versionin 0.9.X.

Vetë baza e të dhënave është shumë e vështirë për t'u vendosur. Ky është kompleksiteti i infrastrukturës. Për ta vendosur atë, ishte e nevojshme të instalohej shumë, shumë hekur. Dhe çdo pjesë e pajisjeve ishte përgjegjëse për rolin e vet të veçantë.

Për të ngarkuar të dhëna në të, ishte e nevojshme të përdorej një lloj shamanizmi. Ekziston një projekt OpenSource - Tranquility, i cili po humbte të dhënat nga ne në një transmetim. Kur ngarkuam të dhënat në të, ai i humbi ato.

Por disi filluam ta zbatonim. Ne, si iriqët që merrnin drogë, por vazhduam të hanin kaktus, filluam ta prezantonim atë. Na u desh rreth një muaj për të përgatitur të gjithë infrastrukturën për të. Kjo do të thotë, porositni serverët, konfiguroni rolet dhe automatizoni plotësisht vendosjen. Kjo do të thotë, në rast të një dështimi të grupit, grupi i dytë do të vendoset automatikisht.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Por më pas ndodhi një mrekulli. Isha me pushime dhe kolegët më dërguan një lidhje për të habr, i cili thotë se Yandex vendosi të hapë ClickHouse. Unë them le ta provojmë.

Dhe fjalë për fjalë në 2 ditë ne vendosëm një grup testimi ClickHouse. Ne filluam të ngarkojmë të dhëna në të. Krahasuar me infiniDB, kjo është elementare; në krahasim me Druid, kjo është elementare. Krahasuar me Kasandrën, është gjithashtu elementare. Sepse nëse ngarkoni të dhëna nga PHP në Cassandra, atëherë kjo nuk është elementare.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Çfarë morëm? Performanca në shpejtësi. Performanca në ruajtjen e të dhënave. Kjo do të thotë, përdoret shumë më pak hapësirë ​​​​në disk. ClickHouse është i shpejtë, është shumë i shpejtë në krahasim me produktet e tjera.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Në kohën e nisjes, kur Yandex publikoi ClickHouse në OpenSource, kishte vetëm një klient konsolë. Ne në kompaninë tonë SMI2 vendosëm të përpiqemi të bëjmë një klient vendas për ueb, në mënyrë që të hapim një faqe nga një shfletues, të shkruajmë një kërkesë dhe të marrim rezultatin, sepse filluam të shkruanim shumë kërkesa. Shkrimi në tastierë është i vështirë. Dhe ne bëmë versionin tonë të parë.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Dhe diku më afër dimrit të vitit të kaluar, filluan të shfaqen mjete të palëve të treta për të punuar me ClickHouse. Këto janë mjete të tilla si:

Unë do të shikoj disa nga këto mjete, domethënë ato me të cilat kam punuar.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Një mjet i mirë, por për Druid. Kur Druid po zbatohej, unë po testoja SuperSet. Më pëlqeu ai. Për Druidin është shumë i shpejtë.

Nuk është i përshtatshëm për ClickHouse. Kjo do të thotë, përshtatet, fillon, por është gati të përpunojë vetëm pyetje elementare si: SELECT ngjarje, ngjarje GROUP BY. Ai nuk mbështet sintaksën më komplekse të ClickHouse.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Mjeti tjetër është Apache Zeppelin. Kjo është një gjë e mirë dhe interesante. Punimet. Ai mbështet fletoret, panelet e kontrollit dhe mbështet variablat. Unë e di se dikush në komunitetin ClickHouse e përdor atë.

Por nuk ka asnjë mbështetje për sintaksën ClickHouse, d.m.th. do të duhet të shkruani pyetje ose në tastierë ose diku tjetër. Tjetra, kontrolloni që gjithçka funksionon. Është thjesht e papërshtatshme. Por ka mbështetje të mirë të panelit.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Mjeti tjetër është Redash.IO. Redash është pritur në internet. Kjo do të thotë, ndryshe nga mjetet e mëparshme, nuk ka nevojë të instalohet. Dhe ky është një pult me ​​aftësinë për të konsoliduar të dhëna nga Burime të ndryshme të të Dhënave. Kjo do të thotë, ju mund të shkarkoni nga ClickHouse, nga MySQL, nga PostgreSQL dhe nga baza të tjera të të dhënave.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Vetëm një muaj më parë (mars 2017) u shfaq mbështetje në Grafanë. Kur ndërtoni raporte në Grafana, për shembull, mbi gjendjen e harduerit tuaj ose në disa metrikë, tani mund të ndërtoni të njëjtin grafik ose një lloj paneli nga të dhënat direkt nga ClickHouse. Kjo është shumë e përshtatshme, dhe ne e përdorim atë vetë. Kjo ju lejon të gjeni anomali. Kjo do të thotë, nëse diçka ndodh dhe një pjesë e pajisjeve bie ose tendoset, atëherë mund të shikoni arsyen nëse këto të dhëna arritën të futeshin në ClickHouse.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Më dukej shumë e sikletshme të shkruaja në këto mjete ose në tastierë. Dhe vendosa të përmirësoj ndërfaqen tonë të parë. Dhe e mora idenë nga EventSQL, SeperSet, Zeppelin.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

cfare deshe? Doja të merrja grafikë, një redaktues të përmirësuar dhe të zbatoja mbështetje për fjalorët e këshillave. Sepse ClickHouse ka një veçori të shkëlqyer - fjalorë. Por është e vështirë të punosh me fjalorë, sepse duhet të mbash mend formatin e vlerave të ruajtura, d.m.th. a është një numër apo një varg, etj. Dhe meqenëse shpesh përdorim fjalorë në variacionet e tyre të ndryshme, ishte mjaft e vështirë të shkruash pyetje.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Kanë kaluar 3 muaj nga publikimi i versionit tonë të parë. Bëra rreth 330 angazhime në një degë private dhe doli të ishte Tabix.

Ndryshe nga versioni i mëparshëm, i cili quhej ClickHouse-Frontend, vendosa ta riemërtoja në një emër të thjeshtë. Dhe doli Tabix.

Çfarë u shfaq?

Vizaton grafikë. Mbështet sintaksën ClickHouse SQL. Jep këshilla për funksionet dhe mund të bëjë shumë gjëra interesante.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Kështu duket skema e përgjithshme Tabix. Në të majtë është një pemë. Në qendër është redaktori i pyetjeve. Dhe më poshtë është rezultati i kësaj kërkese.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Më pas do t'ju tregoj se si funksionon redaktori i pyetjeve.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Këtu plotësimi automatik funksionon automatikisht në tabelë dhe kërkon, në përputhje me rrethanat, plotësimin automatik për fushat. Dhe sugjerime për funksionet. Nëse shtypni ctrl enter, kërkesa do të ekzekutohet ose do të dështojë me një gabim. Kërkesa më e thjeshtë dërgohet në Tabix dhe merret rezultati, d.m.th. ju mund të punoni shpejt me ClickHouse.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Fjalorët, siç e thashë tashmë, janë një gjë shumë interesante me të cilën ne punojmë shumë. Dhe që na lejoi të bënim shumë gjëra. Le të themi se i ruajmë të gjitha qytetet në fjalorë. Ne ruajmë identifikuesin e qytetit dhe emrin e qytetit, gjerësinë dhe gjatësinë e tij. Dhe në bazën e të dhënave ne ruajmë vetëm identifikuesin e qytetit. Prandaj, ne i kompresojmë të dhënat shumë fuqishëm.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Kjo duket të jetë një gjë e thjeshtë, por ndihmon në ClickHouse në një mënyrë shumë interesante. Për shkak të faktit se ClickHouse mbështet vetëm bashkime të mbivendosura, pyetja rritet në rënie dhe mjaft e gjerë. Dhe kur kllapa hapet dhe vjen një shprehje e gjatë, atëherë diçka aq e thjeshtë sa kolapsi i pyetjes e bën më të lehtë punën me vetë pyetjen. Sepse kur pyetja është 200-300 rreshta e gjatë dhe shumë e madhe në gjerësi, është shumë e dobishme të fshihet pyetja dhe më pas të gjesh një vend ose ta lokalizosh disi atë.

Pema e objekteve, pyetjet e shumta dhe skedat (Video 13:46 https://youtu.be/w1-XsL3nbRg?t=826)

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Më pas do t'ju tregoj për pemën dhe skedat. Në të majtë është një pemë; në krye mund të krijoni disa skeda. Skedat janë si hapësira e punës. Mund të krijoni disa skeda dhe t'i emërtoni secilin ndryshe. Është si një mini-sistem për ndërtimin e një raporti.

Skedat ruhen automatikisht. Nëse rinisni shfletuesin tuaj ose mbyllni ose hapni Tabix, e gjithë kjo do të ruhet.

Hotkey - i përshtatshëm (Video 14:39 https://youtu.be/w1-XsL3nbRg?t=879)

Ka çelësa të nxehtë dhe ka mjaft prej tyre. Disa prej tyre i kam nxjerrë këtu si shembull. Kjo është ndërrimi i skedave, ekzekutimi i një kërkese ose ekzekutimi i disa kërkesave.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Unë do t'ju tregoj se si të punoni me rezultatin. Ne dërgojmë një kërkesë. Këtu po vizatoj sin, cos dhe tg. Ju mund të nënvizoni rezultatin, d.m.th. të vizatoni një hartë tipike për një kolonë. Ju mund të nënvizoni vlerat pozitive ose negative. Ose thjesht ngjyrosni një element specifik të tabelës. Kjo është e përshtatshme kur tavolina është e madhe dhe ju duhet të gjeni ndonjë anomali me sytë tuaj. Kur kërkoja anomali, nxirrja në pah disa vija, disa elemente me ngjyrë jeshile apo të kuqe.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Ka shumë gjëra interesante atje. Për shembull, si të kopjoni në Redmine Markdown. Nëse keni nevojë të kopjoni rezultatin diku, kjo është shumë e përshtatshme. Ju thjesht mund të zgjidhni një zonë, të thoni "Copy to Redmine" dhe ajo do të kopjohet në Redmine Markdown ose do të krijojë një pyetje Where.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Tjetra është optimizimi i pyetjeve. Një herë harrova të specifikoja fushën "data". Dhe kërkesa ime në ClickHouse nuk u përpunua shumë, shumë shpejt, por shpejt, pra më pak se një sekondë. Kur pashë se sa rreshta ai kaloi, u tremba. Ne nuk shkruajmë kaq shumë rreshta në këtë tabelë brenda një dite. Fillova të analizoja kërkesën dhe pashë që kisha humbur një takim në një vend. Kjo do të thotë, harrova të tregoj se nuk kam nevojë për të dhëna për të gjithë tabelën, por për një periudhë të caktuar.

Tabix ka një skedë "Stats", e cila ruan të gjithë historinë e kërkesave të dërguara, d.m.th. aty mund të shihni se sa rreshta u lexuan nga kjo kërkesë dhe sa kohë u desh për t'u ekzekutuar. Kjo lejon optimizimin.

Mund të ndërtoni një tabelë kryesore mbi rezultatin e pyetjes. Ju dërguat një kërkesë në ClickHouse dhe morët disa të dhëna. Dhe më pas mund t'i zhvendosni këto të dhëna me miun dhe të ndërtoni një lloj tabele kryesore.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Gjëja tjetër interesante është komploti. Le të themi se kemi kërkesën e mëposhtme: për sin, cos nga 0 në 299. Dhe për ta nxjerrë atë, duhet të zgjidhni skedën "Draw" dhe do të merrni një grafik me sin dhe cos tuaj.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Ju mund ta ndani këtë në boshte të ndryshme, d.m.th. mund të vizatoni dy grafikë krah për krah në të njëjtën kohë. Shkruani një komandë dhe një komandë të dytë.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Ju mund të vizatoni histograme.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Ju mund ta zbërtheni këtë në një matricë grafikësh.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Ju mund të ndërtoni një hartë nxehtësie.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Ju mund të ndërtoni një kalendar termik. Nga rruga, kjo është një gjë shumë e përshtatshme kur duhet të analizoni anomalitë gjatë një viti, d.m.th., të gjeni ose thumba ose pika. Ky vizualizimi i të dhënave më ndihmoi me këtë.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Tjetri është Treemap.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Sankeys është një tabelë interesante. Ai është ose Streamgrahps ose River. Por unë e quaj lumë. Gjithashtu ju lejon të shikoni për ndonjë anomali. Është shumë komode. Unë rekomandoj ta përdorni për kërkim.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Gjëja tjetër interesante është vizatimi i një harte dinamike. Nëse ruani gjerësinë, gjatësinë gjeografike në bazën tuaj të të dhënave dhe, të themi, ruani një destinacion, nëse, për shembull, keni kamionë ose aeroplanë që fluturojnë, atëherë mund të vizatoni shtigjet e destinacionit. Gjithashtu aty mund të vendosni shpejtësinë dhe madhësinë e këtyre objekteve në të cilat ata fluturojnë.

Por problemi me këtë hartë është se ajo vizaton vetëm një hartë të botës, nuk ka asnjë detaj.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Më vonë shtova hartën e Google. Nëse ruani gjerësinë, gjatësinë gjeografike, atëherë mund ta vizatoni rezultatin në hartën e Google, por pa mbështetjen e aeroplanit.

Ne kemi diskutuar funksionet kryesore të punës me rezultatet dhe pyetjet në Tabix.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Tjetra është një analizë e serverit tuaj ClickHouse. Ekziston një skedë e veçantë "Metrics", ku mund të shihni madhësinë e të dhënave të ruajtura për secilën kolonë. Pamja e ekranit tregon se kjo fushë "referues" zë rreth 730 Gb. Nëse e braktisim këtë fushë, do të kursejmë tre copëza nga 700 GB secila, pra rreth 2 TB që nuk na duhen.

Ne gjithashtu kemi një fushë "request_id" të cilën e ruajmë në një varg. Por nëse fillojmë ta ruajmë në formë numerike, kjo fushë do të tkurret jashtëzakonisht shumë.

Ai gjithashtu tregon konfigurimin e serverit dhe një listë të nyjeve në grupin tuaj.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Skeda tjetër është metrika. Ata futen në kohë reale me ClickHouse dhe thjesht ju lejojnë të analizoni gjendjen e serverit dhe të kuptoni se çfarë po ndodh me të. Ky nuk është një zëvendësim për Grafanën e plotë. Kjo është e nevojshme për analizë të shpejtë.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Skeda tjetër është proceset. Prej tyre mund të kuptoni se çfarë po ndodh në server. Kuptoni se çfarë po ndodh atje. Kisha një kërkesë që harxhonte 200 GB lexim çdo herë. E pashë këtë falë kësaj ndërfaqe. E kapa dhe e korrigjova. Dhe doli të ishte rreth 30 GB, domethënë një performancë herë pas here.

ClickHouse – analizë vizualisht e shpejtë dhe intuitive e të dhënave në Tabix. Igor Stryhar

Faleminderit! Dhe është në OpenSource

mbarova. Dhe meqë ra fjala, është OpenSource, është falas dhe as nuk keni nevojë ta shkarkoni. Hapeni atë në një shfletues dhe gjithçka do të funksionojë.

Pyetjet tuaja

Igor, çfarë është më pas? Ku do ta zhvilloni këtë mjet?

Më pas, do të shfaqen pultet, d.m.th., ndoshta do të shfaqen pultet. Integrimi me bazat e tjera të të dhënave. Unë e bëra këtë, por nuk e kam publikuar ende në OpenSource. Kjo është MySQL dhe ndoshta PostgreSQL. Kjo do të thotë, do të jetë e mundur të dërgoni kërkesa nga Tabix jo vetëm në ClickHouse, por edhe në mjete të tjera.

Është e qartë se është bërë një punë e madhe. Doli të ishte një ide mjaft e plotë. Kjo është bërë në shfletuesin, me sa duket, për të eliminuar patericat në të gjitha llojet e boshteve dhe për të hedhur shpejt të gjithë së bashku. Kam dëgjuar që ju jeni në php funksionon, kështu që mënyra më e lehtë është ta shtypni atë në shfletues dhe do të funksionojë kudo. Nuk ka pyetje për këtë. Pyetja është kjo. Aty vërtet është bërë shumë. Sa njerëz kanë punuar për këtë? Dhe sa kohë zgjati e gjitha? Sepse mjetet e personalizuara zakonisht nuk kanë aq shumë funksionalitet.

Një person nga ekipi ynë ka punuar nga vera në vjeshtë. Ky ishte versioni i parë. Pastaj bëra 330 angazhime vetëm. Atë që shihni, unë dhe kolegu im e bëmë përgjysmë. Në 3 muaj, nga versioni i parë deri tek i fundit, e bëra kryesisht vetëm. Por unë nuk e di shumë mirë Javascript. Ky ishte projekti im i vetëm dhe, shpresoj, i fundit në Javascript me të cilin kam punuar. E kuptova, shikova - oh tmerr. Por unë me të vërtetë doja të përfundoja produktin dhe kjo është ajo që ndodhi.

Faleminderit shumë për raportin! Ky është një mjet i madh. ME Tablo A keni krahasuar?

Faleminderit. Prandaj e quajta Tabix, sepse shkronjat e para janë të njëjta.

Sepse ju konkurroni?

Do të ketë shumë investime, ne do të konkurrojmë.

Si mund të ofroni për t'u shitur analistëve të brendshëm që ky mjet do ta zëvendësojë plotësisht *Tabela*? Cilat do të jenë argumentet?

Punon në mënyrë origjinale me ClickHouse. Kam provuar Tableau, por nuk mund të shkruash mbështetje për fjalorë dhe të ngjashme atje. Unë e di se si njerëzit punojnë me Tabix. Ata shkruajnë një pyetje, e ngarkojnë në CSV dhe e ngarkojnë në BI. Dhe ata tashmë po bëjnë diçka atje. Por e kam të vështirë të imagjinoj se si e bëjnë këtë, sepse është një mjet grafik. Mund të shkarkojë 5 rreshta, maksimumi 000 rreshta, por jo më shumë, përndryshe shfletuesi nuk do ta përballojë.

Kjo do të thotë, ka disa kufizime serioze në sasinë e të dhënave, apo jo?

Po. Nuk mund ta imagjinoj që do të dëshironit të ngarkoni 10 rreshta në tabelën tuaj në ekranin e shfletuesit tuaj. Per cfare?

A do të thotë kjo se kjo është një ndërfaqe për shikimin e shpejtë të të dhënave? E përdredh pak, e përdredh?

Po, shikoni shpejt se si funksionon dhe thjesht ndërtoni një grafik përmbledhës. Dhe pastaj jepeni diku. Ne kemi sistemin tonë të raportimit, prej nga e marr thjesht këtë kërkesë. Unë vizatoj në Tabix dhe e dërgoj në raportimin tonë.

Dhe një pyetje tjetër. Analiza e grupit?

Nëse ka ndonjë kërkesë, ne do ta shtojmë atë.

Kur sapo keni filluar ta përdorni? ClickHouse, sa kohë zgjati zbatimi? Shtëpi Kliko dhe duke sjellë në gjendjen e prodhimit?

Siç thashë, ne kemi zbatuar një grup testimi në një kohë shumë të shkurtër. Ne e vendosëm atë për dy ditë. Dhe ne e testuam atë për disa javë të tjera. Dhe ne arritëm në prodhim për 3 muaj, por ne kishim ETL-në tonë, pra një mjet për regjistrimin e të dhënave. Dhe ai shkroi në gjithçka që mundi. Ai mund të shkruajë në MongoDB, Cassandra, MySQL. Ishte e lehtë t'i mësoje atij se si të shkruante në ClickHouse. Kishim një infrastrukturë të gatshme për zbatim të shpejtë. Brenda 3 muajve filluam të hedhim komponentin e parë. Në 6 muaj ne braktisëm plotësisht gjithçka tjetër. Na ka mbetur vetëm një ClickHouse.

Igor, faleminderit shumë për raportin. Më pëlqeu shumë funksionaliteti i ndërtimit të shtigjeve duke përdorur harta. A ka ndonjë plan për integrim me Yandex.Maps dhe veçanërisht me Yandex.Maps të personalizuar?

U përpoqa të integroja në vend të hartës së Google, por nuk gjeta një temë të errët në Yandex.Maps. Nuk të thashë një pjesë. Do ta kthej për të shtuar.

Slide – Harta e Google. Ekziston një komandë "DRAW_GMAPS", e cila vizaton një hartë. Ekziston një komandë "DRAW_YMAPS", d.m.th. mund të vizatojë një Yandex.Map. Por në fakt, nën këtë komandë ekziston Javascript, pra të dhënat që merrni nga ClickHouse mund të transferohen në Javascript, të cilën e shkruani këtu. Dhe ju keni një zonë dalëse ku duhet të vizatohet. Ju mund të vizatoni çdo grafik, pra çdo grafik, hartë, ju mund të vizatoni komponentin tuaj. Para kësaj, unë kisha një bibliotekë tjetër për vizatimin e vetë grafikëve.

Kjo do të thotë, a ka një mjet për të personalizuar funksionalitetin e ekranit?

Çdo. Ju mund t'i merrni dhe t'i ringjyroni këto pika, duke i bërë ato jo të kuqe, por blu, jeshile.

Faleminderit për raportin! Ju kishit një rrëshqitje që paraqiste mjete alternative të kërkimit Shtëpi Kliko për ndërtimin e tabelave dhe raporteve analitike. E kuptoj që në momentin kur ke filluar të punosh me ClickHouse, asnjë përshtatës nuk është shkruar për këto mjete. Dhe po pyes veten pse vendosët të bëni veglën tuaj, në vend që të shkruani një përshtatës për ndonjë mjet të gatshëm? Unë mendoj se rregullimi i redaktorit të testit është i shpejtë. Pse vendosët të bëni kaq shumë punë?

Këtu ka një pikë interesante - fakti është se unë jam drejtor teknik, jo shkencëtar i të dhënave. Në kohën kur filluam zbatimin e Druid, udhërrëfyesi im kishte rreth 50% të detyrave - le ta llogarisim këtë, ose le ta llogarisim këtë, ose ta analizojmë këtë. Dhe doli që ne implementuam ClickHouse. Dhe ai filloi të ndërtonte shpejt gjithçka, të numëronte dhe shpejt mbylli udhërrëfyesin e tij. Dhe në atë kohë kuptova se më mungonin njohuritë në shkencën e të dhënave dhe vizualizimin e të dhënave. Tabix është një lloj detyra ime e shtëpisë për të mësuar vizualizimin e të dhënave. Po shikoja se si të plotësoja Zeppelin. Unë kam një mospëlqim të vogël për programimin e tij. Redash E shikova si ta shtoja, por më mjaftoi një redaktues normal. Dhe SuperSet është shkruar gjithashtu në një gjuhë që nuk më pëlqen vërtet. Dhe kështu vendosa të bëj biçikletë, dhe kjo është ajo që ndodhi.

Igor, i pranon kërkesat Pull?

Po.

Faleminderit shumë për raportin! Dhe dy pyetje. Së pari, ju nuk flisni shumë me lajka Javascript. A keni shkruar në Javascript të zhveshur apo është një lloj kornize?*

Më mirë në Javascript të zhveshur.

Pra, çfarë kornize?

Këndore.

Është e qartë. Dhe pyetja e dytë. A keni konsideruar R и *me shkëlqim**?*

E konsideroi atë. Luajtur.

Ju gjithashtu mund të shkruani vetëm një përshtatës.

Ai eshte. Duket sikur komuniteti ia doli, por, teksa iu përgjigja pyetjes së mëparshme, doja ta provoja vetë.

*Jo, sa i përket vizualizimit, është gjithashtu atje.

Ju thoni që ekziston një gjë e tillë dhe do t'ju vizatojë një grafik. Hapa një libër mbi vizualizimin e të dhënave. Dhe mendova: "Më lejoni të përpiqem t'i vizualizoj këto të dhëna. Unë do t'i shkruaj atij në mënyrë që ai të rindërtojë të dhënat." Dhe fillova të kuptoj më mirë teknologjinë e furnizimit të të dhënave. Dhe nëse do të kisha marrë një komponent të gatshëm, personalisht do të kisha mësuar më keq se si ta përdorja, domethënë vizualizimin. Por po, më pëlqeu R, por nuk e kam lexuar ende librin "R për Dummies".

Ju faleminderit!

Pyetje e thjeshtë. A ka ndonjë mënyrë për të ngarkuar shpejt një shenjë ose orar?

Mund të ngarkohet në CSV ose Excel.

Jo të dhëna, por një pjatë e gatshme, një grafik i gatshëm? Për shembull, për t'i treguar shefit.

Ekziston një buton "Ngarko" dhe ka një buton "Ngarko grafikun në png, në jpg".

Ju faleminderit!

PS Mini-udhëzime për instalimin e tabix

  • Shkarko lëshimi i fundit
  • Shpaketoni, kopjoni direktorinë build në nginx root_path
  • Konfiguro nginx

Burimi: www.habr.com

Shto një koment