Show HN: Tsink – Embedded time-series database for Rust
8 months ago
- #rust
- #high-performance
- #time-series-database
- tsink is a high-performance, lightweight time-series database engine written in Rust.
- Features include Gorilla compression (~1.37 bytes per data point), thread-safe operations, and flexible storage options (in-memory or disk).
- Supports time-based partitioning, multi-dimensional metrics with labels, and write-ahead logging (WAL) for durability.
- Automatic data expiration (retention) and container-aware resource usage optimization.
- Efficient querying with zero-copy reads via memory-mapped files.
- Benchmarks show high throughput: 10M ops/sec for inserts and 4.5M queries/sec for selects.
- Designed for high concurrency with lock-free reads and configurable worker pools.
- Automatic recovery from crashes using WAL and out-of-order data point handling.
- Comprehensive examples and test suite available for easy integration and contribution.