tsbs
VictoriaMetrics
Our great sponsors
tsbs | VictoriaMetrics | |
---|---|---|
76 | 97 | |
1,208 | 10,781 | |
1.6% | 2.9% | |
1.9 | 9.9 | |
28 days ago | 3 days ago | |
Go | Go | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
tsbs
-
Fuzz Testing Is the Best Thing to Happen to Our Application Tests
1. correctness: from small units tests to relatively complex integrations tests. they typically populate a test database and query it via various interfaces, such as REST or the Postgres protocol. we use Azure Pipelines to execute them - testing in MacoOS, Linux (both Intel and ARM) and Windows.
2. performance: we tend to use the TSBS project for most of our performance testing and profiling. fun fact: we actually had to patch it as the vanilla TSBS was a bottleneck in some tests. Sadly, the PR with the improvements is still not merged: https://github.com/timescale/tsbs/pull/186
-
MongoDB Time Series Benchmark and Review
As usual, we use the industry standard Time Series Benchmark Suite (TSBS) as the benchmark tool. Unfortunately, TSBS upstream does not support MongoDB time series collections.
-
Show HN: QuestDB with Python, Pandas and SQL in a Jupyter notebook – no install
yes correct - although Clickhouse is more of an OLAP database. Timescale is built on top of Postgres, while QuestDB is built from scratch with Postgres wire compatibility. You can run benchmarks on https://github.com/timescale/tsbs
-
Streaming data storage
According their benchmark it is really fast.
-
Ingesting with CrateDB
We used the nodeIngestBench for all the benchmarking. It is a multi-process Node.js script that runs high-performance ingest benchmarks on CrateDB. It uses a data model that was adapted from Timescale’s Time Series Benchmark Suite (TSBS). One thing that we want to make clear is that nodeIngestBench is a write benchmark. The data structure that it creates is unsuitable for any performance-indicative reading tests because of its high cardinality (due to random data) and no partitioning.
-
4Bn rows/sec query benchmark: Clickhouse vs QuestDB vs Timescale
In order to make the benchmark easily reproducible, we're going to use TSBS benchmark utilities to generate the data. We'll be using so-called IoT use case:
-
DeWitt Clause, or Can You Benchmark %DATABASE% and Get Away With It
Also, some open-source vendors collaboratively maintain benchmarking suites such as Time Series Benchmark Suite to help choose the best tools for particular workloads.
-
4Bn rows/SEC query benchmark: ClickHouse vs. QuestDB vs. Timescale
Last year we released QuestDB 6.0 and achieved an ingestion rate of 1.4 million rows per second (per server). We compared those results to popular open source databases [1] and explained how we dealt with out of order ingestion under the hood while keeping the underlying storage model read-friendly. Since then, we focused our efforts on making queries faster, in particular filter queries with WHERE clauses. To do so, we once again decided to make things from scratch and built a JIT (Just-in-Time) compiler for SQL filters, with tons of low-level optimisations such as SIMD. We then parallelized the query execution to improve the execution time even further. In this blog post, we first look at some benchmarks against Clickhouse and TimescaleDB, before digging deeper in how this all works within QuestDB's storage model. Once again, we use the Time Series Benchmark Suite (TSBS) [2], developed by TimescaleDB,: it is an open source and reproducible benchmark.
We'd love to get your feedback!
This table schema: https://github.com/timescale/tsbs/blob/bcc00137d72d889e6059e...
...seems like a quite odd way to store time-series in ClickHouse. If I understood that code correctly (and I am really not sure), they partition their data by some tag value (the first one in a list?) instead of time, which is what timescaledb afaik partitions by. Of course that query filtering by timerange is going to be slower than usual. Whether that makes sense depends on your usecase.
VictoriaMetrics
-
OpenTelemetry Is Too Complicated
VictoriaMetrics CTO here.
The referred library is the official OpenTelemetry package for reading metrics in Go language [1] - more details are available at [2].
Note that we at VictoriaMetrics like the idea of unified observability standard like OpenTelemetry. The issue is in the current otel implementation. It is too bloated and very inefficient. This contradicts to our experience with observability cases, which need very optimized format for metrics' transfer in order to reduce costs on CPU and network traffic needed to transfer and process these metrics.
VictoriaMetrics continues investing in OpenTelemetry by providing integration docs [3] and improving the existing functionality for otel metrics' ingestion [4].
[1] https://github.com/open-telemetry/opentelemetry-proto-go
[2] https://github.com/VictoriaMetrics/VictoriaMetrics/pull/2570...
[3] https://docs.victoriametrics.com/guides/getting-started-with...
[4] https://github.com/VictoriaMetrics/VictoriaMetrics/issues/60...
-
Observability at KubeCon + CloudNativeCon Europe 2024 in Paris
Victoria Metrics
- All you need is Wide Events, not "Metrics, Logs and Traces"
-
Top 11 Grafana Alternatives in 2023
VictoriaMetrics is primarily a time-series database designed for efficiently storing and querying time-series data. It is often used as a back-end data store for time-series data generated by monitoring systems like Prometheus. VictoriaMetrics excels at handling large volumes of time-series data, offering efficient storage and query capabilities.
-
InfluxDB CTO: Why We Moved from Go to Rust
Not sure I follow since there are very competitive tools written in Go such as https://victoriametrics.com for an example in this space.
-
μMon: Stupid simple monitoring
Did you try VictoriaMetrics [1] and vmagent [2]? It is a single self-contained binary without external dependencies. It requires relatively low amounts of CPU, RAM, disk space and disk IO, and it runs on ARM.
-
CERN swaps out databases to feed its petabyte-a-day habit
https://github.com/VictoriaMetrics/VictoriaMetrics#cardinali...
If I understanding correctly, it deal with high cardinality by dropping data, the operators need to monitor for this and adjust their data to lower the cardinality.
-
Prometheus Observability Platform: Intro
VictoriaMetrics
-
VictoriaMetrics VS openobserve - a user suggested alternative
2 projects | 30 Aug 2023
What are some alternatives?
mimir - Grafana Mimir provides horizontally scalable, highly available, multi-tenant, long-term storage for Prometheus.
thanos - Highly available Prometheus setup with long term storage capabilities. A CNCF Incubating project.
prometheus - The Prometheus monitoring system and time series database.
loki - Like Prometheus, but for logs.
ClickHouse - ClickHouse® is a free analytics DBMS for big data
InfluxDB - Scalable datastore for metrics, events, and real-time analytics
Telegraf - The plugin-driven server agent for collecting & reporting metrics.
jaeger - CNCF Jaeger, a Distributed Tracing Platform
snmp_exporter - SNMP Exporter for Prometheus
clickhouse-bulk - Collects many small inserts to ClickHouse and send in big inserts
Grafana - The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
cortex - A horizontally scalable, highly available, multi-tenant, long term Prometheus.