Store sensor readings from Raspberry Pi or IoT devices without needing a full database server.
Query long time ranges of sensor data quickly using automatic hourly or daily rollup summaries.
Run an embedded time series database with no external dependencies on resource constrained hardware.
| aymanhs/nanotdb | awuqing/backupx | bjarneo/kli | |
|---|---|---|---|
| Stars | 102 | 96 | 92 |
| Language | Go | Go | Go |
| Setup difficulty | moderate | easy | moderate |
| Complexity | 3/5 | 3/5 | 3/5 |
| Audience | developer | ops devops | ops devops |
Figures from each repo's GitHub metadata at analysis time.
Pre-built binaries exist for Raspberry Pi and ARM64, other platforms require compiling from source.
NanoTDB is a small, lightweight database built for storing time series data, meaning measurements recorded over time such as temperature readings, sensor values, or device metrics. It is designed to run on low power, resource constrained hardware like Raspberry Pi computers and IoT gateways, with no external software dependencies required at runtime. All data is stored in ordinary files on disk under a single root directory rather than in a separate database server process. Data must arrive in time order, meaning each new reading has to be at the same time or later than the previous one for that sensor, and records are never changed after being written, only added on. This append only design is common in time series databases because sensor data naturally flows forward in time, and it keeps the storage engine simple and predictable. A notable feature is automatic rollup aggregation: as raw data comes in, the database can automatically compute summarized versions, such as hourly or daily averages, minimums, and maximums, and store them separately. This means that when you query data over a long time range, you can retrieve pre computed summaries instead of scanning thousands of individual readings, which makes queries much faster and lighter on the underlying hardware. The database is configured through simple text files and supports multiple isolated databases running inside a single engine instance, each with its own settings for retention and storage partitioning. It exposes an HTTP server for accepting incoming data and answering queries over that same connection. Pre built binaries are available for several Raspberry Pi models, including older and newer boards, and for 64-bit ARM systems, so you can download and run it directly without compiling any code yourself. Building from source is also possible for other platforms.
A small, append-only time series database built for low-power hardware like Raspberry Pi, with automatic rollup summaries for fast queries over long time ranges.
Mainly Go. The stack also includes Go.
No license information is stated in the README.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.