
N'ime afọ ole na ole gara aga, ọdụ data usoro oge agbanweela site na ihe na-enweghị atụ (ọpụrụiche ejiri ma ọ bụ na-emeghe usoro nlekota oru (ma kegide ya na ngwọta kpọmkwem) ma ọ bụ na nnukwu Data Project) n'ime "ngwaahịa ahịa". Na mpaghara nke Russian Federation, a ga-enye ekele pụrụ iche na Yandex na ClickHouse. Ruo oge a, ọ bụrụ na ịchọrọ ịchekwa nnukwu data usoro oge, ị ga-ekwenye na ọ dị mkpa iji wuo nnukwu mkpokọta Hadoop ma dokwaa ya, ma ọ bụ soro usoro iwu onye ọ bụla kparịta ụka maka sistemụ ọ bụla.
Ọ nwere ike ịdị ka na 2019 isiokwu nke TSDB kwesịrị iji mee ihe ga-enwe naanị otu ahịrịokwu: "naanị jiri ClickHouse." Ma ... enwere nuances.
N'ezie, ClickHouse na-arụsi ọrụ ike na-emepe emepe, onye ọrụ na-eto eto, na nkwado na-arụsi ọrụ ike, ma anyị abụrụla ndị ejidere maka ọganihu ọha na eze nke ClickHouse, bụ nke kpuchiri ndị ọzọ, ikekwe ngwọta dị irè / a pụrụ ịdabere na ya?
Ná mmalite nke afọ gara aga, anyị malitere ịrụgharị usoro nlekota nke onwe anyị, n'oge ajụjụ ahụ bilitere maka ịhọrọ nchekwa data kwesịrị ekwesị maka ịchekwa data. Achọrọ m ikwu maka akụkọ ihe mere eme nke nhọrọ a ebe a.
Ulationkpụzi nsogbu a
Nke mbụ, okwu mmalite dị mkpa. Kedu ihe kpatara anyị ji chọọ usoro nleba anya nke anyị ma kedu ka e si hazie ya?
Anyị malitere ịnye ọrụ nkwado na 2008, site na 2010, ọ bịara doo anya na ọ siri ike nchịkọta data gbasara usoro ndị na-eme na akụrụngwa ndị ahịa na ngwọta ndị dị n'oge ahụ (anyị na-ekwu maka ya, Chineke gbaghaara m, Cacti, Zabbix). na Graphite na-apụta).
Isi ihe anyị chọrọ bụ:
- nkwado (n'oge ahụ - ọtụtụ iri, na n'ọdịnihu - ọtụtụ narị) nke ndị ahịa n'ime otu usoro na n'otu oge ahụ ọnụnọ nke a centralized njikere management usoro;
- mgbanwe na ijikwa usoro njikere (mmụba ọkwa n'etiti ndị ọrụ ọrụ, nhazi oge, ntọala ihe ọmụma);
- ike nke ukwuu nkọwa eserese (Zabbix n'oge ahụ sụgharịrị eserese n'ụdị foto);
- nchekwa ogologo oge nke nnukwu data (otu afọ ma ọ bụ karịa) na ikike iji weghachite ya ngwa ngwa.
N'isiokwu a, anyị nwere mmasị na isi ihe ikpeazụ.
N'ikwu okwu maka nchekwa, ihe ndị a chọrọ bụ ndị a:
- usoro ahụ ga-arụ ọrụ ngwa ngwa;
- ọ bụ ihe na-achọsi ike na usoro ahụ nwere interface SQL;
- Sistemu ahụ ga-akwụsi ike ma nwee ntọala na nkwado onye ọrụ na-arụsi ọrụ ike (ozugbo anyị chere mkpa ọ dị ịkwado sistemu dị ka MemcacheDB, nke emebebeghị, ma ọ bụ ebe nchekwa MooseFS kesara, nke bug tracker nke edobere na Chinese: anyị na-ekwughachi akụkọ a maka ọrụ anyị achọghị);
- nnabata na CAP theorem: Consitency (chọrọ) - data ga-adị ọhụrụ, anyị achọghị ka nche management usoro ghara ịnata ọhụrụ data na gbụsara ọnụ mmiri alerts banyere na-abụghị mbata nke data maka niile oru ngo; Ntachi obi nkebi (chọrọ) - anyị achọghị ịnweta sistemụ Brain Split; Nnweta (ọ bụghị ihe dị oke egwu, ma ọ bụrụ na enwere oyiri na-arụ ọrụ) - anyị nwere ike ịgbanwe na usoro ndabere n'onwe anyị na ihe mberede, na-eji koodu.
N'ụzọ dị ịtụnanya, n'oge ahụ MySQL ghọrọ ezigbo ngwọta maka anyị. Ọdịdị data anyị dị nnọọ mfe: id nkesa, counter id, timestamp na uru; Nlere ngwa ngwa nke data na-ekpo ọkụ bụ nnukwu ọdọ mmiri na-echekwa, na SSD kwadoro ịlele data akụkọ ihe mere eme.

Ya mere, anyị nwetara ihe nlele nke data izu abụọ ọhụrụ, yana nkọwa zuru ezu ruo 200 ms nke abụọ tupu emee data ahụ kpamkpam, wee biri na usoro a ogologo oge.
Ka ọ dị ugbu a, oge gafere na ọnụọgụ data ahụ toro. Ka ọ na-erule 2016, mpịakọta data ruru iri puku kwuru iri terabytes, nke bụ nnukwu ego n'ihe gbasara nchekwa SSD agbaziri agbaziri.
Ka ọ dị ugbu a, ọdụ data columnar aghọwo ihe na-arụsi ọrụ ike, nke anyị malitere iche echiche nke ọma: na ọdụ data columnar, a na-echekwa data, dịka ị nwere ike ịghọta, na ogidi, ma ọ bụrụ na ị na-ele data anyị anya, ọ dị mfe ịhụ nnukwu. ọnụọgụ nke oyiri nke nwere ike, na Ọ bụrụ na ị na-eji nchekwa data columnar, mpikota ya site na iji mkpakọ.

Otú ọ dị, usoro isi ụlọ ọrụ ahụ nọgidere na-arụ ọrụ nke ọma, achọghịkwa m ịnwale na ịgbanwere ihe ọzọ.
Na 2017, na Percona Live ogbako na San Jose, eleghị anya ndị mmepe Clickhouse kwuputara onwe ha maka oge mbụ. N'ileghachi anya na mbụ, usoro ahụ dị njikere mmepụta (nke ọma, Yandex.Metrica bụ usoro mmepụta siri ike), nkwado dị ngwa ma dị mfe, na, nke kachasị mkpa, ọrụ dị mfe. Kemgbe afọ 2018, anyị amalitela usoro mgbanwe. Ma n'oge ahụ, enwere ọtụtụ "okenye" na usoro TSDB nwalere oge, anyị kpebiri iwepụta oge buru ibu ma jiri usoro ọzọ tụnyere iji jide n'aka na ọ dịghị ihe ngwọta ọzọ na Clickhouse, dị ka ihe anyị chọrọ.
Na mgbakwunye na ihe achọrọ nchekwa akọwapụtagoro, ndị ọhụrụ apụtala:
- usoro ọhụrụ kwesịrị inye ma ọ dịkarịa ala otu arụmọrụ dị ka MySQL na otu ego nke ngwaike;
- nchekwa nke usoro ọhụrụ kwesịrị iburu obere ohere;
- DBMS ka ga-adịrịrị mfe ijikwa;
- Achọrọ m ịgbanwe ngwa ahụ ntakịrị mgbe ị na-agbanwe DBMS.
Kedu usoro anyị malitere ịtụle?
Apache Hive/Apache Impala
Nchịkọta Hadoop ochie, nke agha nwalere. N'ezie, ọ bụ interface SQL wuru n'elu ịchekwa data n'ụdị obodo na HDFS.
Uru
- Site na ịrụ ọrụ kwụsiri ike, ọ dị mfe ịkọ data.
- Enwere ngwọta kọlụm maka nchekwa data (obere oghere).
- Mmezu ngwa ngwa nke ọrụ ndị yiri ya mgbe akụrụngwa dị.
Nkeji
- Ọ bụ Hadoop, ma ọ siri ike iji. Ọ bụrụ na anyị adịghị njikere iwere ngwọta dị njikere na ígwé ojii (ma anyị adịghị njikere n'ihe gbasara ọnụ ahịa), a ga-achịkọta nchịkọta dum ma kwado ya site n'aka ndị nchịkwa, ma anyị achọghị n'ezie. nke a.
- A chịkọtara data .
Ma:

A na-enweta ọsọ ọsọ site n'ịkọba ọnụ ọgụgụ nke sava kọmputa. N'ikwu ya n'ụzọ dị mfe, ọ bụrụ na anyị bụ nnukwu ụlọ ọrụ, na-etinye aka na nyocha, na ọ dị oké mkpa maka azụmahịa iji chịkọta ozi ngwa ngwa o kwere mee (ọbụlagodi na ọnụ ahịa nke iji nnukwu ego kọmputa), nke a nwere ike ịbụ nhọrọ anyị. Mana anyị adịbeghị njikere ịmụba ụgbọ elu ngwaike iji mee ka ọrụ dị ngwa.
Druid/Pint
Enwere ọtụtụ ihe gbasara TSDB kpọmkwem, mana ọzọ, nchịkọta Hadoop.
E nwere .
N'okwu ole na ole: Druid/Pint dị mma karịa Clickhouse n'ọnọdụ ebe:
- Ị nwere ọdịdị dị iche iche nke data (na anyị ikpe, anyị na-edekọ naanị timeseries nke ihe nkesa metrics, na, n'ezie, nke a bụ otu tebụl. Ma e nwere ike ịbụ ndị ọzọ ikpe: ngwá ọrụ oge usoro, aku na uba usoro, wdg - onye ọ bụla nwere. nhazi nke ya, nke kwesiri ka a chịkọta ya na nhazi ya).
- Ọzọkwa, enwere ọtụtụ data a.
- Tebụl na data nwere usoro oge na-apụta ma na-apụ n'anya (ya bụ, ụfọdụ nhazi data bịarutere, nyochara ma hichapụ ya).
- Enweghị nkọwa doro anya nke enwere ike kewaa data.
N'ọnọdụ ndị ọzọ, ClickHouse na-arụ ọrụ nke ọma, nke a bụkwa ikpe anyị.
Pịa olọ
- SQL dị ka
- Ọ dị mfe ijikwa.
- Ndị mmadụ na-ekwu na ọ na-arụ ọrụ.
Edepụtara aha maka ule.
InfluxDB
Nhọrọ mba ọzọ ka ClickHouse. N'ime minuses: Nnukwu nnweta dị naanị na ụdị azụmahịa, mana ọ dị mkpa ka atụnyere ya.
Edepụtara aha maka ule.
Cassandra
N'otu aka ahụ, anyị maara na a na-eji ya na-echekwa usoro oge metric site na usoro nleba anya dị ka, ọmụmaatụ, ma ọ bụ OkMeter. Agbanyeghị, enwere nkọwapụta.
Cassandra abụghị nchekwa data kọlụm n'echiche ọdịnala. Ọ na-adị ka nlele ahịrị, mana ahịrị ọ bụla nwere ike ịnwe ọnụ ọgụgụ dị iche iche nke ogidi, na-eme ka ọ dị mfe ịhazi nlele kọlụm. N'echiche a, o doro anya na na njedebe nke 2 ijeri ogidi, ọ ga-ekwe omume ịchekwa ụfọdụ data na ogidi (na otu oge). Dịka ọmụmaatụ, na MySQL enwere oke nke kọlụm 4096 na ọ dị mfe ịsụ ngọngọ na njehie na koodu 1117 ma ọ bụrụ na ị na-agbalị ime otu ihe ahụ.
Igwe Cassandra lekwasịrị anya n'ịkwakọba data buru ibu na sistemụ kesara na-enweghị nna ukwu, na Cassandra CAP theorem nke a kpọtụrụ aha n'elu gbasara AP, ya bụ, gbasara nnweta data na iguzogide nkewa. Ya mere, ngwá ọrụ a nwere ike ịdị mma ma ọ bụrụ na ị ga-ede akwụkwọ na nchekwa data a ma ghara ịgụ ya. Na ebe a ọ bụ ihe ezi uche dị na ya iji Cassandra dị ka nchekwa "oyi". Nke ahụ bụ, dị ka ogologo oge, ebe a pụrụ ịdabere na ya iji chekwaa nnukwu data akụkọ ihe mere eme nke na-adịkarịghị mkpa, mana enwere ike weghachite ma ọ bụrụ na ọ dị mkpa. Ka o sina dị, n'ihi izu oke, anyị ga-anwalekwa ya. Ma, dị ka m kwuru na mbụ, ọ dịghị ọchịchọ na-arụsi ọrụ ike idegharị koodu maka ahọrọ nchekwa data ngwọta, otú anyị ga-anwale ya dịtụ obere - na-enweghị adapting na nchekwa data Ọdịdị na nkọwa nke Cassandra.
Prometheus
Ọfọn, n'ihi ọchịchọ ịmata ihe, anyị kpebiri ịnwale arụmọrụ nke nchekwa Prometheus - naanị iji ghọta ma anyị dị ngwa ngwa ma ọ bụ dị nwayọọ karịa ngwọta dị ugbu a yana ole.
Usoro ule na nsonaazụ
Ya mere, anyị nwalere ọdụ data 5 na nhazi 6 ndị a: ClickHouse (1 node), ClickHouse (tebụl kesara maka ọnụ 3), InfluxDB, Mysql 8, Cassandra (3 nodes) na Prometheus. Atụmatụ ule bụ nke a:
- bulite data akụkọ ihe mere eme maka otu izu (ọnụahịa nde 840 kwa ụbọchị; 208 puku metrik);
- anyị na-emepụta ibu ndekọ (a tụlere ụdị ibu ibu 6, lee n'okpuru);
- N'otu aka ahụ na ndekọ, anyị na-eme nhọrọ kwa oge, na-eṅomi arịrịọ nke onye ọrụ na-eji chaatị arụ ọrụ. Ka anyị wee ghara ime ka ihe dị mgbagwoju anya, anyị ahọpụtara data maka metrics 10 (nke ahụ bụ kpọmkwem ole dị na eserese CPU) maka otu izu.
Anyị na-ebu ibu site na iṅomi omume nke onye ọrụ nlekota anyị, nke na-eziga ụkpụrụ na metric ọ bụla otu ugboro n'ime sekọnd 15 ọ bụla. N'otu oge ahụ, anyị nwere mmasị n'ịgbanwe:
- ngụkọta ọnụọgụ metric nke edere data n'ime ya;
- etiti oge maka izipu ụkpụrụ na otu metric;
- ogbe nha.
Ihe gbasara nha batch. Ebe ọ bụ na a naghị atụ aro ka ibu ihe fọrọ nke nta ka ọ bụrụ ọdụ data nyocha anyị niile nwere otu ntinye, anyị ga-achọ relay nke na-anakọta metrics na-abata wee kekọta ha n'ime otu ma degara ha na nchekwa data dị ka ntinye ogbe.
Ọzọkwa, iji ghọta nke ọma ka esi akọwa data enwetara, ka anyị were ya na ọ bụghị naanị na anyị na-ezipụ ụyọkọ metrik, mana a na-ahazi metrics na sava - 125 metrics kwa nkesa. N'ebe a, ihe nkesa bụ naanị ihe mebere - iji ghọta na, dịka ọmụmaatụ, metrics 10000 kwekọrọ na ihe dị ka sava 80.
Na ebe a, na-eburu ihe a niile n'uche, anyị 6 nchekwa data ide ibu ụdịdị:

Enwere isi ihe abụọ ebe a. Nke mbụ, maka Cassandra, nha batch ndị a tụgharịrị buru ibu, n'ebe ahụ, anyị na-eji ụkpụrụ nke 50 ma ọ bụ 100. Na nke abụọ, ebe ọ bụ na Prometheus na-arụ ọrụ nke ọma na ọnọdụ ịdọrọ, i.e. ya onwe ya na-aga na-anakọta data sitere na isi mmalite metrics (na ọbụna pushgateway, n'agbanyeghị aha ahụ, anaghị agbanwe ọnọdụ ahụ n'ụzọ bụ isi), etinyere ibu ndị kwekọrọ na iji ngwakọta nke nhazi static.
Nsonaazụ ule bụ ndị a:



Gịnị kwesịrị ịrịba amaIhe nlere ngwa ngwa dị oke egwu sitere na Prometheus, ihe nlele na-adịghị ngwa ngwa sitere na Cassandra, ihe nlele na-adịghị anabata ngwa ngwa sitere na InfluxDB; N'ihe banyere ọsọ ndekọ, ClickHouse meriri onye ọ bụla, na Prometheus adịghị etinye aka na asọmpi ahụ, n'ihi na ọ na-eme ntinye onwe ya ma anyị anaghị atụ ihe ọ bụla.
N'ihi ya,: ClickHouse na InfluxDB rụrụ ọrụ kacha mma, mana enwere ike wuo ụyọkọ sitere na Influx na ndabere nke ụdị Enterprise, nke na-efu ego, ebe ClickHouse na-efu ihe ọ bụla ma mee ya na Russia. Ọ bụ ihe ezi uche dị na ya na na USA nhọrọ nwere ike ịkwado influxDB, na obodo anyị ọ na-akwado ClickHouse.
isi: www.habr.com
