TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

VictoriaMetrics, TimescaleDB ΠΈ InfluxDB бяха сравнСни Π² ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½Π° статия Π²ΡŠΡ€Ρ…Ρƒ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ с ΠΌΠΈΠ»ΠΈΠ°Ρ€Π΄ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈ към 40K ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии.

ΠŸΡ€Π΅Π΄ΠΈ няколко Π³ΠΎΠ΄ΠΈΠ½ΠΈ бСшС Π΅Ρ€Π°Ρ‚Π° Π½Π° Zabbix. ВсСки Π³ΠΎΠ» ΡΡŠΡ€Π²ΡŠΡ€ имашС Π½Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ няколко показатСля - ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° процСсора, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° RAM, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° диск ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΌΡ€Π΅ΠΆΠ°. По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈΡ‚Π΅ ΠΎΡ‚ хиляди ΡΡŠΡ€Π²ΡŠΡ€ΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΏΠΎΠ±Π΅Ρ€Π°Ρ‚ Π² 40 хиляди ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии, Π° Zabbix ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° MySQL ΠΊΠ°Ρ‚ΠΎ Π±Π΅ΠΊΠ΅Π½Π΄ Π·Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии πŸ™‚

Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π΅Π΄ΠΈΠ½ node_exporter с ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ прСдоставя Π½Π°Π΄ 500 показатСля Π½Π° срСдСн хост. Има ΠΌΠ½ΠΎΠ³ΠΎ износитСли Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΡƒΠ΅Π± ΡΡŠΡ€Π²ΡŠΡ€ΠΈ, Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½ΠΈ систСми ΠΈ Ρ‚.Π½. Всички прСдоставят ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ. всичко всС ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅ прилоТСния Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‚ Π΄Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΏΡ€ΠΈΠ·Π½Π°Ρ†ΠΈ Π²ΡŠΡ€Ρ…Ρƒ сСбС си. Има Kubernetes с ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ΠΈ ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Ρ€Π°Π·ΠΊΡ€ΠΈΠ²Π°Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ. Π’ΠΎΠ²Π° ΠΊΠ°Ρ€Π° ΡΡŠΡ€Π²ΡŠΡ€ΠΈΡ‚Π΅ Π΄Π° ΠΈΠ·Π»Π°Π³Π°Ρ‚ хиляди ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π½Π° хост. Π’Π°ΠΊΠ° Ρ‡Π΅ ΡƒΠ½ΠΈΠΊΠ°Π»Π½Π°Ρ‚Π° Π²Ρ€Π΅ΠΌΠ΅Π²Π° сСрия ΠΎΡ‚ 40K Π²Π΅Ρ‡Π΅ Π½Π΅ Π΅ с висока мощност. Π’ΠΎΠ²Π° сС ΠΏΡ€Π΅Π²Ρ€ΡŠΡ‰Π° Π² мСйнстрийм, ΠΊΠΎΠ΅Ρ‚ΠΎ Π±ΠΈ трябвало лСсно Π΄Π° сС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° ΠΎΡ‚ всСки ΠΌΠΎΠ΄Π΅Ρ€Π΅Π½ TSDB Π½Π° Π΅Π΄ΠΈΠ½ ΡΡŠΡ€Π²ΡŠΡ€.

Какво прСдставлява голям Π±Ρ€ΠΎΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ Ρ€Π΅Π΄ΠΎΠ²Π΅ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°? ВСроятно 400K ΠΈΠ»ΠΈ 4M? Или 40ΠΌ? НСка сравним ΡΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ‚Π΅ TSDB с Ρ‚Π΅Π·ΠΈ числа.

Π‘Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ инсталация

TSBS Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π΅Π½ инструмСнт Π·Π° сравнитСлСн Π°Π½Π°Π»ΠΈΠ· Π·Π° TSDB. Вя Π²ΠΈ позволява Π΄Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Ρ‚Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π΅Π½ Π±Ρ€ΠΎΠΉ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Ρ‡Ρ€Π΅Π· ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° нСобходимия Π±Ρ€ΠΎΠΉ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈ Π½Π° 10 - Ρ„Π»Π°Π³ - ΠΌΠ°Ρ‰Π°Π± (бивш -scale-var). 10 Π΅ броят Π½Π° измСрванията (ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ), Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½ΠΈ Π½Π° всСки хост, ΡΡŠΡ€Π²ΡŠΡ€. Π‘Π»Π΅Π΄Π½ΠΈΡ‚Π΅ Π½Π°Π±ΠΎΡ€ΠΈ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ са създадСни с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° TSBS Π·Π° сравнитСлСн Π°Π½Π°Π»ΠΈΠ·:

  • 400K ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии, ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» ΠΎΡ‚ 60 сСкунди ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚ΠΎΡ‡ΠΊΠΈΡ‚Π΅ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ, Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΠΎΠ±Ρ…Π²Π°Ρ‰Π°Ρ‚ Ρ†Π΅Π»ΠΈ 3 Π΄Π½ΠΈ, ~1.7B ΠΎΠ±Ρ‰ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ.
  • 4 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии, ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» ΠΎΡ‚ 600 сСкунди, Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΠΎΠ±Ρ…Π²Π°Ρ‰Π°Ρ‚ пълни 3 Π΄Π½ΠΈ, ~1.7 ΠΌΠΈΠ»ΠΈΠ°Ρ€Π΄Π° ΠΎΠ±Ρ‰ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ.
  • 40 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии, ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» ΠΎΡ‚ 1 час, Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΠΎΠ±Ρ…Π²Π°Ρ‰Π°Ρ‚ 3 пълни Π΄Π½ΠΈ, ~2.8 ΠΌΠΈΠ»ΠΈΠ°Ρ€Π΄Π° ΠΎΠ±Ρ‰ Π±Ρ€ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ.

ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡŠΡ‚ ΠΈ ΡΡŠΡ€Π²ΡŠΡ€ΡŠΡ‚ Ρ€Π°Π±ΠΎΡ‚Π΅Ρ…Π° Π½Π° спСциални инстанции n1-стандарт-16 Π² ΠΎΠ±Π»Π°ΠΊΠ° Π½Π° Google. Π’Π΅Π·ΠΈ СкзСмпляри ΠΈΠΌΠ°Ρ…Π° слСднитС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ:

  • vCPU: 16
  • RAM: 60 GB
  • Π‘ΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅: Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π΅Π½ 1TB HDD. Π’ΠΎΠΉ осигурява 120 Mbps пропускатСлна способност Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅/запис, 750 ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅ Π² сСкунда ΠΈ 1,5K записи Π² сСкунда.

TSDB бяха ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈ ΠΎΡ‚ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»Π½ΠΈ Π΄ΠΎΠΊΠ΅Ρ€ изобраТСния ΠΈ сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ Π² Π΄ΠΎΠΊΠ΅Ρ€ със слСднитС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ:

  • VictoriaMetrics:

    docker run -it --rm -v /mnt/disks/storage/vmetrics-data:/victoria-metrics-data -p 8080:8080 valyala/victoria-metrics

  • БтойноститС Π½Π° InfluxDB (-e) са Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ Π·Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½Π΅ Π½Π° висока мощност. Π’ΠΈΠΆΡ‚Π΅ подробности Π² докумСнтация):

    docker run -it --rm -p 8086:8086 
    -e INFLUXDB_DATA_MAX_VALUES_PER_TAG=4000000 
    -e INFLUXDB_DATA_CACHE_MAX_MEMORY_SIZE=100g 
    -e INFLUXDB_DATA_MAX_SERIES_PER_DATABASE=0 
    -v /mnt/disks/storage/influx-data:/var/lib/influxdb influxdb

  • TimescaleDB (конфигурацията Π΅ Π²Π·Π΅Ρ‚Π° ΠΎΡ‚ Ρ‚ΠΎ Ρ„Π°ΠΉΠ»):

MEM=`free -m | grep "Mem" | awk β€˜{print $7}’`
let "SHARED=$MEM/4"
let "CACHE=2*$MEM/3"
let "WORK=($MEM-$SHARED)/30"
let "MAINT=$MEM/16"
let "WAL=$MEM/16"
docker run -it β€” rm -p 5432:5432 
--shm-size=${SHARED}MB 
-v /mnt/disks/storage/timescaledb-data:/var/lib/postgresql/data 
timescale/timescaledb:latest-pg10 postgres 
-cmax_wal_size=${WAL}MB 
-clog_line_prefix="%m [%p]: [%x] %u@%d" 
-clogging_collector=off 
-csynchronous_commit=off 
-cshared_buffers=${SHARED}MB 
-ceffective_cache_size=${CACHE}MB 
-cwork_mem=${WORK}MB 
-cmaintenance_work_mem=${MAINT}MB 
-cmax_files_per_process=100

Устройството Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ бСшС стартирано с 16 ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΈ нишки.

Π’Π°Π·ΠΈ статия ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° само Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ Π·Π° ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π·Π° вмъкванС. Π Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ ΠΎΡ‚ сСлСктивния Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½ΠΈ Π² ΠΎΡ‚Π΄Π΅Π»Π½Π° статия.

400K ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии

Π”Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅ΠΌ с прости Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ - 400K. Π Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ ΠΎΡ‚ Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ:

  • VictoriaMetrics: 2,6 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда; ИзползванС Π½Π° RAM: 3 GB; ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π° диска: 965 MB
  • InfluxDB: 1.2 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда; ИзползванС Π½Π° RAM: 8.5 GB; ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π° диска: 1.6 GB
  • Π’Ρ€Π΅ΠΌΠ΅Π²Π° скала: 849K Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда; ИзползванС Π½Π° RAM: 2,5 GB; ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π° диска: 50 GB

ΠšΠ°ΠΊΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΎΡ‚ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ ΠΏΠΎ-Π³ΠΎΡ€Π΅, VictoriaMetrics ΠΏΠ΅Ρ‡Π΅Π»ΠΈ Π² производитСлността Π½Π° Π²Π»ΠΎΠΆΠΊΠ°Ρ‚Π° ΠΈ ΡΡŠΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° компрСсия. Π’Ρ€Π΅ΠΌΠ΅Π²Π°Ρ‚Π° линия ΠΏΠ΅Ρ‡Π΅Π»ΠΈ ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° RAM, Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΌΠ½ΠΎΠ³ΠΎ дисково пространство - 29 Π±Π°ΠΉΡ‚Π° Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ.

По-Π΄ΠΎΠ»Ρƒ ΠΈΠΌΠ° Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° процСсора Π·Π° всяка ΠΎΡ‚ TSDB ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊΠ°:

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

По-Π³ΠΎΡ€Π΅ ΠΈΠΌΠ° Π΅ΠΊΡ€Π°Π½Π½Π° снимка: VictoriaMetrics - Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π½Π° процСсора ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° тСст Π·Π° вмъкванС Π·Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π΅Π½ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π» ΠΎΡ‚ 400K.

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: InfluxDB - ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° процСсора ΠΏΡ€ΠΈ тСст Π·Π° вмъкванС Π·Π° 400K ΡƒΠ½ΠΈΠΊΠ°Π»Π΅Π½ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π».

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: TimescaleDB - ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° процСсора ΠΏΡ€ΠΈ тСст Π·Π° вмъкванС Π·Π° 400K ΡƒΠ½ΠΈΠΊΠ°Π»Π΅Π½ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π».

VictoriaMetrics ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° всички Π½Π°Π»ΠΈΡ‡Π½ΠΈ vCPU, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ InfluxDB ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ ~2 ΠΎΡ‚ 16 vCPU.

Timescale ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° само 3-4 ΠΎΡ‚ 16 vCPU. ВисокитС ΠΏΡ€ΠΎΠΏΠΎΡ€Ρ†ΠΈΠΈ Π½Π° iowait ΠΈ system Π² Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ‚Π° Π½Π° Π²Ρ€Π΅ΠΌΠ΅Π²Π°Ρ‚Π° скала Π½Π° TimescaleDB ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚ тясно място Π² подсистСмата Π·Π° Π²Ρ…ΠΎΠ΄/ΠΈΠ·Ρ…ΠΎΠ΄ (I/O). НСка Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° чСстотната Π»Π΅Π½Ρ‚Π° Π½Π° диска:

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

По-Π³ΠΎΡ€Π΅ ΠΈΠΌΠ° Π΅ΠΊΡ€Π°Π½Π½Π° снимка: VictoriaMetrics - ИзползванС Π½Π° чСстотната Π»Π΅Π½Ρ‚Π° Π½Π° диска ΠΏΡ€ΠΈ тСст Π·Π° вмъкванС Π·Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ 400K.

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

По-Π³ΠΎΡ€Π΅ ΠΈΠΌΠ° Π΅ΠΊΡ€Π°Π½Π½Π° снимка: InfluxDB - ИзползванС Π½Π° чСстотната Π»Π΅Π½Ρ‚Π° Π½Π° диска ΠΏΡ€ΠΈ тСст Π·Π° вмъкванС Π·Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ 400K.

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: TimescaleDB - Π’ΠΌΡŠΠΊΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° чСстотна Π»Π΅Π½Ρ‚Π° Π½Π° тСстов диск Π·Π° 400K ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.

VictoriaMetrics записва Π΄Π°Π½Π½ΠΈ ΠΏΡ€ΠΈ 20Mbps с ΠΏΠΈΠΊΠΎΠ²Π΅ Π΄ΠΎ 45Mbps. ΠŸΠΈΠΊΠΎΠ²Π΅Ρ‚Π΅ ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π°Ρ‚ Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ частични сливания Π² Π΄ΡŠΡ€Π²ΠΎΡ‚ΠΎ LSM.

InfluxDB записва Π΄Π°Π½Π½ΠΈ със 160MB/s, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ 1TB диск трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈ чСстотна Π»Π΅Π½Ρ‚Π° Π½Π° запис ΠΎΡ‚ 120 MB/s.

TimescaleDB Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ Π΄ΠΎ 120Mbps пропускатСлна способност ΠΏΡ€ΠΈ запис, Π½ΠΎ понякога Π½Π°Ρ€ΡƒΡˆΠ°Π²Π° Ρ‚ΠΎΠ²Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΈ достига ΠΏΠΈΠΊ ΠΏΡ€ΠΈ 220Mbps. Π’Π΅Π·ΠΈ ΠΏΠΈΠΊΠΎΠ²Π΅ ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π°Ρ‚ Π½Π° спадовСтС Π½Π° Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π² ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½Π°Ρ‚Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ°.

НСка Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° I/O:

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

По-Π³ΠΎΡ€Π΅ ΠΈΠΌΠ° Π΅ΠΊΡ€Π°Π½Π½Π° снимка: VictoriaMetrics - Π’ΠΌΡŠΠΊΠ²Π°Π½Π΅ Π½Π° тСстово I/O ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π·Π° 400K ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: InfluxDB - Π’ΠΌΡŠΠΊΠ²Π°Π½Π΅ Π½Π° тСстово I/O ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π·Π° 400K ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: TimescaleDB - Π’ΠΌΡŠΠΊΠ²Π°Π½Π΅ Π½Π° тСстово I/O ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π·Π° 400K ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.

Π‘Π΅Π³Π° Π΅ ясно, Ρ‡Π΅ TimescaleDB достига I/O Π»ΠΈΠΌΠΈΡ‚Π°, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° останалитС 12 vCPU.

4M ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии

4M Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°Ρ‚ ΠΌΠ°Π»ΠΊΠΎ ΠΏΡ€Π΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ°Ρ‚Π΅Π»Π½ΠΎ. Но Π½Π°ΡˆΠΈΡ‚Π΅ ΡΡŠΡΡ‚Π΅Π·Π°Ρ‚Π΅Π»ΠΈ ΠΈΠ·Π΄ΡŠΡ€ΠΆΠ°Ρ‚ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Ρ‚ΠΎΠ·ΠΈ ΠΈΠ·ΠΏΠΈΡ‚. Π Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ ΠΎΡ‚ Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ:

  • VictoriaMetrics: 2,2 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда; ИзползванС Π½Π° RAM: 6 GB; ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π° диска: 3 GB.
  • InfluxDB: 330K Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда; ИзползванС Π½Π° RAM: 20,5 GB; ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π° диска: 18,4 GB.
  • TimescaleDB: 480K Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда; ИзползванС Π½Π° RAM: 2,5 GB; ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π° диска: 52 GB.

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° InfluxDB спадна ΠΎΡ‚ 1,2 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда Π·Π° 400K Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии Π΄ΠΎ 330K Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда Π·Π° 4 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии. Π’ΠΎΠ²Π° Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½Π° Π·Π°Π³ΡƒΠ±Π° Π½Π° производитСлност Π² сравнСниС с Π΄Ρ€ΡƒΠ³ΠΈ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚ΠΈ. НСка Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° процСсора, Π·Π° Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ основната ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π·Π° Ρ‚Π°Π·ΠΈ Π·Π°Π³ΡƒΠ±Π°:

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

По-Π³ΠΎΡ€Π΅ ΠΈΠΌΠ° Π΅ΠΊΡ€Π°Π½Π½Π° снимка: VictoriaMetrics - ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° процСсора ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° тСст Π·Π° вмъкванС Π·Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½Π° 4M Π²Ρ€Π΅ΠΌΠ΅Π²Π° сСрия.

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: InfluxDB - Π’ΠΌΡŠΠΊΠ²Π°Π½Π΅ Π½Π° тСстово ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° процСсора Π·Π° 4 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии.

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: TimescaleDB - Π’ΠΌΡŠΠΊΠ²Π°Π½Π΅ Π½Π° тСстово ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° процСсора Π·Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ 4M Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии.

VictoriaMetrics ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎΡ‡Ρ‚ΠΈ цялата мощност Π½Π° процСсора (CPU). ΠšΠ°ΠΏΠΊΠ°Ρ‚Π° Π² края ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π° Π½Π° оставащитС LSM сливания слСд Π²ΠΌΡŠΠΊΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° всички Π΄Π°Π½Π½ΠΈ.

InfluxDB ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° само 8 ΠΎΡ‚ 16 vCPU, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ TimsecaleDB ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° 4 ΠΎΡ‚ 16 vCPU. Какво Π΅ ΠΎΠ±Ρ‰ΠΎΡ‚ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ класации? висок дял iowait, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΎΡ‚Π½ΠΎΠ²ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π° Π²Ρ…ΠΎΠ΄Π½ΠΎ/ΠΈΠ·Ρ…ΠΎΠ΄Π½ΠΎ Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½Π΅Π½ΠΈΠ΅.

TimescaleDB ΠΈΠΌΠ° висок дял system. ВярвамС, Ρ‡Π΅ високата мощност Π΅ Π΄ΠΎΠ²Π΅Π»Π° Π΄ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ систСмни повиквания ΠΈΠ»ΠΈ Π΄ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΈ Π³Ρ€Π΅ΡˆΠΊΠΈ Π½Π° страницата.

НСка Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅ Π½Π° пропускатСлната способност Π½Π° диска:

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: VictoriaMetrics - ИзползванС Π½Π° чСстотната Π»Π΅Π½Ρ‚Π° Π½Π° диска Π·Π° вмъкванС Π½Π° 4 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: InfluxDB - ИзползванС Π½Π° чСстотната Π»Π΅Π½Ρ‚Π° Π½Π° диска Π·Π° вмъкванС Π½Π° 4 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: TimescaleDB - ИзползванС Π½Π° чСстотната Π»Π΅Π½Ρ‚Π° Π½Π° диска Π·Π° вмъкванС Π½Π° 4 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ.

VictoriaMetrics достигна своя Π²Ρ€ΡŠΡ… ΠΎΡ‚ 120MB/s, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ срСдната скорост Π½Π° запис бСшС 40MB/s. ВСроятно Π΅ ΠΈΠΌΠ°Π»ΠΎ няколко Ρ‚Π΅ΠΆΠΊΠΈ LSM сливания, ΠΈΠ·Π²ΡŠΡ€ΡˆΠ΅Π½ΠΈ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΏΠΈΠΊΠ°.

InfluxDB ΠΎΡ‚Π½ΠΎΠ²ΠΎ изстисква срСдна пропускатСлна способност Π·Π° запис ΠΎΡ‚ 200MB/s с ΠΏΠΈΠΊΠΎΠ²Π΅ Π΄ΠΎ 340MB/s Π½Π° диск с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π·Π° запис ΠΎΡ‚ 120MB/s :)

TimescaleDB Π²Π΅Ρ‡Π΅ Π½Π΅ Π΅ дисково ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½. ИзглСТда, Ρ‡Π΅ Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ ΠΎΡ‚ Π½Π΅Ρ‰ΠΎ Π΄Ρ€ΡƒΠ³ΠΎ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΎ с високия дял систСмной Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π½Π° процСсора.

НСка Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° IO:

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: VictoriaMetrics - I/O ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° тСст Π·Π° вмъкванС Π·Π° 4M ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии.

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: InfluxDB - I/O ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° тСст Π·Π° вмъкванС Π·Π° 4 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии.

TSDB Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ с висока производитСлност VictoriaMetrics срСщу TimescaleDB срСщу InfluxDB

Π•ΠΊΡ€Π°Π½Π½Π° снимка ΠΏΠΎ-Π³ΠΎΡ€Π΅: TimescaleDB - I/O ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° тСст Π·Π° вмъкванС Π·Π° 4 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии.

Π“Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° IO отразяват Π³Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° чСстотната Π»Π΅Π½Ρ‚Π° Π½Π° диска - InfluxDB Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ IO, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ VictoriaMetrics ΠΈ TimescaleDB ΠΈΠΌΠ°Ρ‚ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ IO IO рСсурси.

40 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии

40 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии бяха Ρ‚Π²ΡŠΡ€Π΄Π΅ Π³ΠΎΠ»Π΅ΠΌΠΈ Π·Π° InfluxDB :)

Π Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ ΠΎΡ‚ Π±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊ:

  • VictoriaMetrics: 1,7 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда; ИзползванС Π½Π° RAM: 29 GB; ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° дисково пространство: 17 GB.
  • InfluxDB: НС Π·Π°Π²ΡŠΡ€ΡˆΠΈ, Π·Π°Ρ‰ΠΎΡ‚ΠΎ изисквашС Π½Π°Π΄ 60 GB RAM.
  • TimescaleDB: 330K Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° RAM: 2,5 GB; ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° дисково пространство: 84GB.

TimescaleDB ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ниско ΠΈ стабилно ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° RAM ΠΏΡ€ΠΈ 2,5 GB - ΡΡŠΡ‰ΠΎΡ‚ΠΎ ΠΊΠ°Ρ‚ΠΎ Π·Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈΡ‚Π΅ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ 4M ΠΈ 400K.

VictoriaMetrics Π±Π°Π²Π½ΠΎ Π½Π°Ρ€Π°ΡΡ‚Π²Π°ΡˆΠ΅ със скорост ΠΎΡ‚ 100 40 Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ всичкитС 1,5 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΈΡ€Π°Π½ΠΈ ΠΈΠΌΠ΅Π½Π° Π½Π° ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ бяха ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π΅Π½ΠΈ. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° постигна постоянна скорост Π½Π° вмъкванС ΠΎΡ‚ 2,0-1,7 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ крайният Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ бСшС XNUMX ΠΌΠΈΠ»ΠΈΠΎΠ½Π° Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π² сСкунда.

Π“Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅ Π·Π° 40 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии са ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ Π½Π° Ρ‚Π΅Π·ΠΈ Π·Π° 4 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π½Π΅ΠΊΠ° Π³ΠΈ пропуснСм.

Π”Π°Π½Π½ΠΈ

  • Π‘ΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ‚Π΅ TSDB са Π² ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ Π΄Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚ вмъквания Π·Π° ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии Π½Π° Π΅Π΄ΠΈΠ½ ΡΡŠΡ€Π²ΡŠΡ€. Π’ слСдващата статия Ρ‰Π΅ тСствамС ΠΊΠΎΠ»ΠΊΠΎ Π΄ΠΎΠ±Ρ€Π΅ TSDB ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚ ΠΈΠ·Π±ΠΎΡ€ Π²ΡŠΡ€Ρ…Ρƒ ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π²ΠΈ сСрии.
  • ΠΠ΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° процСсора ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π° I/O ΠΏΡ€Π΅Ρ‡ΠΊΠ°. МоТС ΡΡŠΡ‰ΠΎ Π΄Π° ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π΅ Ρ‚Π²ΡŠΡ€Π΄Π΅ Π³Ρ€ΡƒΠ±ΠΎ, ΠΊΠ°Ρ‚ΠΎ само няколко нишки ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ навСднъТ.
  • I/O ΠΏΡ€Π΅Ρ‡ΠΊΠΈΡ‚Π΅ наистина ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚, особСно Π² Π½Π΅-SSD Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°, ΠΊΠ°Ρ‚ΠΎ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ Π±Π»ΠΎΠΊΠΎΠ²ΠΈ устройства Π½Π° ΠΎΠ±Π»Π°Ρ‡Π½ΠΈ доставчици.
  • VictoriaMetrics осигурява Π½Π°ΠΉ-Π΄ΠΎΠ±Ρ€Π°Ρ‚Π° оптимизация Π·Π° Π±Π°Π²Π½ΠΎ, ниско I/O ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅. Π’ΠΎΠΉ осигурява Π½Π°ΠΉ-Π΄ΠΎΠ±Ρ€Π°Ρ‚Π° скорост ΠΈ Π½Π°ΠΉ-Π΄ΠΎΠ±Ρ€ΠΎΡ‚ΠΎ ΡΡŠΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π½Π° компрСсия.

Π˜Π·Ρ‚Π΅Π³Π»ΠΈ Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π΅Π΄ΠΈΠ½ ΡΡŠΡ€Π²ΡŠΡ€ Π½Π° VictoriaMetrics ΠΈ Π³ΠΎ ΠΎΠΏΠΈΡ‚Π°ΠΉΡ‚Π΅ Π½Π° Π²Π°ΡˆΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ. Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΈΡΡ‚ статичСн Π΄Π²ΠΎΠΈΡ‡Π΅Π½ Ρ„Π°ΠΉΠ» Π΅ Π΄ΠΎΡΡ‚ΡŠΠΏΠ΅Π½ Π½Π° GitHub.

ΠŸΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π·Π° VictoriaMetrics Π² Ρ‚ΠΎΠ²Π° Бтатия.

Актуализация: ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½Π° статия, сравняваща производитСлността Π½Π° вмъкванС Π½Π° VictoriaMetrics с InfluxDB с Π²ΡŠΠ·ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΠΈ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ.

Актуализация #2: ΠŸΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ ΡΡŠΡ‰ΠΎ статия Π·Π° Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»Π½Π° мащабируСмост VictoriaMetrics срСщу InfluxDB срСщу TimescaleDB.

Актуализация #3: VictoriaMetrics Π²Π΅Ρ‡Π΅ Π΅ с ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄!

Π§Π°Ρ‚ Π² Telegram: https://t.me/VictoriaMetrics_ru1

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

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€