Zdrojový kód VictoriaMetrics, SDB pre časové rady, kompatibilná s Prometheus.

Otvorené otvorené texty VictoriaMetrics — rýchlu a škálovateľnú DBMS na uchovávanie a spracovanie údajov vo forme časových radov (záznam vytvára čas a súbor súvisiacich hodnôt, napríklad získaných prostredníctvom periódneho monitorovania stavu senzorov alebo zbierania metrík). Projekt konkuruje s takými riešeniami ako InfluxDB, TimescaleDB, Thanos, Cortex a Uber M3. Kód je napísaný v jazyku Go a distribuovaný pod licenciou Apache 2.0.

Výhody a charakteristiky VictoriaMetrics:

  • Je jednoduchá na používanie. Predstavuje si jeden spustiteľný súbor s minimálnymi nastaveniami, ktoré sa odovzdávajú cez príkazový riadok pri spustení. Všetky údaje sú uložené v jednom adresári, určenom pri spustení pomocou príkazu „-storageDataPath“;
  • Podpora jazyka dotazov PromQL, používaného v monitorovacom systéme Prometheus. Podporujú sa poddotazy PromQL a niektoré rozšírené funkcie, ako sú výraz „offset“, šablóny vo vnútri „WIDTH“, operátory „if“ a „default“, dodatočné funkcie a možnosť zahrnúť komentáre;
  • Možnosť používania ako dlhodobého úložiska údajov, pripojeného k Prometheus a Grafana.
  • Dostupnosť režimu spätného naplnenia na načítanie historických údajov;
  • Podpora rôznych protokolov prenosu údajov, vrátane Prometheus API, Influx, Graphite a OpenTSDB. VictoriaMetrics môže byť tiež použitá ako priesvitná náhrada InfluxDB a môže pracovať so zberateľmi kompatibilnými s InfluxDB, ako je Telegraf;
  • Vysoký výkon a nízka spotreba zdrojov v porovnaní s konkurenčnými systémami. V niektorých testoch VictoriaMetrics prekonáva InfluxDB a TimescaleDB pri vykonávaní operácií vkladania a vyžiadania údajov až 20-krát. Pri vykonávaní analytických dotazov môže byť výhoda v porovnaní s relačnými DBMS PostgreSQL a MySQL od 10 do 1000-krát.

    Zdrojový kód VictoriaMetrics, SDB pre časové rady, kompatibilná s Prometheus.

    Zdrojový kód VictoriaMetrics, SDB pre časové rady, kompatibilná s Prometheus.

    Zdrojový kód VictoriaMetrics, SDB pre časové rady, kompatibilná s Prometheus.
  • Existuje možnosť spracovanie veľmi veľkého počtu unikátnych časových radov. Pri spracovávaní miliónov rôznych časových radov spotrebuje až 10-krát menej RAM ako InfluxDB.
  • Vysoký stupeň kompresie údajov v diskovom úložisku. V porovnaní s TimescaleDB môže v rovnakom objeme úložiska umiestniť až 70-krát viac záznamov;
  • Existencia optimalizácií pre úložiská s veľkými oneskoreniami a nízkym počtom operácií vstupu/výstupu za sekundu (napríklad pevné disky a cloudové úložiská AWS, Google Cloud a Microsoft Azure);
  • Jednoduchý systém zálohovania na báze snapshotov;
  • Dostupnosť prostriedkov na ochranu integrity úložiska pred poškodením dát, napríklad pri núdzovom vypnutí napájania (úložisko má podobu žurnálovo-stručkového stromu so zlúčením);
  • Implementácia v jazyku Go, ktorá zabezpečuje vyváženosť medzi výkonnosťou a zložitosťou kódu v porovnaní s Rustom a C++.
  • Sú poskytované zdrojové kódy klastrových verzií, ktorá podporuje horizontálne škálovanie na viacerých serveroch a vykazuje nízke prevádzkové náklady. Existujú prostriedky na zaistenie vysokej dostupnosti.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster