Как тСствамС няколко Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ

Как тСствамС няколко Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ

ΠŸΡ€Π΅Π· послСднитС Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π±Π°Π·ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ (Time-series databases) сС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π°Ρ…Π° ΠΎΡ‚ Π΅ΠΊΠ·ΠΎΡ‚ΠΈΠΊΠ° (ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΠΌΠ° само Π² спСцифични систСми Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈΠ»ΠΈ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ с Big Data) Π² "стока Π½Π° масовия ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»". На тСриторията Π½Π° Русия трябва Π΄Π° Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€ΠΈΠΌ Π·Π° Ρ‚ΠΎΠ²Π° Π½Π° ЯндСкс ΠΈ ClickHouse. ΠŸΡ€Π΅Π΄ΠΈ Ρ‚ΠΎΠ²Π°, Π°ΠΊΠΎ Π²ΠΈ бСшС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ голямо количСство Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ, Ρ‚Ρ€ΡΠ±Π²Π°ΡˆΠ΅ ΠΈΠ»ΠΈ Π΄Π° сС ΠΏΡ€ΠΈΠΌΠΈΡ€ΠΈΡ‚Π΅ с нСобходимостта Π΄Π° Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅ монструозСн Hadoop стСк ΠΈ Π΄Π° Π³ΠΎ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚Π΅, ΠΈΠ»ΠΈ Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈΡ‚Π΅ с ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΈ, спСцифични Π·Π° всяка систСма.

МоТС Π΄Π° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°, Ρ‡Π΅ ΠΏΡ€Π΅Π· 2019-Ρ‚Π° Π³ΠΎΠ΄ΠΈΠ½Π° статията относно ΠΈΠ·Π±ΠΎΡ€Π° Π½Π° TSDB Ρ‰Π΅ сС ΡΡŠΡΡ‚ΠΎΠΈ само ΠΎΡ‚ Π΅Π΄Π½ΠΎ ΠΈΠ·Ρ€Π΅Ρ‡Π΅Π½ΠΈΠ΅: "просто ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ ClickHouse". Но... ΠΈΠΌΠ° Π΄Π΅Ρ‚Π°ΠΉΠ»ΠΈ.

Наистина, ClickHouse Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ сС Ρ€Π°Π·Π²ΠΈΠ²Π°, Π±Π°Π·Π°Ρ‚Π° ΠΎΡ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ нараства, Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π°ΠΊΡ‚ΠΈΠ²Π½Π°, Π½ΠΎ Π½Π΅ станахмС Π»ΠΈ Π·Π°Π»ΠΎΠΆΠ½ΠΈΡ†ΠΈ Π½Π° публичния успСх Π½Π° ClickHouse, ΠΊΠΎΠΉΡ‚ΠΎ засСнчи Π΄Ρ€ΡƒΠ³ΠΈ, възмоТно ΠΏΠΎ-Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΈ/Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ?

Π’ Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ Π½Π° ΠΌΠΈΠ½Π°Π»Π°Ρ‚Π° Π³ΠΎΠ΄ΠΈΠ½Π° сС Π·Π°Π΅Ρ…ΠΌΠ΅ с ΠΏΡ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° собствСната си систСма Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, ΠΏΡ€ΠΈ ΠΊΠΎΠ΅Ρ‚ΠΎ възникна Π²ΡŠΠΏΡ€ΠΎΡΡŠΡ‚ Π·Π° ΠΈΠ·Π±ΠΎΡ€Π° Π½Π° подходяща Π±Π°Π·Π° Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ. Π—Π° историята Π½Π° Ρ‚ΠΎΠ·ΠΈ ΠΈΠ·Π±ΠΎΡ€ искам Π΄Π° Ρ€Π°Π·ΠΊΠ°ΠΆΠ° Ρ‚ΡƒΠΊ.

Π€ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° Π·Π°Π΄Π°Ρ‡Π°Ρ‚Π°

ΠŸΡ€Π΅Π΄ΠΈ всичко – Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ прСдисловиС. Π—Π°Ρ‰ΠΎ ΠΈΠ·ΠΎΠ±Ρ‰ΠΎ Π½ΠΈ Π΅ собствСна систСма Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈ ΠΊΠ°ΠΊ я устроихмС?

Π—Π°ΠΏΠΎΡ‡Π½Π°Ρ…ΠΌΠ΅ Π΄Π° прСдоставямС услуги ΠΏΠΎ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° ΠΏΡ€Π΅Π· 2008 Π³ΠΎΠ΄ΠΈΠ½Π°, Π° Π΄ΠΎ 2010-Ρ‚Π° стана ясно, Ρ‡Π΅ Π°Π³Ρ€Π΅Π³ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ Π·Π° процСситС, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‚Π΅ΠΊΠ°Ρ‚ Π² клиСнтската инфраструктура, с Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ‚Π°, ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈ ΠΏΠΎ ΠΎΠ½ΠΎΠ²Π° Π²Ρ€Π΅ΠΌΠ΅, стана слоТно (Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π·Π°, прости ΠΌΠΈ, Cacti, Zabbix ΠΈ Π·Π°Ρ€ΠΎΠ΄ΠΈΡˆΠ½ΠΈΡ Graphite).

ΠžΡΠ½ΠΎΠ²Π½ΠΈΡ‚Π΅ Π½ΠΈ изисквания бяха:

  • ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° (ΠΏΠΎ ΠΎΠ½ΠΎΠ²Π° Π²Ρ€Π΅ΠΌΠ΅ – Π½Π° дСсСтки, Π° Π² пСрспСктива – Π½Π° стотици) ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ Π² Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° Π΅Π΄Π½Π° систСма ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π½Π° Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° систСма Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° увСдомлСнията;
  • Π³ΡŠΠ²ΠΊΠ°Π²ΠΎΡΡ‚ Π² ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° систСмата Π·Π° увСдомлСния (Сскалация Π½Π° увСдомлСния ΠΌΠ΅ΠΆΠ΄Ρƒ Π΄Π΅ΠΆΡƒΡ€Π½ΠΈ, ΠΎΡ‚Ρ‡ΠΈΡ‚Π°Π½Π΅ Π½Π° Π³Ρ€Π°Ρ„ΠΈΡ†ΠΈ, Π±Π°Π·Π° знания);
  • Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π΄ΡŠΠ»Π±ΠΎΡ‡ΠΈΠ½Π½ΠΎ Π΄Π΅Ρ‚Π°ΠΉΠ»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° Π³Ρ€Π°Ρ„ΠΈΡ†ΠΈΡ‚Π΅ (Zabbix ΠΏΠΎ ΠΎΠ½ΠΎΠ²Π° Π²Ρ€Π΅ΠΌΠ΅ Ρ€ΠΈΡΡƒΠ²Π°ΡˆΠ΅ Π³Ρ€Π°Ρ„ΠΈΡ†ΠΈ ΠΊΠ°Ρ‚ΠΎ изобраТСния);
  • Π΄ΡŠΠ»Π³ΠΎΡΡ€ΠΎΡ‡Π½ΠΎ ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° голямо количСство Π΄Π°Π½Π½ΠΈ (Π³ΠΎΠ΄ΠΈΠ½Π° ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅) ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π±ΡŠΡ€Π· Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ тях.

Π’ Ρ‚Π°Π·ΠΈ статия Π½ΠΈ интСрСсува послСдният ΠΏΡƒΠ½ΠΊΡ‚.

Π“ΠΎΠ²ΠΎΡ€Π΅ΠΉΠΊΠΈ Π·Π° Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅, изискванията бяха слСднитС:

  • систСмата трябва Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ Π±ΡŠΡ€Π·ΠΎ;
  • ΠΆΠ΅Π»Π°Ρ‚Π΅Π»Π½ΠΎ Π΅ систСмата Π΄Π° ΠΈΠΌΠ° SQL интСрфСйс;
  • систСмата трябва Π΄Π° Π΅ стабилна ΠΈ Π΄Π° ΠΈΠΌΠ° Π°ΠΊΡ‚ΠΈΠ²Π½Π° потрСбитСлска Π±Π°Π·Π° ΠΈ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° (вСднъТ срСщнахмС нСобходимостта Π΄Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°ΠΌΠ΅ Ρ‚Π°ΠΊΠΈΠ²Π° систСми ΠΊΠ°Ρ‚ΠΎ MemcacheDB, която Π±Π΅ спряна ΠΎΡ‚ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅, ΠΈΠ»ΠΈ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎΡ‚ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ MooseFS, Ρ‡ΠΈΠΉΡ‚ΠΎ Π±ΡŠΠ³Ρ‚Ρ€Π°ΠΊΠ΅Ρ€ сС водСшС Π½Π° китайски: Π½Π΅ искахмС Π΄Π° ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΠΌ Ρ‚Π°Π·ΠΈ история с нашия ΠΏΡ€ΠΎΠ΅ΠΊΡ‚);
  • ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΈΠ΅ с CAP Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ°Ρ‚Π°: ΠšΠΎΠ½ΡΠΈΡΡ‚Π΅Π½Ρ‚Π½ΠΎΡΡ‚ (Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ) β€” Π΄Π°Π½Π½ΠΈΡ‚Π΅ трябва Π΄Π° са Π°ΠΊΡ‚ΡƒΠ°Π»Π½ΠΈ, Π½Π΅ искамС систСмата Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° извСстията Π΄Π° Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π° Π½ΠΎΠ²ΠΈ Π΄Π°Π½Π½ΠΈ ΠΈ Π΄Π° сигнализира с Π°Π»Π°Ρ€ΠΌΠΈ Π·Π° липса Π½Π° Π΄Π°Π½Π½ΠΈ във всички ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ; Π Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π½Π° устойчивост (Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ) β€” Π½Π΅ искамС Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ систСма със Split Brain; Наличност (Π½Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ, Π² случай Π½Π° Π°ΠΊΡ‚ΠΈΠ²Π½Π° Ρ€Π΅ΠΏΠ»ΠΈΠΊΠ°) β€” ΠΌΠΎΠΆΠ΅ΠΌ сами Π΄Π° ΠΏΡ€Π΅Π²ΠΊΠ»ΡŽΡ‡ΠΈΠΌ Π½Π° Ρ€Π΅Π·Π΅Ρ€Π²Π½Π° систСма Π² случай Π½Π° ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚, Ρ‡Ρ€Π΅Π· ΠΊΠΎΠ΄.

Π‘Ρ‚Ρ€Π°Π½Π½ΠΎ, Π½ΠΎ ΠΏΠΎ Ρ‚ΠΎΠ²Π° Π²Ρ€Π΅ΠΌΠ΅ ΠΈΠ΄Π΅Π°Π»Π½ΠΎΡ‚ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π° нас Π±Π΅ MySQL. ΠΠ°ΡˆΠ°Ρ‚Π° структура Π½Π° Π΄Π°Π½Π½ΠΈ бСшС ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ проста: id Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π°, id Π½Π° ΠΌΠ΅Ρ‚ΡŠΡ€Π°, timestamp ΠΈ стойност; Π±ΡŠΡ€Π·ΠΎΡ‚ΠΎ ΠΈΠ·Π²Π»ΠΈΡ‡Π°Π½Π΅ Π½Π° Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ Π΄Π°Π½Π½ΠΈ сС ΠΎΡΠΈΠ³ΡƒΡ€ΡΠ²Π°ΡˆΠ΅ ΠΎΡ‚ голям Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° буфСриращия ΠΏΡƒΠ», Π° ΠΈΠ·Π²Π»ΠΈΡ‡Π°Π½Π΅Ρ‚ΠΎ Π½Π° историчСски Π΄Π°Π½Π½ΠΈ β€” ΠΎΡ‚ SSD.

Как тСствамС няколко Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ

По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ постигнахмС ΠΈΠ·Π²Π»ΠΈΡ‡Π°Π½Π΅ Π½Π° Π½ΠΎΠ²ΠΈ двусСдмични Π΄Π°Π½Π½ΠΈ с Π΄Π΅Ρ‚Π°ΠΉΠ»ΠΈ Π·Π° сСкунда Π·Π° 200 мс Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π½Π° пълно Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΠΈ ТивяхмС Π² Ρ‚Π°Π·ΠΈ систСма доста дълго.

ΠœΠ΅ΠΆΠ΄ΡƒΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ минавашС ΠΈ количСството Π΄Π°Π½Π½ΠΈ Ρ€Π°ΡΡ‚Π΅ΡˆΠ΅. Π”ΠΎ 2016 Π³ΠΎΠ΄ΠΈΠ½Π° ΠΎΠ±Π΅ΠΌΡŠΡ‚ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ достигна дСсСтки Ρ‚Π΅Ρ€Π°Π±Π°ΠΉΡ‚ΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ²Π°ΡˆΠ΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΈ Ρ€Π°Π·Ρ…ΠΎΠ΄ΠΈ Π² условията Π½Π° Π½Π°Π΅ΠΌΠ°Π½ΠΈ SSD Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°.

Π”ΠΎ Ρ‚ΠΎΠ·ΠΈ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ сС разпространяваха ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΎΠ²ΠΈΡ‚Π΅ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Π·Π° ΠΊΠΎΠΈΡ‚ΠΎ Π·Π°ΠΏΠΎΡ‡Π½Π°Ρ…ΠΌΠ΅ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Π΄Π° мислим: Π² ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΎΠ²ΠΈΡ‚Π΅ Π‘Π” Π΄Π°Π½Π½ΠΈΡ‚Π΅ сС ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Ρ€Π°Π·Π±Π΅Ρ€Π΅, ΠΏΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΈ, ΠΈ Π°ΠΊΠΎ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌ Π½Π° Π½Π°ΡˆΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ, Π΅ лСсно Π΄Π° сС Π²ΠΈΠ΄ΠΈ голямо количСство Π΄ΡƒΠ±Π»ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ, Π°ΠΊΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΎΠ²Π° Π‘Π”, ΠΌΠΎΠΆΠ΅Ρ…Π° Π΄Π° сС компрСсират.

Как тСствамС няколко Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ

Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π°, ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π°Ρ‚Π° систСма Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π° компанията ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π°ΡˆΠ΅ Π΄Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€Π° стабилно ΠΈ Π½Π΅ искахмС Π΄Π° СкспСримСнтирамС с ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ Π½Π° Π½Π΅Ρ‰ΠΎ Π΄Ρ€ΡƒΠ³ΠΎ.

ΠŸΡ€Π΅Π· 2017 Π³ΠΎΠ΄ΠΈΠ½Π° Π½Π° конфСрСнцията Percona Live Π² Π‘Π°Π½ Π₯осС, вСроятно Π·Π° ΠΏΡ€ΡŠΠ² ΠΏΡŠΡ‚, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° Clickhouse заявиха Π·Π° сСбС си. На ΠΏΡ€ΡŠΠ² ΠΏΠΎΠ³Π»Π΅Π΄ систСмата изглСТдашС Π³ΠΎΡ‚ΠΎΠ²Π° Π·Π° производство (Π² ΠΊΡ€Π°ΠΉΠ½Π° смСтка, ЯндСкс.ΠœΠ΅Ρ‚Ρ€ΠΈΠΊΠ° Π΅ сСриозно производство), ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° бСшС Π±ΡŠΡ€Π·Π° ΠΈ проста, Π°, Π½Π°ΠΉ-Π²Π°ΠΆΠ½ΠΎΡ‚ΠΎ, Сксплоатацията бСшС лСсна. ΠžΡ‚ 2018 Π³ΠΎΠ΄ΠΈΠ½Π° Π·Π°ΠΏΠΎΡ‡Π½Π°Ρ…ΠΌΠ΅ процСса Π½Π° ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅. Но Π΄ΠΎ Ρ‚ΠΎΠ³Π°Π²Π° имашС ΠΌΠ½ΠΎΠ³ΠΎ "Π²ΡŠΠ·Ρ€Π°ΡΡ‚Π½ΠΈ" ΠΈ Π΄ΠΎΠΊΠ°Π·Π°Π»ΠΈ сС TSDB систСми, ΠΈ Ρ€Π΅ΡˆΠΈΡ…ΠΌΠ΅ Π΄Π° ΠΎΡ‚Π΄Π΅Π»ΠΈΠΌ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π²Ρ€Π΅ΠΌΠ΅, Π·Π° Π΄Π° сравним Π°Π»Ρ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²ΠΈΡ‚Π΅, Π·Π° Π΄Π° сС ΡƒΠ²Π΅Ρ€ΠΈΠΌ, Ρ‡Π΅ няма Π°Π»Ρ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π½Π° Clickhouse, ΠΊΠΎΠΈΡ‚ΠΎ отговарят Π½Π° Π½Π°ΡˆΠΈΡ‚Π΅ изисквания.

Π’ допълнСниС към Π²Π΅Ρ‡Π΅ посочСнитС изисквания към Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ сС появиха Π½ΠΎΠ²ΠΈ:

  • Π½ΠΎΠ²Π°Ρ‚Π° систСма трябва Π΄Π° осигурява ΠΏΠΎΠ½Π΅ ΡΡŠΡ‰Π°Ρ‚Π° производитСлност ΠΊΠ°Ρ‚ΠΎ MySQL, Π½Π° ΡΡŠΡ‰ΠΎΡ‚ΠΎ количСство Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€;
  • Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ Π½Π° Π½ΠΎΠ²Π°Ρ‚Π° систСма трябва Π΄Π° Π·Π°Π΅ΠΌΠ° Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ място;
  • Π‘Π£Π‘Π”-Ρ‚Π°Ρ‚Π° всС ΠΎΡ‰Π΅ трябва Π΄Π° са лСсни Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅;
  • искахмС ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎ Π΄Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΏΡ€ΠΈ смяна Π½Π° Π‘Π£Π‘Π”.

Кои систСми Π·Π°ΠΏΠΎΡ‡Π½Π°Ρ…ΠΌΠ΅ Π΄Π° Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°ΠΌΠ΅

Apache Hive/Apache Impala
Бтарият ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ Hadoop стСк. По ΡΡŠΡ‰Π΅ΡΡ‚Π²ΠΎ, Ρ‚ΠΎΠ²Π° Π΅ SQL интСрфСйс, построСн Π²ΡŠΡ€Ρ…Ρƒ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² собствСни Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈ Π½Π° HDFS.

ПлюсовС.

  • ΠŸΡ€ΠΈ стабилна Сксплоатация Π΅ ΠΌΠ½ΠΎΠ³ΠΎ лСсно Π΄Π° сС ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€Π°Ρ‚ Π΄Π°Π½Π½ΠΈΡ‚Π΅.
  • Има ΠΊΠΎΠ»ΠΎΠ½ΠΎΡ‡Π½ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ (ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ място).
  • Много Π±ΡŠΡ€Π·ΠΎ изпълнСниС Π½Π° распаралСлСни Π·Π°Π΄Π°Ρ‡ΠΈ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅Ρ‚ΠΎ Π½Π° рСсурси.

ΠΠ΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ†ΠΈ.

  • Π’ΠΎΠ²Π° Π΅ Hadoop ΠΈ сС ΠΏΡ€Π΅Π΄Π»Π°Π³Π° Π² слоТна Сксплоатация. Ако Π½Π΅ смС Π³ΠΎΡ‚ΠΎΠ²ΠΈ Π΄Π° Π²Π·Π΅ΠΌΠ΅ΠΌ Π³ΠΎΡ‚ΠΎΠ²ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π² ΠΎΠ±Π»Π°ΠΊΠ° (Π° Π½Π΅ смС Π³ΠΎΡ‚ΠΎΠ²ΠΈ ΠΏΠΎΡ€Π°Π΄ΠΈ Ρ†Π΅Π½Π°Ρ‚Π°), цСлият стСк Ρ‰Π΅ трябва Π΄Π° сС сглобява ΠΈ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° ΠΎΡ‚ администратори, Π° Π½Π΅ Π½ΠΈ сС иска.
  • Π”Π°Π½Π½ΠΈΡ‚Π΅ сС Π°Π³Ρ€Π΅Π³ΠΈΡ€Π°Π½ΠΈ наистина Π±ΡŠΡ€Π·ΠΎ.

Но:

Как тСствамС няколко Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ

Бкоростта сС постига Ρ‡Ρ€Π΅Π· ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€Π°Π½Π΅ Π½Π° броя изчислитСлни ΡΡŠΡ€Π²ΡŠΡ€ΠΈ. По-просто ΠΊΠ°Π·Π°Π½ΠΎ, Π°ΠΊΠΎ смС голяма компания, Π·Π°Π½ΠΈΠΌΠ°Π²Π°ΠΌΠ΅ сС с Π°Π½Π°Π»ΠΈΠ·ΠΈ ΠΈ Π·Π° бизнСса Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ Π²Π°ΠΆΠ½ΠΎ Π΄Π° Π°Π³Ρ€Π΅Π³ΠΈΡ€Π° информацията максимално Π±ΡŠΡ€Π·ΠΎ (Π΄ΠΎΡ€ΠΈ Π½Π° Ρ†Π΅Π½Π°Ρ‚Π° Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ изчислитСлни рСсурси) β€” Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Π½Π°ΡˆΠΈΡΡ‚ ΠΈΠ·Π±ΠΎΡ€. Но Π½ΠΈΠ΅ Π½Π΅ бяхмС Π³ΠΎΡ‚ΠΎΠ²ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ Π΄Π° ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠΌ Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π° Π·Π° скоростта Π½Π° изпълнСниС Π½Π° Π·Π°Π΄Π°Ρ‡ΠΈΡ‚Π΅.

Druid/Pinot

Π’Π΅Ρ‡Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π·Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ TSDB, Π½ΠΎ ΠΎΡ‚Π½ΠΎΠ²ΠΎ β€” Hadoop стСк.

Има ΠΎΡ‚Π»ΠΈΡ‡Π½Π° статия, сравняваща ΠΏΠ»ΡŽΡΠΎΠ²Π΅Ρ‚Π΅ ΠΈ минуситС Π½Π° Druid ΠΈ Pinot Π² сравнСниС с ClickHouse .

Ако Π² няколко Π΄ΡƒΠΌΠΈ: Druid/Pinot ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°Ρ‚ ΠΏΠΎ-Π΄ΠΎΠ±Ρ€Π΅ ΠΎΡ‚ Clickhouse Π² случаитС, ΠΊΠΎΠ³Π°Ρ‚ΠΎ:

  • Π˜ΠΌΠ°Ρ‚Π΅ Ρ…Π΅Ρ‚Π΅Ρ€ΠΎΠ³Π΅Π½Π΅Π½ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ (Π² нашия случай записвамС само Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ ΠΎΡ‚ ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΈ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΈ Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚ Ρ‚ΠΎΠ²Π° Π΅ Π΅Π΄Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°. Но ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΈΠΌΠ° ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ случаи: Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ ΠΎΡ‚ ΠΎΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½Π΅, икономичСски Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ ΠΈ Ρ‚.Π½. β€” всСки със своя структура, която Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° сС Π°Π³Ρ€Π΅Π³ΠΈΡ€Π° ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°).
  • Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π°, Ρ‚Π΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ са ΠΌΠ½ΠΎΠ³ΠΎ.
  • Π’Π°Π±Π»ΠΈΡ†ΠΈΡ‚Π΅ ΠΈ Π΄Π°Π½Π½ΠΈΡ‚Π΅ с Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ сС появяват ΠΈ ΠΈΠ·Ρ‡Π΅Π·Π²Π°Ρ‚ (тоСст, някакъв Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ Π΅ дошъл, Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ Π΅ ΠΈ Π΅ ΠΈΠ·Ρ‚Ρ€ΠΈΡ‚).
  • Няма ясни ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ, ΠΏΠΎ ΠΊΠΎΠΈΡ‚ΠΎ Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€Π°Π½ΠΈ.

Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΈ случаи ClickHouse ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΏΠΎ-Π΄ΠΎΠ±Ρ€ΠΈ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ, Π° Ρ‚ΠΎΠ²Π° Π΅ Π½Π°ΡˆΠΈΡΡ‚ случай.

ClickHouse

  • SQL-ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½.
  • ЛСсСн Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅.
  • Π₯ΠΎΡ€Π°Ρ‚Π° ΠΊΠ°Π·Π²Π°Ρ‚, Ρ‡Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ.

Попада Π² краткия списък Π·Π° тСстванС.

InfluxDB

ЧуТдСстранна Π°Π»Ρ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° Π½Π° ClickHouse. Π‘Ρ€Π΅Π΄ Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ†ΠΈΡ‚Π΅: High Availability Π΅ Π½Π°Π»ΠΈΡ‡Π½Π° само Π² Ρ‚ΡŠΡ€Π³ΠΎΠ²ΡΠΊΠ°Ρ‚Π° вСрсия, Π½ΠΎ трябва Π΄Π° сС сравни.

Попада Π² краткия списък Π·Π° тСстванС.

Cassandra

ΠžΡ‚ Π΅Π΄Π½Π° страна, Π·Π½Π°Π΅ΠΌ, Ρ‡Π΅ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‡Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ ΠΎΡ‚ систСми Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, SignalFX ΠΈΠ»ΠΈ OkMeter. Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π°, ΠΈΠΌΠ° спСцифика.

Cassandra Π½Π΅ Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΎΡ‡Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π² обичайния смисъл Π½Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°. ИзглСТда ΠΏΠΎ-скоро ΠΊΠ°Ρ‚ΠΎ Ρ€Π΅Π΄ΠΎΠ²Π°, Π½ΠΎ във всСки Ρ€Π΅Π΄ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌΠ° Ρ€Π°Π·Π»ΠΈΡ‡Π΅Π½ Π±Ρ€ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ улСснява ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΎΡ‡Π½ΠΎΡ‚ΠΎ прСдставянС. Π’ Ρ‚ΠΎΠ·ΠΈ смисъл Π΅ ясно, Ρ‡Π΅ ΠΏΡ€ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ 2 ΠΌΠΈΠ»ΠΈΠ°Ρ€Π΄Π° ΠΊΠΎΠ»ΠΎΠ½ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ Π΄Π°Π½Π½ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎ Π² ΠΊΠΎΠ»ΠΎΠ½ΠΈΡ‚Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡΡŠΡ‰ΠΈΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ). НапримСр, Π² MySQL ΠΈΠΌΠ° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ 4096 ΠΊΠΎΠ»ΠΎΠ½ΠΈ ΠΈ лСсно ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° сС ΡΠ±Π»ΡŠΡΠΊΠ°Ρ‚Π΅ с Π³Ρ€Π΅ΡˆΠΊΠ° с ΠΊΠΎΠ΄ 1117, Π°ΠΊΠΎ ΠΎΠΏΠΈΡ‚Π°Ρ‚Π΅ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΡΡŠΡ‰ΠΎΡ‚ΠΎ.

Cassandra Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€Π°Π½ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΎΠ±Π΅ΠΌΠΈ Π΄Π°Π½Π½ΠΈ Π² Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° систСма Π±Π΅Π· Π³Π»Π°Π²Π΅Π½ възСл, ΠΈ Π² спомСнатата CAP-Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ°, Cassandra Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π·Π° AP, Ρ‚.Π΅. Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎΡΡ‚Ρ‚Π° Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΠΈ устойчивостта Π½Π° раздСлянС Π½Π° ΠΏΠ°Ρ€Ρ‚ΠΈΡ†ΠΈΠΈ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ, Ρ‚ΠΎΠ·ΠΈ инструмСнт ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΎΡ‚Π»ΠΈΡ‡Π΅Π½ ΠΈΠ·Π±ΠΎΡ€, Π°ΠΊΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ само Π΄Π° записвамС Π² Π±Π°Π·Π°Ρ‚Π° ΠΈ рядко Π΄Π° Ρ‡Π΅Ρ‚Π΅ΠΌ ΠΎΡ‚ нСя. Π Π°Π·ΡƒΠΌΠ½ΠΎ Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Cassandra ΠΊΠ°Ρ‚ΠΎ β€žΡΡ‚ΡƒΠ΄Π΅Π½β€œ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅, Ρ‚.Π΅. ΠΊΠ°Ρ‚ΠΎ Π΄ΡŠΠ»Π³ΠΎΡΡ€ΠΎΡ‡Π½ΠΎ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ място Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ масиви историчСски Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ рядко сС изискват, Π½ΠΎ ΠΏΡ€ΠΈ нСобходимост ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈ. ВсС ΠΏΠ°ΠΊ, Π·Π° ΠΏΡŠΠ»Π½ΠΎΡ‚Π° Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Π°Ρ‚Π°, Ρ‰Π΅ я тСствамС. Но, ΠΊΠ°ΠΊΡ‚ΠΎ Π²Π΅Ρ‡Π΅ спомСнах, нямам ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Π΄Π° прСнаписвам ΠΊΠΎΠ΄Π° Π·Π° ΠΈΠ·Π±Ρ€Π°Π½ΠΎΡ‚ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Π·Π°Ρ‚ΠΎΠ²Π° Ρ‰Π΅ я тСствамС с някои ограничСния β€” Π±Π΅Π· Π°Π΄Π°ΠΏΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° структурата Π½Π° Π±Π°Π·Π°Ρ‚Π° към спСцификата Π½Π° Cassandra.

Prometheus

А, ΠΈ ΠΎΡ‚ чисто Π»ΡŽΠ±ΠΎΠΏΠΈΡ‚ΡΡ‚Π²ΠΎ Ρ€Π΅ΡˆΠΈΡ…ΠΌΠ΅ Π΄Π° тСствамС производитСлността Π½Π° Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ Prometheus β€” просто Π·Π° Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ, Π΄Π°Π»ΠΈ смС ΠΏΠΎ-Π±ΡŠΡ€Π·ΠΈ ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ‚Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΏΠΎ-Π±Π°Π²Π½ΠΈ ΠΈ Π² ΠΊΠ°ΠΊΠ²Π° стСпСн.

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ ΠΈ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ ΠΎΡ‚ тСстванСто

Π’Π°ΠΊΠ°, Π½ΠΈΠ΅ тСствамС 5 Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π² слСднитС 6 ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ: ClickHouse (1 възСл), ClickHouse (Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° Π½Π° 3 възСла), InfluxDB, MySQL 8, Cassandra (3 възСла) ΠΈ Prometheus. ΠŸΠ»Π°Π½ΡŠΡ‚ Π·Π° тСстванС Π΅ слСдният:

  1. Π²Π»ΠΈΠ·Π°Ρ‰ΠΈ историчСски Π΄Π°Π½Π½ΠΈ Π·Π° сСдмица (840 ΠΌΠ»Π½. стойности Π½Π° Π΄Π΅Π½; 208 хиляди ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ);
  2. Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π·Π° запис (Ρ€Π°Π·Π³Π»Π΅Π΄Π°Ρ…ΠΌΠ΅ 6 Ρ€Π΅ΠΆΠΈΠΌΠ° Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅, Π²ΠΈΠΆΡ‚Π΅ ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ);
  3. ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎ с записванСто ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π½ΠΎ ΠΏΡ€Π°Π²ΠΈΠΌ заявки, Π΅ΠΉΠΌΡƒΠ»ΠΈΡ€Π°ΠΉΠΊΠΈ потрСбитСлски запитвания, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ с Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ. Π—Π° Π΄Π° Π½Π΅ услоТнявамС Ρ‚Π²ΡŠΡ€Π΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ, ΠΈΠ·Π±Ρ€Π°Ρ…ΠΌΠ΅ Π΄Π°Π½Π½ΠΈ ΠΏΠΎ 10 ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ (Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° са Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ° CPU) Π·Π° сСдмица.

НатоварвамС, Π΅ΠΉΠΌΡƒΠ»ΠΈΡ€Π°ΠΉΠΊΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π°Π³Π΅Π½Ρ‚Π° Π½Π° нашия ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³, ΠΊΠΎΠΉΡ‚ΠΎ ΠΈΠ·ΠΏΡ€Π°Ρ‰Π° стойности Π½Π° всяка ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ° Π½Π° всСки 15 сСкунди. ΠŸΡ€ΠΈ Ρ‚ΠΎΠ²Π° нас Π½ΠΈ интСрСсува Π΄Π° Π²Π°Ρ€ΠΈΡ€Π°ΠΌΠ΅:

  • общия Π±Ρ€ΠΎΠΉ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ, Π² ΠΊΠΎΠΈΡ‚ΠΎ сС записват Π΄Π°Π½Π½ΠΈ;
  • ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° Π½Π° ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Π½Π΅ Π½Π° стойности Π² Π΅Π΄Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°;
  • Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΏΠ°Ρ€Ρ‚ΠΈΠ΄Π°Ρ‚Π°.

Π—Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΏΠ°Ρ€Ρ‚ΠΈΠ΄Π°Ρ‚Π°. Въй ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎΡ‡Ρ‚ΠΈ всички наши тСстови Π±Π°Π·ΠΈ Π½Π΅ сС ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π° Π΄Π° сС Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Ρ‚ с Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΠΈ инсСрти, Ρ‰Π΅ Π½ΠΈ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ Ρ€Π΅Π»Π΅ΠΉ, ΠΊΠΎΠΉΡ‚ΠΎ ΡΡŠΠ±ΠΈΡ€Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΡ‚Π΅ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΈ Π³ΠΈ Π³Ρ€ΡƒΠΏΠΈΡ€Π° Π² ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΈ Π³ΠΈ записва Π² Π±Π°Π·Π°Ρ‚Π° с ΠΏΠ°ΠΊΠ΅Ρ‚Π΅Π½ инсСртиранС.

Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ°, Π·Π° Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΏΠΎ-Π΄ΠΎΠ±Ρ€Π΅ ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€Π°ΠΌΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ, Π΄Π° ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Π΅ Π½Π΅ просто ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°ΠΌΠ΅ ΠΊΡƒΠΏ ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ, Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈΡ‚Π΅ са ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ Π² ΡΡŠΡ€Π²ΡŠΡ€ΠΈ β€” ΠΏΠΎ 125 ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π½Π° ΡΡŠΡ€Π²ΡŠΡ€. Π’ΡƒΠΊ ΡΡŠΡ€Π²ΡŠΡ€ΡŠΡ‚ Π΅ просто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½Π° ΡΡŠΡ‰Π½ΠΎΡΡ‚ β€” просто Π·Π° Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ, Ρ‡Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 10 000 ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ отговарят Π½Π° ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ 80 ΡΡŠΡ€Π²ΡŠΡ€Π°.

И Ρ‚Π°ΠΊΠ°, с ΠΎΠ³Π»Π΅Π΄ Π½Π° всичко Ρ‚ΠΎΠ²Π°, Π½Π°ΡˆΠΈΡ‚Π΅ 6 Ρ€Π΅ΠΆΠΈΠΌΠ° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π½Π° Π±Π°Π·Π° Π½Π° запис:

Как тСствамС няколко Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ

Π’ΡƒΠΊ ΠΈΠΌΠ° Π΄Π²Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°. ΠŸΡŠΡ€Π²ΠΎ, Π·Π° Cassandra Ρ‚Π°ΠΊΡŠΠ² Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° ΠΏΠ°Ρ€Ρ‚ΠΈΠ΄Π°Ρ‚Π° сС ΠΎΠΊΠ°Π·Π° Ρ‚Π²ΡŠΡ€Π΄Π΅ голям, Ρ‚Π°ΠΌ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ…ΠΌΠ΅ стойности ΠΎΡ‚ 50 ΠΈΠ»ΠΈ 100. Π’Ρ‚ΠΎΡ€ΠΎ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Prometheus Ρ€Π°Π±ΠΎΡ‚ΠΈ строго Π² Ρ€Π΅ΠΆΠΈΠΌ Π½Π° pull, Ρ‚.Π΅. сам ΠΈΠ·Π²Π»ΠΈΡ‡Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ (ΠΈ Π΄ΠΎΡ€ΠΈ pushgateway, Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ ΠΈΠΌΠ΅Ρ‚ΠΎ си, Π½Π΅ промСня ситуацията), ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΈΡ‚Π΅ натоварвания бяха Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° комбинация ΠΎΡ‚ статични ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

Π Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ ΠΎΡ‚ тСстовСтС са слСднитС:

Как тСствамС няколко Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ

Как тСствамС няколко Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ

Как тСствамС няколко Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΈΡ†ΠΈ

Какво заслуТава Π΄Π° сС ΠΎΡ‚Π±Π΅Π»Π΅ΠΆΠΈ: фантастично Π±ΡŠΡ€Π·ΠΈ заявки ΠΎΡ‚ Prometheus, уТасно Π±Π°Π²Π½ΠΈ заявки ΠΎΡ‚ Cassandra, Π½Π΅ΠΏΡ€ΠΈΠ΅ΠΌΠ»ΠΈΠ²ΠΎ Π±Π°Π²Π½ΠΈ заявки ΠΎΡ‚ InfluxDB; ΠΏΠΎ скорост Π½Π° запис ClickHouse спСчСли всички, Π° Prometheus Π½Π΅ участва, Π·Π°Ρ‰ΠΎΡ‚ΠΎ ΠΏΡ€Π°Π²ΠΈ вставки сам Π²ΡŠΡ‚Ρ€Π΅ Π² сСбС си ΠΈ Π½ΠΈΠ΅ Π½Π΅ ΠΈΠ·ΠΌΠ΅Ρ€Π²Π°ΠΌΠ΅ Π½ΠΈΡ‰ΠΎ.

Π’ ΠΊΡ€Π°ΠΉΠ½Π° смСтка: Π½Π°ΠΉ-Π΄ΠΎΠ±Ρ€Π΅ сС прСдставиха ClickHouse ΠΈ InfluxDB, Π½ΠΎ ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ ΠΎΡ‚ Influx ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС построСн само Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° Enterprise вСрсия, която струва ΠΏΠ°Ρ€ΠΈ, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ ClickHouse Π΅ Π±Π΅Π·ΠΏΠ»Π°Ρ‚Π΅Π½ ΠΈ Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½ Π² Русия. Π›ΠΎΠ³ΠΈΡ‡Π½ΠΎ Π΅, Ρ‡Π΅ Π² БАЩ ΠΈΠ·Π±ΠΎΡ€ΡŠΡ‚ Π΅ вСроятно Π² ΠΏΠΎΠ»Π·Π° Π½Π° InfluxDB, Π° Ρƒ нас β€” Π² ΠΏΠΎΠ»Π·Π° Π½Π° ClickHouse.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster