Golang Dead Simple Timeseries Database

A simple, efficient, and easy-to-use timeseries database for IoT and more.

GTSDB - Durable and Memory Friendly timeseries database | Product Hunt
GTSDB Illustration

Key Features

Innovative Design

Utilizes Write Ahead Log (WAL) for records, reducing IO and memory usage. Background compaction with Gorilla compression reclaims disk space.

Crazy Benchmark

Top performance. 19,172 ns/op. In-memory-like speed. WAL-class durability.

Super Easy Integration

Identical HTTP API and TCP interfaces, which are all in strict JSON.

Analytics Ready

Built-in support for data downsampling and aggregation.

Memory Efficient

As Low as 6MB memory. Perfect for IoT devices. Indexing is all in SSD.

Built-in Streaming

Subscribe to keys and receive updates in real-time.

Battle-Tested

Trusted by IoT pioneers and used in production. Code Coverage for all logic.

Cross-Platform

Supports Windows, Linux/BSD, and macOS. Perfect for edge devices.

Monitoring Ready

Built-in /health and /metrics (Prometheus) endpoints. Monitor uptime, memory, GC, and data points in real-time.

Batch Write

Write up to 10,000 data points in a single API call. Perfect for bulk imports and migration.

Data Export

Export sensor data in CSV or JSON format with filtering by time range and downsampling.

Gorilla Compression

Facebook Gorilla time-series compression. 8x smaller files, 56x faster writes during compaction.

Advanced Analytics

Downsampling with avg, sum, min, max, first, last, count, median (p50), p95, and p99 aggregations.

Usages


POST /
{
    "operation": "write",
    "key": "a_sensor1",
    "write": {
        "value": 32242424243333333333.3333
    }
}
                      

Need more details? Check out our complete API documentation.

View Full API Documentation

Performance Comparison

Benchmark Results

Write Performance (ms)

Read Latest 100 Data 10 times (ms)

Read: 10k Queries (ms)

Multi-Write Performance (ms)

PubSub Performance (seconds)

Storage per 5,000 points (KB)

Test Configuration

Total Data Points10,000
Points per Sensor1,000
Sensor Count10
Write MethodSequential, single-point
Read Method1 query (last 100 records)
Multi-Write Method10 goroutines parallel
PubSub message Count1,000,000
Queue OrderOrdered
Queue Delivery SemanticsExactly Once
OSWindows
Architectureamd64
CPUCore(TM) i7-13700KF

Key Note

  • GTSDB shows 233x faster write (21.76 ms vs 5,070 ms)
  • Sub-millisecond single read (<1 ms vs 4.48 ms)
  • 4.7x faster on 10,000 reads (205 ms vs 967 ms)
  • 16.6x faster parallel multi-write (51 ms vs 851 ms)
  • 29.6x smaller than JSON, 7.98x smaller than raw
  • NSQ-like PubSub: 1M messages in 32.7s
  • Only ~12MB Memory Usage
  • Only 1 binary executable

Trusted By

ControlFreeVertriqeJeju Samdasoo

Ready to Get Started?

Download GTSDB