VictoriaMetrics, TimescaleDB ΠΈ InfluxDB Π±ΡΠ»ΠΈ ΡΡΠ°Π²Π½Π΅Π½Ρ Π²
ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»Π΅Ρ Π½Π°Π·Π°Π΄ Π±ΡΠ»Π° ΡΠΏΠΎΡ Π° Zabbix. ΠΠ°ΠΆΠ΄ΡΠΉ bare metal ΡΠ΅ΡΠ²Π΅Ρ ΠΈΠΌΠ΅Π» Π½Π΅ Π±ΠΎΠ»Π΅Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΈΡΠΊΠ° ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Ρ ΡΡΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡΡΡ Π² 40 ΡΡΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ², Π° Zabbix ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ MySQL Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π±ΡΠΊΠ΅Π½Π΄Π° Π΄Π»Ρ Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ² π
Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΎΠ΄ΠΈΠ½
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ² Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ? ΠΠ°Π²Π΅ΡΠ½ΠΎΠ΅, 400Π ΠΈΠ»ΠΈ 4Π? ΠΠ»ΠΈ 40ΠΌ? ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΡΠ°Π²Π½ΠΈΠΌ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ TSDBs Ρ ΡΡΠΈΠΌΠΈ ΡΠΈΡΡΠ°ΠΌΠΈ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠ°
-scale-var
). 10 β ΡΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ (ΠΌΠ΅ΡΡΠΈΠΊ), Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌΡΡ
Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Ρ
ΠΎΡΡΠ΅, ΡΠ΅ΡΠ²Π΅ΡΠ΅. Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ Π½Π°Π±ΠΎΡΡ Π΄Π°Π½Π½ΡΡ
Π±ΡΠ»ΠΈ ΡΠΎΠ·Π΄Π°Π½Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ TSBS Π΄Π»Ρ Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠ°:
- 400K ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΄, 60 ΡΠ΅ΠΊΡΠ½Π΄ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΡΠΊΠ°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ , Π΄Π°Π½Π½ΡΠ΅ ΠΎΡ Π²Π°ΡΡΠ²Π°ΡΡ ΠΏΠΎΠ»Π½ΡΠ΅ 3 Π΄Π½Ρ, ~1.7B ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ .
- 4M ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΄, ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» 600 ΡΠ΅ΠΊΡΠ½Π΄, Π΄Π°Π½Π½ΡΠ΅ ΠΎΡ Π²Π°ΡΡΠ²Π°ΡΡ ΠΏΠΎΠ»Π½ΡΠ΅ 3 Π΄Π½Ρ, ~1.7B ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ .
- 40M ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΄, ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» 1 ΡΠ°Ρ, Π΄Π°Π½Π½ΡΠ΅ ΠΎΡ Π²Π°ΡΡΠ²Π°ΡΡ ΠΏΠΎΠ»Π½ΡΠ΅ 3 Π΄Π½Ρ, ~2.8 B ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ .
ΠΠ»ΠΈΠ΅Π½Ρ ΠΈ ΡΠ΅ΡΠ²Π΅Ρ Π±ΡΠ»ΠΈ Π·Π°ΠΏΡΡΠ΅Π½Ρ Π½Π° Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΡΡ
ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°Ρ
- vCPUs: 16
- ΠΠΠ£: 60 ΠΠ
- Π₯ΡΠ°Π½Π΅Π½ΠΈΠ΅: ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΆΠ΅ΡΡΠΊΠΈΠΉ Π΄ΠΈΡΠΊ Π΅ΠΌΠΊΠΎΡΡΡΡ 1 Π’Π. ΠΠ½ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΡΡ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΡΡΠ΅Π½ΠΈΡ/Π·Π°ΠΏΠΈΡΠΈ 120 ΠΠ±ΠΈΡ/Ρ, 750 ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΡΠ΅Π½ΠΈΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ ΠΈ 1,5Π ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π·Π°ΠΏΠΈΡΠΈ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ.
TSDBs Π±ΡΠ»ΠΈ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½Ρ ΠΈΠ· ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΎΠ±ΡΠ°Π·ΠΎΠ² docker ΠΈ Π·Π°ΠΏΡΡΠ΅Π½Ρ Π² docker ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠΌΠΈ:
-
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 ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠΌΠΈ ΠΏΠΎΡΠΎΠΊΠ°ΠΌΠΈ.
ΠΡΠ° ΡΡΠ°ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΡΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π²ΡΡΠ°Π²ΠΊΠΈ. Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ Π²ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠ³ΠΎ Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠ° Π±ΡΠ΄ΡΡ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Ρ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅.
400Π ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ²
ΠΠ°Π²Π°ΠΉΡΠ΅ Π½Π°ΡΠ½Π΅ΠΌ Ρ ΠΏΡΠΎΡΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² β 400Π. Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠ°:
- VictoriaMetrics: 2,6Π ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ; ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ: 3 ΠΠ; ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π΄Π°Π½Π½ΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅: 965 ΠΠ
- InfluxDB: 1.2M ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ; ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ: 8.5 GB; ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π΄Π°Π½Π½ΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅: 1.6 GB
- Timescale: 849K ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ; ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ: 2,5 ΠΠ; ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π΄Π°Π½Π½ΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅: 50 ΠΠ
ΠΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ ΠΈΠ· ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ², VictoriaMetrics Π²ΡΠΈΠ³ΡΡΠ²Π°Π΅Ρ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²ΡΡΠ°Π²ΠΊΠΈ ΠΈ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΡΠΆΠ°ΡΠΈΡ. ΠΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΊΠ°Π»Π° Π²ΡΠΈΠ³ΡΡΠ²Π°Π΅Ρ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, Π½ΠΎ ΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° β 29 Π±Π°ΠΉΡ Π½Π° ΡΠΎΡΠΊΡ Π΄Π°Π½Π½ΡΡ .
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° (CPU) Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· TSDBs Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠ°:
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: VictoriaMetrics β ΠΠ°Π³ΡΡΠ·ΠΊΠ° CPU ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ΅ΡΡΠΈΠΊΠΈ 400K.
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: InfluxDB β ΠΠ°Π³ΡΡΠ·ΠΊΠ° CPU ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ΅ΡΡΠΈΠΊΠΈ 400K.
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: TimescaleDB β ΠΠ°Π³ΡΡΠ·ΠΊΠ° CPU ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ΅ΡΡΠΈΠΊΠΈ 400K.
VictoriaMetrics ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²ΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ vCPUs, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ InfluxDB Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ~2 ΠΈΠ· 16 vCPUs.
Timescale ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ 3-4 ΠΈΠ· 16 vCPUs. ΠΡΡΠΎΠΊΠΈΠ΅ Π΄ΠΎΠ»ΠΈ iowait ΠΈ system Π½Π° TimescaleDB Π³ΡΠ°ΡΠΈΠΊΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΌΠ°ΡΡΡΠ°Π±ΠΎΠ² ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΡΠ·ΠΊΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π² ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ΅ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° (I/O). ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ Π΄ΠΈΡΠΊΠ°:
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: VictoriaMetrics β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ Π΄ΠΈΡΠΊΠ° ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ 400K.
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: InfluxDB β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ Π΄ΠΈΡΠΊΠ° ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ 400K.
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: TimescaleDB β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ Π΄ΠΈΡΠΊΠ° ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ 400K.
VictoriaMetrics Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΡΠΎ ΡΠΊΠΎΡΠΎΡΡΡΡ 20 ΠΠ±ΠΈΡ/Ρ Ρ ΠΏΠΈΠΊΠ°ΠΌΠΈ Π΄ΠΎ 45 ΠΠ±ΠΈΡ/Ρ. ΠΠΈΠΊΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠΌ ΡΠ°ΡΡΠΈΡΠ½ΡΠΌ ΡΠ»ΠΈΡΠ½ΠΈΡΠΌ Π² Π΄Π΅ΡΠ΅Π²Π΅
InfluxDB Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΡΠΎ ΡΠΊΠΎΡΠΎΡΡΡΡ 160 ΠΠ/Ρ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ 1 Π’Π Π΄ΠΈΡΠΊ
TimescaleDB ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π° ΠΏΡΠΎΠΏΡΡΠΊΠ½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡΡ Π·Π°ΠΏΠΈΡΠΈ 120 ΠΠ±ΠΈΡ/Ρ, Π½ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΎΠ½Π° Π½Π°ΡΡΡΠ°Π΅Ρ ΡΡΠΎΡ ΠΏΡΠ΅Π΄Π΅Π» ΠΈ Π΄ΠΎΡΡΠΈΠ³Π°Π΅Ρ 220 ΠΠ±ΠΈΡ/Ρ Π² ΠΏΠΈΠΊΠΎΠ²ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡΡ . ΠΡΠΈ ΠΏΠΈΠΊΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΠΏΡΠΎΠ²Π°Π»Π°ΠΌ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° Π½Π° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ Π³ΡΠ°ΡΠΈΠΊΠ΅.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° (I/O):
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: VictoriaMetrics β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ 400K ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ.
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: InfluxDB β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ 400K ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ.
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: TimescaleDB β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ 400K ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ.
Π’Π΅ΠΏΠ΅ΡΡ ΡΡΠ½ΠΎ, ΡΡΠΎ TimescaleDB Π΄ΠΎΡΡΠΈΠ³Π°Π΅Ρ ΠΏΡΠ΅Π΄Π΅Π»Π° Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΡΠ°Π²ΡΠΈΠ΅ΡΡ 12 vCPUs.
4M ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΄Ρ
4M Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΄Ρ Π²ΡΠ³Π»ΡΠ΄ΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡΠ΅. ΠΠΎ Π½Π°ΡΠΈ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΡ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΡΠ΄Π°ΡΡ ΡΡΠΎΡ ΡΠΊΠ·Π°ΠΌΠ΅Π½. Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠ°:
- VictoriaMetrics: 2,2Π ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ; ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ: 6 ΠΠ; ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π΄Π°Π½Π½ΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅: 3 ΠΠ.
- InfluxDB: 330Π ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ; ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ: 20,5 ΠΠ; ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π΄Π°Π½Π½ΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅: 18,4 ΠΠ.
- TimescaleDB: 480K ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ; ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ: 2,5 ΠΠ; ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π΄Π°Π½Π½ΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅: 52 ΠΠ.
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ InfluxDB ΡΠΏΠ°Π»Π° Ρ 1,2 ΠΌΠ»Π½ ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ Π΄Π»Ρ 400Π Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΄Π° Π΄ΠΎ 330 ΡΡΡ. ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ Π΄Π»Ρ 4M Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΄Π°. ΠΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΏΠΎΡΠ΅ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠ°ΠΌΠΈ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ ΠΏΠ΅ΡΠ²ΠΎΠΏΡΠΈΡΠΈΠ½Ρ ΡΡΠΎΠΉ ΠΏΠΎΡΠ΅ΡΠΈ:
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: VictoriaMetrics β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ CPU ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΄Π° 4M.
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: InfluxDB β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ CPU ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΄Π° 4M.
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: TimescaleDB β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ CPU ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΄Π° 4M.
VictoriaMetrics ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠΎΡΡΠΈ Π²ΡΡ ΠΌΠΎΡΠ½ΠΎΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° (CPU). Π‘Π½ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΎΡΡΠ°Π²ΡΠΈΠΌΡΡ LSM ΡΠ»ΠΈΡΠ½ΠΈΡΠΌ ΠΏΠΎΡΠ»Π΅ Π²ΡΡΠ°Π²ΠΊΠΈ Π²ΡΠ΅Ρ Π΄Π°Π½Π½ΡΡ .
InfluxDB ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ 8 ΠΈΠ· 16 vCPUs, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ TimsecaleDB ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ 4 ΠΈΠ· 16 vCPUs. Π§ΡΠΎ ΠΎΠ±ΡΠ΅Π³ΠΎ Ρ ΠΈΡ
Π³ΡΠ°ΡΠΈΠΊΠΎΠ²? ΠΡΡΠΎΠΊΠ°Ρ Π΄ΠΎΠ»Ρ iowait
, ΡΡΠΎ, ΠΎΠΏΡΡΡ ΠΆΠ΅, ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠ·ΠΊΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°.
TimescaleDB ΠΈΠΌΠ΅Π΅Ρ Π²ΡΡΠΎΠΊΡΡ Π΄ΠΎΠ»Ρ system
. ΠΠΎΠ»Π°Π³Π°Π΅ΠΌ, ΡΡΠΎ Π²ΡΡΠΎΠΊΠ°Ρ ΠΌΠΎΡΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ²Π΅Π»Π° ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌ Π²ΡΠ·ΠΎΠ²Π°ΠΌ ΠΈΠ»ΠΈ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ Π΄ΠΈΡΠΊΠ°:
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: VictoriaMetrics β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΠΎΡΡ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π½ΠΈΡ Π΄ΠΈΡΠΊΠ° Π΄Π»Ρ Π²ΡΡΠ°Π²ΠΊΠΈ 4M ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ.
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: InfluxDB β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΠΎΡΡ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π½ΠΈΡ Π΄ΠΈΡΠΊΠ° Π΄Π»Ρ Π²ΡΡΠ°Π²ΠΊΠΈ 4M ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ.
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: TimescaleDB β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΠΎΡΡ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π½ΠΈΡ Π΄ΠΈΡΠΊΠ° Π΄Π»Ρ Π²ΡΡΠ°Π²ΠΊΠΈ 4M ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ.
VictoriaMetrics Π΄ΠΎΡΡΠΈΠ³Π°Π»ΠΈ ΠΏΡΠ΅Π΄Π΅Π»Π° 120 ΠΠ/Ρ Π² ΠΏΠΈΠΊ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ΡΡΠ΅Π΄Π½ΡΡ ΡΠΊΠΎΡΠΎΡΡΡ Π·Π°ΠΏΠΈΡΠΈ ΡΠΎΡΡΠ°Π²Π»ΡΠ»Π° 40 ΠΠ/Ρ. ΠΠ΅ΡΠΎΡΡΠ½ΠΎ, Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠΈΠΊΠ° Π±ΡΠ»ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΆΠ΅Π»ΡΡ ΡΠ»ΠΈΡΠ½ΠΈΠΉ LSM.
InfluxDB ΡΠ½ΠΎΠ²Π° Π²ΡΠΆΠΈΠΌΠ°Π΅Ρ ΡΡΠ΅Π΄Π½ΡΡ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΡΡ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ Π·Π°ΠΏΠΈΡΠΈ 200 ΠΠ/Ρ Ρ ΠΏΠΈΠΊΠ°ΠΌΠΈ Π΄ΠΎ 340 ΠΠ/Ρ Π½Π° Π΄ΠΈΡΠΊΠ΅ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ Π·Π°ΠΏΠΈΡΠΈ 120 ΠΠ/Ρ π
TimescaleDB Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π° Π΄ΠΈΡΠΊΠΎΠΌ. ΠΠΎΡ
ΠΎΠΆΠ΅, ΡΡΠΎ ΠΎΠ½ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ ΡΠ΅ΠΌ-ΡΠΎ Π΅ΡΠ΅, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΌ Ρ Π²ΡΡΠΎΠΊΠΎΠΉ Π΄ΠΎΠ»Π΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ
Π·Π°Π³ΡΡΠ·ΠΊΠΈ CPU.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ IO:
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: VictoriaMetrics β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ΅ΡΡΠ° Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΄Π° 4M.
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: InfluxDB β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ΅ΡΡΠ° Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΄Π° 4M.
ΠΡΡΠ΅ ΡΠΊΡΠΈΠ½ΡΠΎΡ: TimescaleDB β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ΅ΡΡΠ° Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΄Π° 4M.
ΠΡΠ°ΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ IO ΠΏΠΎΠ²ΡΠΎΡΡΡΡ Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ»ΠΎΡΡ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π½ΠΈΡ Π΄ΠΈΡΠΊΠ° β InfluxDB ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ IO, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ VictoriaMetrics ΠΈ TimescaleDB ΠΈΠΌΠ΅ΡΡ Π·Π°ΠΏΠ°ΡΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° IO.
40Π ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΡΠ°ΠΉΠΌ ΡΠ΅ΡΠΈΠΈ
40Π ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΄Ρ Π±ΡΠ»ΠΈ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ Π΄Π»Ρ InfluxDB π
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ Π±Π΅ΡΠΌΠ°ΡΠΊΠ°:
- VictoriaMetrics: 1,7Π ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ; ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ: 29 ΠΠ; ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°: 17 ΠΠ.
- InfluxDB: Π½Π΅ Π·Π°ΠΊΠΎΠ½ΡΠΈΠ», ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ Π±ΠΎΠ»Π΅Π΅ 60 ΠΠ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ.
- TimescaleDB: 330Π ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ: 2,5 ΠΠ; ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°: 84GB.
TimescaleDB ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½ΠΈΠ·ΠΊΠΎΠ΅ ΠΈ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ β 2,5 ΠΠ β ΡΡΠΎΠ»ΡΠΊΠΎ ΠΆΠ΅, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈ Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΠΌΠ΅ΡΡΠΈΠΊ 4M ΠΈ 400K.
VictoriaMetrics ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π»ΠΈΡΡ ΡΠΎ ΡΠΊΠΎΡΠΎΡΡΡΡ 100 ΡΡΡΡΡ ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡΠ»ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Ρ Π²ΡΠ΅ 40Π ΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΈΠΌΠ΅Π½ Ρ ΠΌΠ΅ΡΠΊΠ°ΠΌΠΈ. ΠΠ°ΡΠ΅ΠΌ ΠΎΠ½ Π΄ΠΎΡΡΠΈΠ³ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΠΈ Π²ΡΡΠ°Π²ΠΊΠΈ 1,5-2,0Π ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ, ΡΠ°ΠΊ ΡΡΠΎ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠΎΡΡΠ°Π²ΠΈΠ» 1,7Π ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ.
ΠΡΠ°ΡΠΈΠΊΠΈ Π΄Π»Ρ 40Π ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ² Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½Ρ Π³ΡΠ°ΡΠΈΠΊΠ°ΠΌ Π΄Π»Ρ 4Π ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ², ΠΏΠΎΡΡΠΎΠΌΡ Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΈΡ ΠΏΡΠΎΠΏΡΡΡΠΈΠΌ.
ΠΡΠ²ΠΎΠ΄Ρ
- Π‘ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ TSDBs ΡΠΏΠΎΡΠΎΠ±Π½Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π»Ρ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ² Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅. Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Ρ ΠΎΡΠΎΡΠΎ TSDBs Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π²ΡΠ±ΠΎΡ ΠΏΠΎ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°ΠΌ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ².
- ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½Π°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΎΠ±ΡΡΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠ·ΠΊΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΡΠ»ΠΈΡΠΊΠΎΠΌ Π³ΡΡΠ±ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠΎΠΊΠΎΠ².
- Π£Π·ΠΊΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°Ρ Π±Π΅Π· SSD, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π±Π»ΠΎΡΠ½ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΎΠ±Π»Π°ΡΠ½ΡΡ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠΎΠ².
- VictoriaMetrics ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π½Π°ΠΈΠ»ΡΡΡΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π΄Π»Ρ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡ Ρ Π½ΠΈΠ·ΠΊΠΈΠΌ ΡΡΠΎΠ²Π½Π΅ΠΌ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°. ΠΠ½ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π½Π°ΠΈΠ»ΡΡΡΡΡ ΡΠΊΠΎΡΠΎΡΡΡ ΠΈ Π½Π°ΠΈΠ»ΡΡΡΡΡ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΡΠΆΠ°ΡΠΈΡ.
ΠΠ°Π³ΡΡΠ·ΠΈΡΠ΅
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ VictoriaMetrics ΡΠΈΡΠ°ΠΉΡΠ΅ Π² ΡΡΠΎΠΉ
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅: ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π°
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅#2: Π§ΠΈΡΠ°ΠΉΡΠ΅ ΡΠ°ΠΊΠΆΠ΅
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ #3:
Π’Π΅Π»Π΅Π³ΡΠ°ΠΌ ΡΠ°Ρ:
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com