Ma te whakamahi i te Clickhouse hei whakakapi mo te ELK, Uiui Nui me te TimescaleDB

whare clickhouse he punaha whakahaere papaaarangi puna tuwhera puna mo te tukatuka uiui tātari ipurangi (OLAP), i hangaia e Yandex. Kei te whakamahia e Yandex, CloudFlare, VK.com, Badoo me etahi atu ratonga huri noa i te ao ki te penapena i nga raraunga tino nui (te whakauru i nga mano rarangi mo ia hekona, he petabytes ranei o nga raraunga kua rongoa ki runga kōpae).

I nga wa katoa, "aho" DBMS, ko nga tauira ko MySQL, Postgres, MS SQL Server, ka penapena nga raraunga ki te raupapa e whai ake nei:

Ma te whakamahi i te Clickhouse hei whakakapi mo te ELK, Uiui Nui me te TimescaleDB

I tenei take, ko nga uara e pa ana ki te rarangi kotahi ka penapena tinana tata. I roto i nga DBMS pourangi, ko nga uara mai i nga pou rereke ka penapena motuhake, ka penapena nga raraunga mai i te pou kotahi:

Ma te whakamahi i te Clickhouse hei whakakapi mo te ELK, Uiui Nui me te TimescaleDB

Ko nga tauira o nga DBMS pourangi ko Vertica, Paraccel (Actian Matrix, Amazon Redshift), Sybase IQ, Exasol, Infobright, InfiniDB, MonetDB (VectorWise, Actian Vector), LucidDB, SAP HANA, Google Dremel, Google PowerDrill, Druid, kdb+.

Kamupene tuku mēra Qwintry I timata te whakamahi i te Clickhouse i te tau 2018 mo te purongo me te tino miharo ki tona ngawari, te tauine, te tautoko SQL me te tere. Ko te tere o tenei DBMS i piri ki te makutu.

mamatanga

Kua whakauruhia a Clickhouse ki Ubuntu me te whakahau kotahi. Mena ka mohio koe ki a SQL, ka taea e koe te timata tonu ki te whakamahi i te Clickhouse mo o hiahia. Heoi, ehara tenei i te mea ka taea e koe te "whakaatu te hanga tepu" ki MySQL me te kape-whakapiri i te SQL ki Clickhouse.

Ki te whakatauritea ki MySQL, he rereke nga momo raraunga nui i roto i nga whakamaramatanga aronuinga ripanga, no reira me whai wa tonu koe ki te huri i nga whakamaramatanga aronuinga ripanga me te ako i nga miihini tepu kia pai ai.

He pai te mahi a Clickhouse me te kore he taputapu taapiri, engari ki te hiahia koe ki te whakamahi tukurua, me whakauru e koe a ZooKeeper. He pai rawa atu nga hua o te tātari mahi uiui - kei roto i nga ripanga punaha nga korero katoa, ka taea te tiki mai i nga raraunga katoa ma te whakamahi i te SQL tawhito me te hoha.

Te whai hua

  • Tohu Paerewa whakataurite o Clickhouse me Vertica me MySQL i runga i te whirihoranga tūmau: e rua nga turanga Intel® Xeon® CPU E5-2650 v2 @ 2.60GHz; 128 GiB RAM; md RAID-5 i runga i te 8 6TB SATA HDD, ext4.
  • Tohu Paerewa te whakataurite o Clickhouse me te rokiroki kapua Amazon RedShift.
  • Ko nga wahanga rangitaki Cloudflare i runga i te mahi Clickhouse:

Ma te whakamahi i te Clickhouse hei whakakapi mo te ELK, Uiui Nui me te TimescaleDB

He tino ngawari te hoahoa o te patengi raraunga ClickHouse - he rite tonu te mahi o nga kopuku katoa i roto i te kahui, ka whakamahi noa i te ZooKeeper hei ruruku. I hangaia e matou he huinga iti o te maha o nga pona me te mahi whakamatautau, i te wa i kitea e matou he mahinga whakamiharo te punaha, e rite ana ki nga painga kua kiia i roto i nga tohu tohu DBMS tātari. I whakatau matou ki te ata titiro ki te ariā kei muri o ClickHouse. Ko te aukati tuatahi ki te rangahau ko te kore o nga taputapu me te iti o te hapori ClickHouse, no reira i ruku matou ki te hoahoa o tenei DBMS kia mohio ai me pehea te mahi.

Karekau a ClickHouse e tautoko i te whiwhi raraunga mai i a Kafka i te mea he putunga raraunga noa iho, no reira i tuhia e matou ta matou ake ratonga urutau ki Go. I panuihia nga karere a Cap'n Proto mai i Kafka, ka huri ki te TSV ka whakauruhia ki roto i te ClickHouse i roto i nga roopu ma te atanga HTTP. I muri mai ka tuhi ano matou i tenei ratonga ki te whakamahi i te whare pukapuka Haere me te atanga ake a ClickHouse hei whakapai ake i nga mahi. I te wa e arotake ana i te mahi o te tango i nga paatete, i kitea e matou tetahi mea nui - i puta mai mo ClickHouse ko tenei mahinga ka whakawhirinaki ki te rahi o te paatete, ara, te maha o nga rarangi whakauru i te wa kotahi. Kia mohio ai koe he aha i puta ai tenei, i titiro matou ki te pehea e penapena ai a ClickHouse i nga raraunga.

Ko te miihini matua, ko te whanau o nga miihini tepu, e whakamahia ana e ClickHouse ki te penapena raraunga ko MergeTree. He rite te ahua o tenei miihini ki te LSM algorithm e whakamahia ana i roto i te Google BigTable, Apache Cassandra ranei, engari ka karo i te hanga tepu mahara takawaenga me te tuhi tika i nga raraunga ki te kōpae. Ma tenei ka tino pai te tuhi tuhi, na te mea ko ia paatete whakaurua ka tohua ma te matua matua anake, ka kopirihia, ka tuhia ki te kopae hei hanga wahanga.

Ko te kore o te ripanga maumahara, tetahi ariā o te "hou" o nga raraunga ka taea anake te taapiri; kaore te punaha e tautoko i te whakarereke, te whakakore ranei. I tenei wa, ko te huarahi anake ki te muku raraunga ko te whakakore i te marama maramataka, na te mea kaore nga waahanga e whakawhiti i te rohe marama. Kei te kaha te mahi a te roopu ClickHouse ki te whakarite i tenei ahuatanga. I tetahi atu taha, ka tuhia, ka hanumi nga wahanga karekau he tautohetohe, no reira ka whiwhi i nga pauna puta noa me te maha o nga whakauru whakauru tae noa ki te puta o te I/O, te waiwai matua ranei.
Heoi ano, ko te tikanga kaore i te pai te punaha mo nga putea iti, na reira ka whakamahia nga ratonga Kafka me nga whakauru mo te aukati. I muri mai, ko te ClickHouse kei muri kei te mahi tonu i te whakakotahi i nga waahanga, kia maha nga waahanga iti o nga korero ka whakakotahi me te tuhi i nga wa maha, na reira ka piki ake te kaha o te tuhi. Heoi, he maha rawa nga waahanga kore hono ka paopao kaitaua o nga whakaurunga i te wa e haere tonu ana te hanumi. Kua kitea e matou ko te whakararu pai i waenga i te horomitanga i te wa-tuuturu me te mahi tohanga ko te whakauru i te maha o nga whakaurunga ia hekona ki te ripanga.

Ko te matua ki te mahi panui ripanga ko te taupū me te waahi o nga raraunga i runga i te kōpae. Ahakoa te tere o te tukatuka, ka hiahia te miihini ki te matawai terabytes o nga raraunga mai i te kōpae me te whakamahi i tetahi waahanga noa iho, ka roa te waa. He toa poupou a ClickHouse, no reira kei ia wahanga he konae mo ia pou (tīwae) me nga uara kua tohua mo ia rarangi. Ma tenei ara, ko nga pou katoa e ngaro ana mai i te patai ka taea te peke tuatahi, katahi ka taea te tukatuka i nga pūtau maha ki te whakarara me te mahinga vectori. Hei karo i te karapa katoa, he konae tohu iti kei ia wahanga.

I te mea kua tohua nga pou katoa ma te "matua matua", kei roto anake i te konae taurangi nga tapanga (rarangi kapohia) o ia rarangi Nth kia mau tonu ki te mahara ahakoa mo nga ripanga nui rawa atu. Hei tauira, ka taea e koe te tautuhi i nga tautuhinga taunoa ki te "tohu ia rarangi 8192nd", ka "iti" te tohu tohu o te tepu me te 1 trillion. Ko nga rarangi ka uru ngawari ki te mahara ka 122 noa nga tohu.

Whanaketanga punaha

Ko te whanaketanga me te whakapai ake o Clickhouse ka taea te whai i Github repo me te whakarite kia puta te tukanga o te "whakatupu ake" i te tere whakamiharo.

Ma te whakamahi i te Clickhouse hei whakakapi mo te ELK, Uiui Nui me te TimescaleDB

Pakeha

Ko te ahua o te rongonui o Clickhouse kei te tipu haere, ina koa i roto i te hapori reo Ruhia. Ko te huihuinga 2018 kawenga nui o tera tau (Moscow, Whiringa-a-rangi 8-9, 2018) i whakaatu ko nga taniwha penei i te vk.com me Badoo te whakamahi Clickhouse, me te whakauru i nga raraunga (hei tauira, nga raarangi) mai i nga mano tini o nga kaitoro i te wa kotahi. I roto i te ataata 40 meneti Ko Yuri Nasretdinov mai i te roopu VKontakte e korero ana me pehea te mahi. Kaore e roa ka tukuna e matou te tuhinga ki runga i a Habr mo te ngawari o te mahi me nga rauemi.

Nga tono

I muri i te whakapau i etahi wa ki te rangahau, ki taku whakaaro he waahi ka whai hua a ClickHouse, ka taea ranei te whakakapi i etahi atu rongoa tuku iho me te rongonui penei i MySQL, PostgreSQL, ELK, Google Big Query, Amazon RedShift, TimescaleDB, Hadoop, MapReduce, Pinot me Druid. Ko nga korero e whai ake nei e whakaatu ana i nga korero mo te whakamahi ClickHouse ki te whakahou, ki te whakakapi ranei i te DBMS o runga ake nei.

Te whakawhānui i nga kaha o MySQL me PostgreSQL

No tata nei i whakakapihia e matou tetahi waahanga MySQL me te ClickHouse mo to maatau papaa panui Mautic newsletter. Ko te raru ko MySQL, na te ahua kino o te hoahoa, kei te takiuru nga imeera katoa ka tukuna me nga hononga katoa i roto i taua imeera me te hash base64, ka hanga he ripanga MySQL nui (email_stats). I muri i te tuku 10 miriona noa nga imeera ki nga kaiohauru ratonga, ka noho tenei tepu ki te 150 GB o te mokowā konae, a ka timata a MySQL ki te "poauau" mo nga patai ngawari. Hei whakatika i te take mokowā kōnae, i pai ta matou whakamahi i te taapiri ripanga InnoDB i whakaitihia e te 4. Heoi ano, karekau he tikanga ki te penapena neke atu i te 20-30 miriona imeera ki MySQL mo te panui i nga hitori, na te mea he patai ngawari mo etahi take me mahi i nga hua karapa katoa i roto i te whakawhiti me te maha o ahau. /O te utaina, e ai ki a matou i nga wa i tae mai ai nga whakatupato a Zabbix.

Ma te whakamahi i te Clickhouse hei whakakapi mo te ELK, Uiui Nui me te TimescaleDB

Ka whakamahia e Clickhouse e rua nga huringa taapiri e whakaiti ana i te rahinga raraunga ma te tata 3-4 wa, engari i roto i tenei keehi he tino "whakapiri" nga raraunga.

Ma te whakamahi i te Clickhouse hei whakakapi mo te ELK, Uiui Nui me te TimescaleDB

Te whakakapi i te ELK

I runga i taku ake wheako, ko te puranga ELK (ElasticSearch, Logstash me Kibana, i roto i tenei keehi ElasticSearch) me nui ake nga rauemi hei whakahaere i nga mea e tika ana mo te penapena rakau. He miihini pai a ElasticSearch mena ka hiahia koe ki te rapu raarangi tuhinga-katoa (kaore au e tino hiahia ana koe), engari kei te miharo ahau he aha te take i noho ai hei miihini raakau paerewa de facto. Ko tana mahi whakauru me te Logstash i raru ai matou ahakoa i raro i nga taumahatanga ngawari me te hiahia kia nui ake te taapiri RAM me te mokowā kōpae. Hei papaunga raraunga, he pai ake a Clickhouse i a ElasticSearch mo enei take:

  • tautoko reo SQL;
  • Ko te tohu pai rawa atu o te taapiri o nga raraunga rongoa;
  • Tautoko mo nga rapunga korero auau a Regex hei utu mo nga rapu kupu katoa;
  • Kua pai ake te whakahōtaka uiui me te teitei ake o te mahi.

I tenei wa, ko te raruraru nui ka puta mai i te whakataurite i te ClickHouse me te ELK ko te kore o nga otinga mo te tuku i nga raarangi, me te kore o nga tuhinga me nga akoranga mo te kaupapa. I tua atu, ka taea e ia kaiwhakamahi te whirihora i te ELK ma te whakamahi i te pukapuka Digital Ocean, he mea tino nui mo te whakatinanatanga tere o aua hangarau. He pūkaha pātengi raraunga, engari kaore ano he Filebeat mo ClickHouse. Ae, kei reira matatau me tetahi punaha mo te mahi me nga rakau whare rakau, he taputapu te hiku ki te whakauru i nga raraunga konae rangitaki ki ClickHouse, engari ka roa ake te waa. Heoi, ko ClickHouse tonu te kaihautu na tona ngawari, no reira ka taea e te hunga timata te whakauru ngawari me te tiimata ki te whakamahi tino mahi i roto noa i te 10 meneti.

Ko te hiahia ki nga otinga iti, i whakamatau ahau ki te whakamahi i te FluentBit, he taputapu mo nga raarangi tuku me te iti rawa o te mahara, me te ClickHouse, i a au e ngana ana ki te karo i te whakamahi Kafka. Heoi, me whakatika nga mea iti, penei i te raruraru hōputu rāi mua i tenei ka taea te mahi me te kore te paparanga takawaenga e huri ana i nga raraunga mai i FluentBit ki ClickHouse.

Hei rereke, ka taea te whakamahi a Kibana hei tuara ClickHouse Karepe. Mai i taku maarama, ka raru pea te mahi i te wa e whakaputa ana i te maha o nga tohu raraunga, ina koa me nga putanga tawhito o Grafana. Kaore ano matou i whakamatau i tenei i Qwintry, engari ka puta nga amuamu mo tenei i ia wa i runga i te hongere tautoko ClickHouse i runga Telegram.

Whakakapinga o Google Big Query me Amazon RedShift (he otinga mo nga kamupene nui)

Ko te take pai mo BigQuery ko te uta i te 1 TB o nga raraunga JSON me te whakahaere i nga patai tātari. Ko te Uiui Nui he hua tino pai e kore e taea te whakanui ake i te tauineine. He raupaparorohiko tino uaua ake tenei i a ClickHouse, e rere ana i runga i te roopu o roto, engari mai i te tirohanga a te kiritaki he nui te rite ki a ClickHouse. Ka tere te utu nui a BigQuery ina timata koe ki te utu mo ia SELECT, no reira he otinga SaaS pono me ona pai me ona huakore.

Ko te ClickHouse te mea pai rawa atu i te wa e whakahaere ana koe i nga paatai ​​utu nui. Ko te nui ake o nga paatai ​​SELECT e whakahaerehia ana e koe i ia ra, ka nui ake te whakaaro ki te whakakapi i te Uiui Nui me te ClickHouse, na te mea ka taea e taua whakakapinga te whakaora ia koe nga mano o nga taara ina tae mai ki te maha o nga terabytes o nga raraunga e tukatukahia ana. Kaore tenei e pa ana ki nga raraunga rongoa, he iti noa te mahi ki te Uiui Nui.

I roto i te tuhinga na Altinity tahi-kaiwhakarewa Alexander Zaitsev "Whakawhiti ki ClickHouse" e korero ana mo nga painga o taua DBMS migration.

Whakakapinga TimescaleDB

Ko te TimescaleDB he toronga PostgreSQL e arotau ana ki te mahi me nga raupapa-waahi-waahi i roto i te putunga raraunga auau (https://docs.timescale.com/v1.0/introduction, https://habr.com/ru/company/zabbix/blog/458530/).

Ahakoa ehara a ClickHouse i te tino whakataetae i roto i te kohanga o te raupapa wa, engari ko te hanganga poupou me te mahinga uiui vector, he tere ake i te TimescaleDB i te nuinga o nga keehi o te tukatuka patai tātari. I te wa ano, ko te mahi o te whiwhi raraunga puranga mai i ClickHouse he 3 nga wa teitei ake, a ka whakamahia ano hoki e ia he 20 nga wa iti ake te mokowā kōpae, he mea tino nui mo te tukatuka i nga pukapuka nui o nga korero o mua: 
https://www.altinity.com/blog/ClickHouse-for-time-series.

Kaore i rite ki a ClickHouse, ko te huarahi anake ki te penapena i etahi mokowā kōpae i TimescaleDB ko te whakamahi i te ZFS me nga punaha konae rite.

Ko nga whakahoutanga kei te heke mai ki a ClickHouse ka whakaurua te kohinga delta, ka pai ake mo te tukatuka me te penapena raraunga raupapa waahi. He pai ake pea a TimescaleDB i te ClickHouse kore i roto i nga keehi e whai ake nei:

  • nga whakaurunga iti me te RAM iti rawa (<3 GB);
  • te maha o nga INSERT iti kaore koe e hiahia ki te tarai ki nga waahanga nui;
  • pai ake te riterite, te riterite me nga whakaritenga ACID;
  • Tautoko PostGIS;
  • hono atu ki nga ripanga PostgreSQL o mua, na te mea ko te Timescale DB te PostgreSQL.

Te whakataetae me nga punaha Hadoop me MapReduce

Ka taea e Hadoop me etahi atu hua MapReduce te mahi i te maha o nga tatauranga uaua, engari ko te rere me nga waahi nui. Ka whakatikahia e ClickHouse tenei raruraru ma te tukatuka terabytes o nga raraunga me te whakaputa hua tata tonu. No reira, he pai ake te mahi a ClickHouse ki te mahi rangahau tātaritanga tere, tauwhitiwhiti, e tika ana hei painga ki nga kaiputaiao raraunga.

Whakataetae me Pinot me Druid

Ko nga kaiwhakataetae tino tata a ClickHouse he poupou, he hua tuwhera ka taea te tauineine a Pinot me Druid. Ko tetahi mahi pai hei whakatairite i enei punaha ka whakaputaina i roto i te tuhinga Romana Leventova i tuhia i te Hui-tanguru 1, 2018

Ma te whakamahi i te Clickhouse hei whakakapi mo te ELK, Uiui Nui me te TimescaleDB

Me whakahou ake tenei tuhinga - e kii ana kaore a ClickHouse e tautoko i nga mahi WHAKAMAHI me TE WHAKAMAHI, kaore i te tino pono mo nga putanga hou.

Kaore matou i te nui o nga wheako ki enei putunga korero, engari kaore au i te tino pai ki te uaua o nga hanganga e hiahiatia ana hei whakahaere i a Druid me Pinot - he huinga katoa o nga waahanga neke e karapotia ana e Java i nga taha katoa.

Ko Druid me Pinot nga kaupapa incubator Apache, ko te ahunga whakamua e hipokina ana e Apache i ona wharangi kaupapa GitHub. I puta mai a Pinot i roto i te incubator i Oketopa 2018, a i whanau a Druid 8 marama i mua - i te Hui-tanguru.

Ko te kore o nga korero mo te mahi a te AFS ka ara ake etahi, he poauau pea, nga patai mo au. Kei te miharo ahau mena i kite nga kaituhi Pinot he pai ake te Apache Foundation ki a Druid, a na tenei ahuatanga ki te whakataetae i puta te hae? Ka puhoi te whanaketanga o Druid me te tere o te whanaketanga o Pinot mena ka ohorere nga kaiwhaiwhai o mua ki te hiahia o muri?

Nga huakore o ClickHouse

Te Maamaa: Ma te mohio, ehara tenei i te hangarau hoha, engari ahakoa, kaore he mea penei i kitea i etahi atu DBMS pourangi.

Ko nga whakauru iti e kore e pai te mahi i te tere tere: me wehe nga whakauru ki nga wahanga nui ake na te mea ka heke te mahinga o nga whakauru iti ki te maha o nga pou i ia rarangi. Koinei te huarahi e penapena ai a ClickHouse i nga raraunga i runga i te kōpae - he tohu 1 te konae, neke atu ranei ia pou, no reira ki te whakauru i te rarangi 1 kei roto 100 nga pou, me whakatuwhera me te tuhi kia 100 nga konae. Koinei te take e hiahia ana te whakaurunga buffering ki tetahi kaitakawaenga (mehemea ka tukuna e te kiritaki ake he buffering) - ko te tikanga Kafka, he momo punaha whakahaere rarangi ranei. Ka taea hoki e koe te whakamahi i te miihini ripanga Buffer ki te kape i nga wahanga nui o nga raraunga ki nga ripanga MergeTree.

Ko nga whakaurunga ripanga he iti noa e te RAM o te tūmau, engari kei reira tonu! Hei tauira, karekau he hononga pera a Druid me Pinot, na te mea he uaua ki te whakatinana tika i roto i nga punaha toha kaore e tautoko i te neke i nga waahanga nui o nga raraunga i waenga i nga pona.

kitenga

Kei te whakamahere matou ki te whakamahi whanui i te ClickHouse i Qwintry i nga tau e haere ake nei, i te mea e whakarato ana tenei DBMS i te toenga pai o te mahi, te iti o runga, te tauine me te ngawari. E tino mohio ana ahau ka timata te horapa tere ina tae mai te hapori ClickHouse me etahi atu huarahi hei whakamahi i roto i nga whakaurunga iti ki waenga-rahi.

Ko etahi panui 🙂

Mauruuru koe mo te noho ki a matou. He pai ki a koe a maatau tuhinga? Kei te hiahia koe ki te kite i etahi atu mea whakamere? Tautokohia matou ma te tuku ota me te tuku korero ki o hoa, kapua VPS mo nga kaihanga mai i te $4.99, he tairitenga ahurei o nga kaitoro taumata-urunga, na matou i hanga mo koe: Ko te pono katoa mo VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps mai i te $19 me pehea ranei te tiri i tetahi tūmau? (e waatea ana me te RAID1 me te RAID10, tae atu ki te 24 matua me te 40GB DDR4).

Dell R730xd 2x iti ake i te pokapū raraunga Equinix Tier IV i Amsterdam? Anei i konei 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV mai i te $199 i roto i te Netherlands! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - mai i te $99! Pānuihia mo Me pehea te hanga hanganga corp. akomanga ki te whakamahi o Dell R730xd E5-2650 v4 tūmau utu 9000 euros mo te pene?

Source: will.com

Tāpiri i te kōrero