VictoriaMetrics, časový rad DBMS kompatibilný s Prometheus, je open source

OTVORENÉ zdrojové texty VictoriaMetrics — rýchly a škálovateľný DBMS na ukladanie a spracovanie údajov vo forme časových radov (záznam tvorí čas a súbor hodnôt zodpovedajúcich tomuto času, napr. získaný periodickým dotazovaním na stav senzorov alebo zberom metriky). Projektu konkurujú také riešenia ako napr InfluxDB, Časová mierkaDB, Thanos, kôra и Uber M3. Kód je napísaný v Go a distribuovaný licencovaný pod Apache 2.0.

Výhody a vlastnosti VictoriaMetrics:

  • Jednoduché použitie. Je to jeden spustiteľný súbor s minimálnymi nastaveniami, ktoré sa pri spustení prenášajú cez príkazový riadok. Všetky údaje sú uložené v jednom adresári, špecifikovanom pri spustení pomocou príznaku „-storageDataPath“;
  • Podpora jazyka dotazu PromQL, ktorý sa používa v monitorovacom systéme Prometheus. Podporované sú poddotazy PromQL a niektoré rozšírené schopnosti, ako napríklad výraz "offset", vzory v rámci príkazov "WIDTH", "if" a "default", dodatočné funkcie a schopnosť zahrnúť komentáre;
  • Možno použiť ako dlhodobé ukladanie dátprepojený s Prometheusom a grafana.
  • Dostupnosť režimu zálohovania na načítanie historických údajov;
  • Podporuje rôzne protokoly prenosu údajov, vrátane Prometheus API, prítok, grafit и OpenTSDB. VictoriaMetrics možno použiť ako transparentnú náhradu za InfluxDB a môže pracovať s kolektormi kompatibilnými s InfluxDB, ako je Telegraf;
  • Vysoký výkon a nízka spotreba zdrojov porovnávané s konkurenčnými systémami. V niektorých testoch VictoriaMetrics prekonáva InfluxDB a TimescaleDB až 20-krát pri vykonávaní operácií vkladania a načítania. Pri vykonávaní analytických dopytov môže byť zisk v porovnaní s relačnými DBMS PostgreSQL a MySQL 10 až 1000-násobný.

    VictoriaMetrics, časový rad DBMS kompatibilný s Prometheus, je open source

    VictoriaMetrics, časový rad DBMS kompatibilný s Prometheus, je open source

    VictoriaMetrics, časový rad DBMS kompatibilný s Prometheus, je open source

  • Je k dispozícii príležitosť spracovanie veľkého množstva jedinečných časových radov. Pri spracovaní miliónov rôznych časových radov spotrebuje až 10-krát menej pamäte RAM ako InfluxDB.
  • Vysoký stupeň kompresie údajov na diskovom úložisku. V porovnaní s TimescaleDB sa do neho zmestí až 70-krát viac záznamov na rovnakú veľkosť úložiska;
  • Dostupnosť optimalizácií pre úložisko s vysokou latenciou a nízkym počtom vstupných/výstupných operácií za sekundu (napríklad pevné disky a cloudové úložisko AWS, Google Cloud a Microsoft Azure);
  • Založený na jednoduchom zálohovacom systéme snímky;
  • Dostupnosť prostriedkov na ochranu integrity úložiska pred poškodením dát, napríklad v prípade núdzového výpadku prúdu (úložisko má podobu log-štruktúrovaný strom so zlúčením);
  • Implementácia v jazyku Go, ktorá poskytuje kompromis medzi výkonom a zložitosťou kódu v porovnaní s Rustom a C++.
  • Zdrojové kódy poskytnuté klastrové verzie, ktorý podporuje horizontálne škálovanie na viacerých serveroch a vykazuje nízku réžiu. K dispozícii sú funkcie vysokej dostupnosti.

Zdroj: opennet.ru

Pridať komentár